日時 | |
関係者(共同研究者) | |
Shibboleth IdPでBase64に変換する方法
Shibboleth IdPで属性情報をSPに送信するときに、Base64に変換する方法をためしました。サンプルコンフィグを下記に示します1)。
<resolver:AttributeDefinition id="eduPersonPrincipalNameBase64" xsi:type="Script" xmlns="urn:mace:shibboleth:2.0:resolver:ad"
sourceAttributeID="eduPersonPrincipalName">
<resolver:Dependency ref="xxxx" />
<Script>
<![CDATA[
importPackage(Packages.edu.internet2.middleware.shibboleth.common.attribute.provider);
importPackage(Packages.com.sun.org.apache.xerces.internal.impl.dv.util);
eduPrincipal2=eduPersonPrincipalName.getValues().get(0);
eduPersonPrincipalNameBase64=new BasicAttribute("eduPersonPrincipalNameBase64");
eduPersonPrincipalNameBase64.getValues().add(Base64.encode(eduPrincipal2.getBytes()));
]]>
</Script>
</resolver:AttributeDefinition>
<resolver:AttributeDefinition id="principalName" xsi:type="Scoped" xmlns="urn:mace:shibbol
eth:2.0:resolver:ad"
scope="yamagata-u.ac.jp" sourceAttributeID="eduPersonPrincipalNameBase64">
<resolver:Dependency ref="eduPersonPrincipalNameBase64" />
<resolver:AttributeEncoder xsi:type="SAML1ScopedString" xmlns="urn:mace:shibboleth
:2.0:attribute:encoder"
name="urn:mace:dir:attribute-def:eduPersonPrincipalName" />
<resolver:AttributeEncoder xsi:type="SAML2ScopedString" xmlns="urn:mace:shibboleth
:2.0:attribute:encoder"
name="urn:oid:1.3.6.1.4.1.5923.1.1.1.6" friendlyName="eduPersonPrincipalName" />
</resolver:AttributeDefinition>
【関連講義】
・サイバーキャンパス「鷹山」,UPKI関係資料2)