Я новичок в Identity Server и смущен по теме Identity & Точки доступа. Я понимаю, что токены доступа предназначены для защиты ресурсов (т. Е. Web api) и что токены идентичности используются для аутентификации. Однако всякий раз, когда я звоню/подключаюсь/токен, я всегда получаю «access_token». В рамках запроса я попросил клиента, который имеет различные области и заявки.Как вы запрашиваете идентификатор идентичности (id_token) в IdentityServerr4
new Client
{
ClientId = "Tetris",
ClientName = "Tetris Web Api",
AccessTokenLifetime = 60*60*24,
AllowedGrantTypes = GrantTypes.ResourceOwnerPassword,
RequireClientSecret = false,
AllowedScopes = {"openid", "TetrisApi", "TetrisIdentity"}
}
public static IEnumerable<ApiResource> GetApiResources()
{
return new[]
{
new ApiResource("TetrisApi", "Tetris Web API", new[] { JwtClaimTypes.Name, JwtClaimTypes.Role, "module" })
};
}
public static IEnumerable<IdentityResource> GetIdentityResources()
{
return new List<IdentityResource>
{
new IdentityResources.OpenId(),
new IdentityResources.Profile(),
new IdentityResource
{
Name = "TetrisIdentity",
UserClaims =
new[]
{
JwtClaimTypes.Name,
JwtClaimTypes.Role,
JwtClaimTypes.GivenName,
JwtClaimTypes.FamilyName,
JwtClaimTypes.Email,
"module",
"module.permissions"
}
}
};
}
Ниже приводится копия почтальона:
Любые мысли? Я не видел примера в Quickstarts, который использует Identity Tokens.
Спасибо!
Спасибо. Я делал именно так, как вы предлагали - вызывать конечную точку userinfo. Какие типы (-ы) гранта я могу использовать с Postman для получения токенов идентичности? – Greg