我正在制作一个WPF应用程序,它必须从Azure Key Vault获取密钥,但我总是遇到这个错误:
当我调试
这是我在Azure门户中的配置。
AADSTS500113:未为应用程序注册回复地址。
这是我使用的代码:
public class KeyProvider
{
public string BaseUrl => "https://my-key-vault.vault.azure.net";
public Uri RedirectUri => new Uri("urn:ietf:wg:oauth:2.0:oob");
public KeyVaultClient KeyVaultClient { get; private set; }
public KeyProvider()
{
KeyVaultClient = new KeyVaultClient(GetAccessToken);
}
public async Task<string> GetSecretAsync(string key)
{
SecretBundle secret = await KeyVaultClient.GetSecretAsync(BaseUrl, key);
return secret.Value;
}
private async Task<string> GetAccessToken(string azureTenantId, string clientId, string redirectUri)
{
AuthenticationContext context = new AuthenticationContext(azureTenantId);
AuthenticationResult tokenResult = await context.AcquireTokenAsync("https://vault.azure.net", clientId, RedirectUri, new PlatformParameters(PromptBehavior.RefreshSession));
return tokenResult.AccessToken;
}
}
当我调试
GetAccessToken
时,我发现redirectUri
(从方法传递的参数)是一个空字符串。这是我在Azure门户中的配置。
我错过了什么吗?