Я хочу дополнить утверждения пользователя с помощью IClaimsTransformation при входе в систему. Моя цель — реализовать IClaimsTransformation, вызвать ApiApp для запроса базы данных, получить необходимые данные и обогатить утверждения пользователя.
Для достижения этой цели , мне нужен токен для вызова ApiApp. Я попытался сгенерировать токен следующим методом:
Код: Выделить всё
private async Task GetApplicationTokenAsync()
{
try
{
var clientId = _configuration["AzureAdB2C:ClientId"];
var clientSecret = _configuration["AzureAdB2C:ClientSecret"];
var scope = _configuration["MyApp:MyAppScope"];
var tenant = _configuration["AzureAdB2C:Domain"];
var policy = _configuration["AzureAdB2C:SignUpSignInPolicyId"];
var authority = $"https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/{policy}";
var app = ConfidentialClientApplicationBuilder.Create(clientId)
.WithClientSecret(clientSecret)
.WithAuthority(new Uri(authority))
.Build();
var authResult = await app.AcquireTokenForClient(new[] { scope }).ExecuteAsync();
return authResult.AccessToken;
}
catch (Exception ex)
{
throw;
}
}
AADSTS50049: «Неизвестный или недопустимый экземпляр».
- Что мне следует сделать, чтобы правильно получить токен?
- Что-то не так в моем Azure AD Конфигурация или код B2C?
Я создал этот репозиторий чтобы обеспечить четкое представление и анализ проблемы, с которой я сталкиваюсь, что позволит глубже понять причину ошибки.
Подробнее здесь: https://stackoverflow.com/questions/786 ... r-aadsts50