Как создать токен аутентификации OpenID Connect в интеграционном тестовом проекте? - PullRequest
0 голосов
/ 02 ноября 2018

Моя конфигурация openidconnect в файле startup.cs в проекте веб-приложения:

using Microsoft.AspNetCore.Authentication.Cookies;
using Microsoft.AspNetCore.Authentication.OpenIdConnect;
using Microsoft.AspNetCore.Authorization;
....

if (this.RequireAAD())
{
    // Configure the OWIN pipeline to use cookie auth.
    services.AddAuthentication(options =>
    {
        options.DefaultScheme = CookieAuthenticationDefaults.AuthenticationScheme;
        options.DefaultChallengeScheme = OpenIdConnectDefaults.AuthenticationScheme;
    })
    .AddCookie()                
    .AddOpenIdConnect(options =>
    {
        options.ClientId = azureAdConfig.ClientId;
        options.ClientSecret = azureAdConfig.ClientSecret;
        options.Authority = string.Format(azureAdConfig.AADInstance, azureAdConfig.Tenant);
        options.ResponseType = OpenIdConnectResponseType.CodeIdToken;
        options.Resource = azureAdConfig.ResourceURI_Graph;
        // PostLogoutRedirectUri = Configuration["AzureAd:PostLogoutRedirectUri"],
        options.Events = new AuthEvents(azureAdConfig, connectionStringsConfig);
    });

    services.AddAuthorization(options =>
    {
        options.AddPolicy(
            PolicyNames.RequireoneBusinessAdmin,
            policy =>
            {

.....

Я пытаюсь создать TestServer, который будет использоваться для вызова действий контроллера api для тестирования. Но поскольку API требуется токен для аутентификации AAD, я не могу сгенерировать его с помощью тестового проекта.

...