...
conf/metadata-providers.xml
SP1のメタデータsp1-metadata.xml
とSP2のメタデータsp2-metadata.xml
をmetadata
以下に配置して、conf/metadata-providers.xml
でそれぞれのメタデータを読み込む設定例を以下に示します。展開 コード ブロック language xml title conf/metadata-providers.xml <!-- Example file metadata provider. Use this if you want to load metadata from a local file. You might use this if you have some local SPs which are not "federated" but you wish to offer a service to. If you do not provide a SignatureValidation filter, then you have the responsibility to ensure that the contents are trustworthy. --> <!-- <MetadataProvider id="LocalMetadata" xsi:type="FilesystemMetadataProvider" metadataFile="PATH_TO_YOUR_METADATA"/> --> <MetadataProvider id="LocalMetadataForSP1" xsi:type="FilesystemMetadataProvider" metadataFile="%{idp.home}/metadata/sp1-metadata.xml"/> <MetadataProvider id="LocalMetadataForSP2" xsi:type="FilesystemMetadataProvider" metadataFile="%{idp.home}/metadata/sp2-metadata.xml"/>
コード ブロック language diff title 差分 <!-- Example file metadata provider. Use this if you want to load metadata from a local file. You might use this if you have some local SPs which are not "federated" but you wish to offer a service to. If you do not provide a SignatureValidation filter, then you have the responsibility to ensure that the contents are trustworthy. --> <!-- <MetadataProvider id="LocalMetadata" xsi:type="FilesystemMetadataProvider" metadataFile="PATH_TO_YOUR_METADATA"/> --> + <MetadataProvider id="LocalMetadataForExampleSP1" xsi:type="FilesystemMetadataProvider" metadataFile="%{idp.home}/metadata/examplesp1-metadata.xml"/> + <MetadataProvider id="LocalMetadataForExampleSP2" xsi:type="FilesystemMetadataProvider" metadataFile="%{idp.home}/metadata/examplesp2-metadata.xml"/>
認証
LDAPを用いたパスワード認証
Shibboleth IdP 3からは、LDAPモジュールを用いたJAASによるパスワード認証に加えて、直接LDAPを参照するパスワード認証が追加されました。
デフォルトは直接LDAPを参照するパスワード認証です。
直接LDAPを参照するパスワード認証
conf/ldap.properties
参照するLDAPにあわせて、Connection properties, SSL configuration, Search DN resolutionのプロパティを設定します。展開 コード ブロック language java title conf/ldap.properties ## Connection properties ## idp.authn.LDAP.ldapURL = ldap://localhost:389 idp.authn.LDAP.useStartTLS = false #idp.authn.LDAP.useSSL = false #idp.authn.LDAP.connectTimeout = 3000 # Search DN resolution, used by anonSearchAuthenticator, bindSearchAuthenticator # for AD: CN=Users,DC=example,DC=org idp.authn.LDAP.baseDN = ou=people,dc=example,dc=ac,dc=jp idp.authn.LDAP.subtreeSearch = true idp.authn.LDAP.userFilter = (uid={user}) # bind search configuration # for AD: idp.authn.LDAP.bindDN=adminuser@domain.com idp.authn.LDAP.bindDN = idp.authn.LDAP.bindDNCredential =
コード ブロック language diff title 差分 ## Connection properties ## -idp.authn.LDAP.ldapURL = ldap://localhost:10389 -#idp.authn.LDAP.useStartTLS = true +idp.authn.LDAP.ldapURL = ldap://localhost:389 +idp.authn.LDAP.useStartTLS = false #idp.authn.LDAP.useSSL = false #idp.authn.LDAP.connectTimeout = 3000 # Search DN resolution, used by anonSearchAuthenticator, bindSearchAuthenticator # for AD: CN=Users,DC=example,DC=org -idp.authn.LDAP.baseDN = ou=people,dc=example,dc=org -#idp.authn.LDAP.subtreeSearch = false +idp.authn.LDAP.baseDN = ou=people,dc=example,dc=ac,dc=jp +idp.authn.LDAP.subtreeSearch = true idp.authn.LDAP.userFilter = (uid={user}) # bind search configuration # for AD: idp.authn.LDAP.bindDN=adminuser@domain.com -idp.authn.LDAP.bindDN = uid=myservice,ou=system -idp.authn.LDAP.bindDNCredential = myServicePassword +idp.authn.LDAP.bindDN = +idp.authn.LDAP.bindDNCredential =
JAASによるパスワード認証
注意 |
---|
Shibboleth IdP 3.1.2で確認した内容です。 |
conf/authn/password-authn-config.xml
<import resource="jaas-authn-config.xml" />
の行をアンコメントして、<import resource="ldap-authn-config.xml" />
の行をコメントアウトします。コード ブロック language xml title conf/authn/password-authn-config.xml collapse true <!-- Choose an import based on the back-end you want to use. --> <import resource="jaas-authn-config.xml" /> <!-- <import resource="krb5-authn-config.xml" /> --> <!-- <import resource="ldap-authn-config.xml" /> -->
conf/authn/jaas.config
参照するLDAPにあわせて、
org.ldaptive.jaas.LdapLoginModule required以降の行を設定します。
コード ブロック language xml title conf/authn/jaas.config collapse true ShibUserPassAuth { /* com.sun.security.auth.module.Krb5LoginModule required; */ org.ldaptive.jaas.LdapLoginModule required ldapUrl="ldap://localhost" baseDn="ou=people,dc=example,dc=ac,dc=jp" ssl="false" userFilter="uid={user}" subtreeSearch="true" ; };
LDAPサーバにStartTLSで接続する方法(LDAPサーバがCentOS 6の場合)
以下の個別ページを参照してください。
⇒LDAPサーバにStartTLSで接続する方法(LDAPサーバがCentOS 6の場合)
複数台のLDAPサーバを参照するための方法
以下の個別ページを参照してください。
⇒複数台のLDAPサーバを参照するための方法
高度な認証設定
抜粋を含める | ||||||
---|---|---|---|---|---|---|
|
属性・NameID
SPに対してどのような属性が送出されるか確認する方法
...