аутентифицироваться в таможенных службах
я есть следующий код, который получает секреты из KeyVault.
var kv = new KeyVaultClient(new KeyVaultClient.AuthenticationCallback(GetToken));
var sec = await kv.GetSecretAsync(ConfigurationManager.AppSettings["SomeURI"]);
secretValue = sec.Value ;
Метод GetToken:
async Task<string> GetToken(string authority, string resource, string scope)
{
var authContext = new AuthenticationContext(authority);
ClientCredential clientCred = new ClientCredential(ConfigurationManager.AppSettings["ClientId"],ConfigurationManager.AppSettings["ClientSecret"]);
AuthenticationResult result = await authContext.AcquireTokenAsync(resource, clientCred);
if (result == null)
throw new InvalidOperationException("Failed to obtain the token");
return result.AccessToken;
}
В методе GetToken я извлекаюClientId
а такжеClientSecret
из Appconfig.
Я чувствую, что не безопасно хранить эти значения в Appconfig и использовать их. Есть ли способ, который я могу удалить из файла конфигурации и получить из любого другого места. Или есть какое-то хорошее решение моей проблемы.
Любой ответ высоко ценится!
PS: Мой сервис Windows, разработанный в C #