IdP属性介绍


 IdP和SP之间属性传递是CARSI联盟区分用户身份认证方和用户身份使用方、在应用系统资源中实现基于用户的访问控制的技术基础。在IdP端,需要“属性定义””属性释放”两个步骤。

        “属性定义”遵循标准的属性命名,将本地身份认证系统的属性名称和IdP即将释放给联盟SP的属性名称进行关联,为“属性释放”的准备阶段。

                         “属性定义”的配置文件是/opt/shibboleth-idp/conf/attribute-resolver.xml,该文件主要用于定义如何从对接认证系统获取数据并赋值给相关属性。

        “属性释放”是将已经定义好的属性传递给联盟SP的过程。IdP管理员可以配置IdP对不同的SP释放不同的属性,即支持个性配置。

                         “属性释放”的配置文件是/opt/shibboleth-idp/conf/attribute-filter.xml

       

根据 “CARSI资源共享服务属性要求”,CARSI IdP目前需要释放四个属性,需要释放的属性:

  • eduPersonScopedAffiliation:核心属性,标识用户的身份,取值为:faculty, student, staff, alum, member, affiliate, employee, other,后面加上@xxx.edu.cn。对应的身份分别为:教师、学生、员工、校友、成员、附属人员,聘用人员、其他。

  • eduPersonTargetedID(ePTID):推荐属性,是一个永久的,可读性不强的身份识别码,用于唯一标识用户身份,同一个IdP的同一个用户为不同的sp提供不同的ePTID,在保护用户隐私的前提下支持sp区分用户。

  • eduPersonEntitlement(ePE):推荐属性,标识用户访问特定资源的权限的URI。表示用户有权限访问此资源。取值urn:mace:dir:entitlement:common-lib-terms表示遵守idp和图书馆类sp已经达成的线下协议,IdP用户去访问sp资源。建议将此属性释放给指定SP。

  • pairwise-id :根据eduPerson规范,eduPersonTargetedID(ePTID)属性将被pairwise-id替代,过度期间,ePTID和pairwise-id属性将同时被释放。

 其它需要定义的属性(学校可根据需求决定是否释放给SP):

  • eduPersonPrincipalName:用于标识用户身份,取值为username@scope。为了保护用户隐私,2019年12月起,建议IdP取消直接释放eduPersonPrincipalName,用ePTID代替,目前eduPersonPrincipalName仅作为生成ePTID属性时的输入,不对sp释放。