IdentityServer4 претензий нет возврата на AuthenticateResult для входа в LinkedIn - PullRequest
0 голосов
/ 09 октября 2018

Я новичок в IdentityServer.В настоящее время работа над IdentityServer4 интегрируется с LinkedIn Login.С помощью кода ниже можно попасть на страницу входа в систему и успешно пройти аутентификацию.Но проблема в том, что AuthenticationResult не возвращает утверждения , поэтому не может продолжить с ExternalLoginCallBack ().Возврат ошибки: « Неизвестный ИД пользователя »

Спасибо, кто-то может мне помочь в этом:)

Спасибо.

services.AddAuthentication()
        .AddOAuth("LinkedIn", option =>
        {

            option.CallbackPath = new PathString("/signin-linkedin");
            option.SignInScheme = IdentityServerConstants.ExternalCookieAuthenticationScheme;
            option.AuthorizationEndpoint = "https://www.linkedin.com/oauth/v2/authorization";
            option.TokenEndpoint = "https://www.linkedin.com/oauth/v2/accessToken";
            option.UserInformationEndpoint = "https://api.linkedin.com/v1/people/~:(id,first-name,last-name,formatted-name,email-address,picture-url)";
            option.ClientId = "myClientID";
            option.ClientSecret = "myClientSecret";
            option.Scope.Add("r_basicprofile");
            option.Scope.Add("r_emailaddress");

            option.ClaimActions.MapJsonKey(ClaimTypes.NameIdentifier, "id", ClaimValueTypes.String);
            option.ClaimActions.MapJsonKey(ClaimTypes.Name, "formattedName", ClaimValueTypes.String);
            option.ClaimActions.MapJsonKey(ClaimTypes.Email, "emailAddress", ClaimValueTypes.Email);
            option.ClaimActions.MapJsonKey(ClaimTypes.GivenName, "firstName", ClaimValueTypes.Email);
            option.ClaimActions.MapJsonKey(ClaimTypes.Surname, "lastName", ClaimValueTypes.Email);
            option.ClaimActions.MapJsonKey(ClaimTypes.UserData, "pictureUrl", ClaimValueTypes.String);
        });

Снимок экранана AuthenticateResult

...