如何在 ADFS 发行转换规则中获取 client_id 值

How to get client_id value in ADFS Issuance Transform Rule

我正在 ADFS3.0 中实施客户端凭据授予。这基于场景和开发人员示例。

我想添加一个发布转换规则,该规则使用 client_id 在自定义 sql 属性存储中查找额外声明。

c:[Type == "???"]
 => issue(store = "Custom Attribute Store", types = ("XYZ"), query = "SELECT claimValue from dbo.ClientClaims WHERE clientId= {0}", param = c.Value);

找到 client_id 的 Type 的正确值是多少?

声明对 AD 起作用并且 clientID 不是 AD 属性。

我能想到的唯一方法是使用静态声明,其中 clientID 使用“http://company.com/clientID”之类的类型进行硬编码,然后在上述规则中使用它。

您可以使用以下方法检索 appid:

appid:[Type == "http://schemas.microsoft.com/2014/01/clientcontext/claims/appid"]

这将授予您访问 appid(您的客户端的 36 个字符标识符)以在您的自定义规则中使用的权限。