in src/Microsoft.Azure.Relay/Common/SharedAccessSignatureTokenProvider.cs [36:63]
protected SharedAccessSignatureTokenProvider(string keyName, string sharedAccessKey, Func<string, byte[]> customKeyEncoder)
{
if (string.IsNullOrEmpty(keyName) || string.IsNullOrEmpty(sharedAccessKey))
{
throw RelayEventSource.Log.ArgumentNull(string.IsNullOrEmpty(keyName) ? nameof(keyName) : nameof(sharedAccessKey));
}
if (keyName.Length > SharedAccessSignatureToken.MaxKeyNameLength)
{
throw RelayEventSource.Log.ArgumentOutOfRange(
nameof(keyName),
keyName.Substring(0, 10) + "...",
SR.GetString(SR.ArgumentStringTooBig, nameof(keyName), SharedAccessSignatureToken.MaxKeyNameLength));
}
if (sharedAccessKey.Length > SharedAccessSignatureToken.MaxKeyLength)
{
throw RelayEventSource.Log.ArgumentOutOfRange(
nameof(sharedAccessKey),
sharedAccessKey.Substring(0, 10) + "...",
SR.GetString(SR.ArgumentStringTooBig, nameof(sharedAccessKey), SharedAccessSignatureToken.MaxKeyLength));
}
this.keyName = keyName;
this.encodedSharedAccessKey = customKeyEncoder != null ?
customKeyEncoder(sharedAccessKey) :
MessagingTokenProviderKeyEncoder(sharedAccessKey);
}