Конфигурация авторизации такая (
Код: Выделить всё
{tenantId}Код: Выделить всё
services.AddSwaggerGen(options =>
{
options.AddSecurityRequirement(new() { ... });
options.AddSecurityDefinition("oauth2", new()
{
Type = SecuritySchemeType.OAuth2,
Flows = new()
{
AuthorizationCode = new()
{
AuthorizationUrl = new("https://login.microsoftonline.com/{tenantId}/oauth2/v2.0/authorize"),
TokenUrl = new("https://login.microsoftonline.com/{tenantId}/common/v2.0/token"),
Scopes = new Dictionary
{
{ "https://graph.microsoft.com/.default", "https://graph.microsoft.com/.default" }
}
}
}
});
});
Код: Выделить всё
app.UseSwaggerUI(options =>
{
options.OAuthAppName("Beep");
options.OAuthClientId("{clientId}");
options.OAuthClientSecret("HakunaMatata");
options.OAuthScopes(["https://graph.microsoft.com/.default" ]);
options.OAuthUsePkce();
});
Я проверил сетевые вызовы и заметил нечто неожиданное. Судя по всему, CORS запускается на конечной точке токена и он также сообщает 404 Not Found (что самопротиворечиво, но я полагаю, что необнаружение каким-то образом вызвано CORS-ностью). URL-адрес не соответствует тому, что я указал в своей конфигурации выше (в соответствии с конечной точкой .well-known), и я не контролирую сервер для активации разрешенных источников.

Что я могу изучить или попробовать?
Подробнее здесь: https://stackoverflow.com/questions/781 ... uthorizing