Я пытаюсь настроить .NET Core Web API с аутентификацией Azure AD и Swagger, но выдает ошибку при попытке аутентификации.
Я следую этому руководству: http://www.sharepointconfig.com/2018/08/configure-swagger-to-authenticate-against-azure-ad/
ConfigureServices содержит этот код:
services.AddSwaggerGen(c =>
{
c.AddSecurityDefinition("oauth2", //Name the security scheme
new OpenApiSecurityScheme
{
Type = SecuritySchemeType.OAuth2,
Flows = new OpenApiOAuthFlows() { Implicit = new OpenApiOAuthFlow() },
Scheme = "oauth2",
OpenIdConnectUrl = new Uri($"https://login.microsoftonline.com/" + _configuration["AzureAD:TenantId"] + "/oauth2/authorize"),
});
c.AddSecurityRequirement(new OpenApiSecurityRequirement{
{
new OpenApiSecurityScheme{
Reference = new OpenApiReference{
Id = "oauth2",
Type = ReferenceType.SecurityScheme
}
},new List<string>()
}
});
});
Configure содержит этот код:
app.UseSwaggerUI(c =>
{
c.OAuthClientId(_configuration["Swagger:ClientId"]);
c.OAuthClientSecret(_configuration["Swagger:ClientSecret"]);
c.OAuthRealm(_configuration["AzureAD:ClientId"]);
c.OAuthAppName("WerfRegistratie V1");
c.OAuthScopeSeparator(" ");
c.OAuthAdditionalQueryStringParams(new Dictionary<string, string> { { "resource", _configuration["AzureAD:ClientId"] } });
});
Проблема, с которой я продолжаю работать, заключается в следующем: Ошибка аутентификации Swagger
Похоже, что когда я пытаюсь нажать кнопку "Авторизовать", переменная в Swagger не заполняется, и я пробую разные настройки в SwaggerUI, но это продолжается.