我正在使用Identity Server 3并使用OAuth 2.0从here. Client Credentials中获取示例。
我覆盖了AuthorizeAttribute但是当我查看ClaimsIdentity名称和Actor时为null。这是设计的吗?我有责任填充他们?如果是这样的话?我看到声明有client_id,但为什么它没有反映在名字或演员?
问:我怎样才能确定谁在打电话?
我们在OAuth,User和Client中有两个定义
用户是基本上具有用户名和密码的人类参与者。
客户端是用户使用的具有client_Id
和client_secret
的应用程序。
当您使用客户端凭据时,不涉及用户,并且仅发送clientId和ClientSecret,因此Actor
和Name
属性都为null,因为这些属性绑定到用户。在这种情况下,您应该使用涉及用户的密码,代码或隐式授权类型。