...
として設定を行い、クライアント証明書が有効な証明書であり、かつ、上記の条件を満たす場合に認証を行う設定としています。また、eduPersonPrincipalNameをキーとして、クライアント証明書のサブジェクト“CN”の値によりLDAPから各属性を取得します。そのため、クライアント証明書のサブジェクト”CN”の値を、LDAPのeduPersonPrincipalNameに格納しておくことが必要です。
・/opt/shibboleth-idp/conf/idp.properties の変更
...
・/opt/shibboleth-idp/conf/attribute-resolver.xmlの変更
クライアント証明書のサブジェクト“CN”の値をSP へ送出する属性edupersonPrincipalNameに設定するため、下記の設定を行います。
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
※「eduPersonPrincipalName」を検索し、場所を特定してください。 (省略)
<resolver:AttributeDefinition xsi:type="ad:Scoped" id="eduPersonPrincipalName" scope="%{idp.scope}" sourceAttributeID="remoteUser"> ←変更 <resolver:Dependency ref="remoteUser" /> ←変更
<resolver:AttributeEncoder xsi:type="enc:SAML1ScopedString" name="urn:mace:dir:attribute-def:eduPersonPrincipalName" encodeType="false" /> <resolver:AttributeEncoder xsi:type="enc:SAML2ScopedString" name="urn:oid:1.3.6.1.4.1.5923.1.1.1.6" friendlyName="eduPersonPrincipalName" encodeType="false" />
</resolver:AttributeDefinition>
(省略)
<resolver:AttributeDefinition xsi:type="PrincipalName" xmlns="urn:mace:shibboleth:2.0:resolver:ad" id="remoteUser" /> ←追加 |
※端末のサイズによっては表記がずれる可能性がございます。画面を広くしてご覧ください。
・/opt/shibboleth-idp/conf/ldap.propertiesの変更
ldap.propertiesの変更
LDAP から属性を取得する際のキーとなる属性はデフォルトでは uid ですが変更したい場合は下記の場所を変更します。クライアント証明書のサブジェクト"CN"の値をキーにしてLDAPのeduPersonPrincipalNameと比較を行い属性を取得するため、下記の設定を行います。
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
(省略) idp.attribute.resolver.LDAP.trustCertificates = %{idp.authn.LDAP.trustCertificates:undefined} idp.attribute.resolver.LDAP.searchFilter = (eduPersonPrincipalNameuid=$resolutionContext.principal) ←変更 idp.attribute.resolver.LDAP.returnAttributes = cn,homephone,mail
(省略) |
...