如何使用saml2.0在okta中配置和获取自定义属性

use*_*610 1 saml-2.0 spring-boot okta

我在我的应用程序中使用okta作为idp,我想配置自定义属性,例如:ID,如何在okta中完成?以及如何在okta中设置这些值?

小智 5

以下是向Okta的SAML断言添加自定义属性的过程:

  1. 从Okta组织的仪表板转到管理员 - >目录 - >配置文件编辑器
  2. 在"Okta"配置文件中,选择"配置文件"按钮

简介编辑

  1. 标识要添加的用户属性的"变量名称"(不是"显示名称")值.例如,让我们尝试添加"title"属性.

属性变量名称

  1. 导航到"应用程序"选项卡,然后选择要添加此自定义属性的SAML应用程序.
  2. 选择"常规"选项卡
  3. 在"SAML设置"设置中,按"编辑"按钮.这应该启动App Configuration向导,就像它是一个新的SAML应用程序一样
  4. 按"下一步"按钮并向下滚动到"属性语句(可选)"部分
  5. 按"添加另一个"按钮

添加另一个SAML属性

  1. 在第一个文本框中,输入您在应用程序中期望的SAML属性的名称,该名称将在您的SAML断言中可用(我选择了"jobTitle").在第二个文本框中,输入Okta配置文件中的变量名称,前缀为"user".(例如"user.title")

新的SAML属性

  1. 按"下一步",然后"完成"

在测试应用程序时,您应该获得以下SAML AttributeStatement节点:

<saml2:AttributeStatement xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion">
        <saml2:Attribute Name="firstName"
                         NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified"
                         >
            <saml2:AttributeValue xmlns:xs="http://www.w3.org/2001/XMLSchema"
                                  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                                  xsi:type="xs:string"
                                  >Isaac</saml2:AttributeValue>
        </saml2:Attribute>
        <saml2:Attribute Name="lastName"
                         NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified"
                         >
            <saml2:AttributeValue xmlns:xs="http://www.w3.org/2001/XMLSchema"
                                  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                                  xsi:type="xs:string"
                                  >Brock</saml2:AttributeValue>
        </saml2:Attribute>
        <saml2:Attribute Name="Email"
                         NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified"
                         >
            <saml2:AttributeValue xmlns:xs="http://www.w3.org/2001/XMLSchema"
                                  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                                  xsi:type="xs:string"
                                  >isaac.brock@mailinator.com</saml2:AttributeValue>
        </saml2:Attribute>
        <saml2:Attribute Name="userName"
                         NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified"
                         >
            <saml2:AttributeValue xmlns:xs="http://www.w3.org/2001/XMLSchema"
                                  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                                  xsi:type="xs:string"
                                  >isaac@company.com</saml2:AttributeValue>
        </saml2:Attribute>
        <saml2:Attribute Name="phone"
                         NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified"
                         >
            <saml2:AttributeValue xmlns:xs="http://www.w3.org/2001/XMLSchema"
                                  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                                  xsi:type="xs:string"
                                  >+1 415 456 7893</saml2:AttributeValue>
        </saml2:Attribute>
        <saml2:Attribute Name="jobTitle"
                         NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified"
                         >
            <saml2:AttributeValue xmlns:xs="http://www.w3.org/2001/XMLSchema"
                                  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                                  xsi:type="xs:string"
                                  >Vice President</saml2:AttributeValue>
        </saml2:Attribute>
    </saml2:AttributeStatement>
Run Code Online (Sandbox Code Playgroud)

(注意最后一个"jobTitle"属性)

我希望这有帮助!