【发布时间】:2017-09-06 21:30:20
【问题描述】:
我的客户从IdentityServer4 获得令牌并将其交给我的API 以获得服务,
直到我想要获得用户声明(STS 自动将用户声明放在用户声明上)之前,一切都是真的,当我调用 User.Identity.Name 时,它返回 null。
根据This Link我应该在API启动中定义Scope,所以我定义:
app.UseIdentityServerAuthentication(new IdentityServerAuthenticationOptions
{
Authority = "http://localhost:33934",
RequireHttpsMetadata = false,
ApiName = "api1",
AllowedScopes = { "profile", "email", "api1" },
});
一切顺利,我的用户可以从 IdentityServer 获取 Token,当我将它传递给 API 时,Authorization 将成功完成,但 User.Identity.Name 返回 null!
有什么问题?
【问题讨论】: