ИСПОЛЬЗОВАНИЕ Аутентификации OpenID Connect в ASP MVS .NET Core - PullRequest
0 голосов
/ 06 ноября 2018

У меня проблема. Я использую на своем локальном хосте следующий код в Startup.cs

ConfigureServices

Метод. Без

oauthOptions.Events.OnRedirectToIdentityProvider 

Я не могу перенаправить. Но моя проблема в том, что пользователь не может пройти аутентификацию. Кто-нибудь может мне помочь?

services.AddAuthentication(options =>
        {
            options.DefaultScheme = CookieAuthenticationDefaults.AuthenticationScheme;
            options.DefaultAuthenticateScheme = CookieAuthenticationDefaults.AuthenticationScheme;
            options.DefaultForbidScheme = CookieAuthenticationDefaults.AuthenticationScheme;
            options.DefaultSignInScheme = CookieAuthenticationDefaults.AuthenticationScheme;
            options.DefaultSignOutScheme = CookieAuthenticationDefaults.AuthenticationScheme;
            options.DefaultChallengeScheme = OpenIdConnectDefaults.AuthenticationScheme;
        })
        .AddOpenIdConnect(oauthOptions =>
        {
            oauthOptions.ClientId = "b6514a30-c3dc-0136-0d4f-0685c268206c137310";
            oauthOptions.ClientSecret = "secret here";
            oauthOptions.Authority = "https://test.onelogin.com/oidc";
            oauthOptions.ResponseType = OpenIdConnectResponseType.Code;
            oauthOptions.GetClaimsFromUserInfoEndpoint = true;

            oauthOptions.Events.OnRedirectToIdentityProvider = (context) =>
            {
                context.ProtocolMessage.RedirectUri = "https://ed40a182.ngrok.io/home/index";

                return Task.FromResult(0);
            };

            oauthOptions.TokenValidationParameters = new TokenValidationParameters
            {
                NameClaimType = OpenIdConnectConstants.Claims.Name,
                RoleClaimType = OpenIdConnectConstants.Claims.Role,
                ValidateIssuer = true
            };

            oauthOptions.SaveTokens = true;
        })
        .AddCookie()
        ;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...