仕様

名称eduPersonAffiliation
概要利用者の職種等を表します。
参照スキーマeduPerson Object Class Specification (200806)
name【SAML1】"urn:mace:dir:attribute-def:eduPersonAffiliation"
name【SAML2】"urn:oid:1.3.6.1.4.1.5923.1.1.1.1"
friendlyNameeduPersonAffiliation
属性値or形式"faculty","staff","student","member"
照合順序caseIgnoreMatch
複数値複数値
説明等

利用者の職位として,4つの値が利用可能です。IdPサイトでは,機関内の実際の詳細職位とのマッピングが必要です。いずれの値にも合致しない利用者については、この属性自体を送らないようにします。また,利用できる値は,「卒業生」等,必要に応じて追加することを予定しています。
設定例:staff,member

※ なお,SPに対して複数の値が送られてきた場合,Shibbolethでは";"を用いて結合された文字列がアプリケーションに渡されます(例:"staff;member")。





属性定義の例:その1 (attribute-resolver.xml)

LDAPにfaculty/staff等の値がダイレクトに格納されている場合

    <!-- Attribute Definition for eduPersonAffiliation -->
    <resolver:AttributeDefinition xsi:type="ad:Simple" id="eduPersonAffiliation" sourceAttributeID="eduPersonAffiliation">
        <resolver:Dependency ref="myLDAP" />
        <resolver:AttributeEncoder xsi:type="enc:SAML1String" name="urn:mace:dir:attribute-def:eduPersonAffiliation" encodeType="false" />
        <resolver:AttributeEncoder xsi:type="enc:SAML2String" name="urn:oid:1.3.6.1.4.1.5923.1.1.1.1" friendlyName="eduPersonAffiliation" encodeType="false" />
    </resolver:AttributeDefinition> 





属性定義の例:その2 (attribute-resolver.xml)

他の属性値からeduPersonAffiliationを生成する場合
※Java 7の場合

<resolver:AttributeDefinition xsi:type="ad:Script" id="eduPersonAffiliation" sourceAttributeID="ソースとなる属性">
    <resolver:Dependency ref="myLDAP" />
    <resolver:AttributeEncoder xsi:type="enc:SAML1String" name="urn:mace:dir:attribute-def:eduPersonAffiliation" encodeType="false" />
    <resolver:AttributeEncoder xsi:type="enc:SAML2String" name="urn:oid:1.3.6.1.4.1.5923.1.1.1.1" friendlyName="eduPersonAffiliation" encodeType="false" />
    <ad:Script>
    <![CDATA[
        importPackage(Packages.edu.internet2.middleware.shibboleth.common.attribute.provider);

        // Create attribute to be returned from definition
        eduPersonAffiliation = new BasicAttribute("eduPersonAffiliation");

        // faculty
        if (条件マッチ) {
              eduPersonAffiliation.getValues().add("faculty");
        }
        // staff
        if (条件マッチ) {
              eduPersonAffiliation.getValues().add("staff");
        }
        // student
        if (条件マッチ) {
              eduPersonAffiliation.getValues().add("student");
        }

        // adding member
        eduPersonAffiliation.getValues().add("member");

    ]]>
    </ad:Script>
</resolver:AttributeDefinition>
  • ラベルがありません