我正在尝试将其他应用使用的自定义SAML属性映射到组。基本上我们有3个角色,其目的是让3个AD组与每个角色联系起来。
根据Okta Group Attributes中的答案,我发现这不是直接可能的。
我根据建议尝试的是使用嵌套的三元运算符为应用程序设置自定义配置文件映射,以模仿3 if语句来设置属性。但是,当三元运算符工作时,在创建“属性语句”部分时使映射起作用不会。
我还能怎么做呢?如果可能的话,我不想为3个不同的角色创建3个应用程序。
答案 0 :(得分:0)
在这样的场景中,我会让Okta将用户所属的组作为自定义属性发送给。
在SAML应用配置中,此选项将自身显示为“组名称”和“组过滤器”。 (应用程序 - >常规选项卡 - >应用程序设置)
我将创建一个代表角色的小组'我希望会员用户拥有在下层组合应用程序(SP)中,然后应用组过滤器以仅包含这些组。
App1.Roleabc App1.Roleefg App1.Rolehij
群组过滤器:App1。* 组名:组
小组"名称"将是断言中使用的属性的名称,并且基于这些值的saml断言将看起来像这样:
<saml2p:Response>
...
<saml2:Assertion>"
...
<saml2:Subject>
<saml2:NameID>me@mydomain.tld</saml2:NameID>
...
</saml2:Subject>
...
<saml2:AttributeStatement>
<saml2:Attribute Name="arbitraryAttribut">
<saml2:AttributeValue> meaningfulValue </saml2:AttributeValue>
</saml2:Attribute>
<saml2:Attribute Name="Groups">
<saml2:AttributeValue> App1.Roleabc </saml2:AttributeValue>
<saml2:AttributeValue> App1.Rolehij </saml2:AttributeValue>
</saml2:Attribute>
</saml2:AttributeStatement>
</saml2:Assertion>
</saml2p:Response>