Python 在pysaml2中,如何在初始AuthNResponse中包含属性?

Python 在pysaml2中,如何在初始AuthNResponse中包含属性?,python,saml,Python,Saml,我的示例IdP/SP工作正常。我可以将我的应用程序连接到示例IdP,握手工作正常。但是,初始AuthNResponse仅包括EdupersonTargetId,我希望它包括其他属性,如sn、电子邮件等。我知道响应包含指向属性服务的链接,但我需要AuthNResponse中的属性 关于如何做到这一点,有什么建议/建议吗 谢谢, Shawn您传递了一个dict,该dict将您的待属性的键映射到它们的值: IDENTITY={“姓氏”:[“杰特”],“吉文名”:[“德里克”],“头衔”:[“游击手”]

我的示例IdP/SP工作正常。我可以将我的应用程序连接到示例IdP,握手工作正常。但是,初始AuthNResponse仅包括EdupersonTargetId,我希望它包括其他属性,如sn、电子邮件等。我知道响应包含指向属性服务的链接,但我需要AuthNResponse中的属性

关于如何做到这一点,有什么建议/建议吗

谢谢,
Shawn

您传递了一个dict,该dict将您的待属性的键映射到它们的值:

IDENTITY={“姓氏”:[“杰特”],“吉文名”:[“德里克”],“头衔”:[“游击手”]}
服务器。创建\u authn\u响应(标识,…);\本例中省略了其他参数
这样做会产生这个
,您还必须进行设置

配置映射是从标识提供程序配置文件中的
attribute\u map\u dir
指向的目录加载的文件:

CONFIG={
“entityid”:http://saml.example.com:saml/idp.xml",
...
“属性映射目录”:“属性映射”
}
attributemaps
目录中,可能存在多个文件。每个文件都是Python源文件,带有一个映射dict,该映射dict具有标识提供程序将支持的属性格式的SAML标识符(名称),以及
to
fro
嵌套映射。身份提供者使用
to
映射将
identity
dict中(传入)键的名称转换为
中(传出)
name
属性的值,并根据需要进行修改。
嵌套映射中的键/值以及
标识符
的值将由SAML服务提供商期望/支持的内容决定<代码>FriendlyName
不重要,它用于可读性,但规范不依赖它

X500ATTR_OID = "urn:oid:2.5.4."

MAP = {
    "identifier": "urn:oasis:names:tc:SAML:2.0:attrname-format:uri",
    "fro": {
        ...
    },
    "to": {
        'surName': X500ATTR_OID+'4',
        'givenName': X500ATTR_OID+'42',
         ...
        'title': X500ATTR_OID+'12'
    }
}