alfresco勉強会 #17 ldap連携 入門
DESCRIPTION
第17回Alfresco勉強会(2013.08.01)の発表資料です。 AlfrescoでLDAP連携する際の最も簡単な設定方法を紹介しています。おまけとして、ファイルアップロードによるユーザ登録の方法についても簡単に紹介しています。TRANSCRIPT
© 2013
第17回 Alfresco勉強会
LDAP連携 入門
2013.8.1
terashita
© 2013
今回のテーマ:LDAP連携 入門
Alfrescoの最も簡単なLDAP連携の設定例を説明します。
おまけで、ファイルアップロードによるユーザ登録の方法も紹介します。
1
環境
Alfresco Community Edition 4.2.c
OpenLDAP slapd 2.4.28
© 2013
目次
1. 認証と同期について
2. 「認証のみ」の場合の最も簡単な設定例
3. 「同期のみ」の場合の最も簡単な設定例
4. 「認証 + 同期」の場合の最も簡単な設定例
5. (おまけ)ファイルアップロードによるユーザ登録
2
© 2013
1. 認証と同期について
AlfrescoのLDAP連携の目的には認証と同期の2種類があります。
認証と同期のいずれかを使用することも、両方使用することも可能です。
3
Alfresco LDAP
ID, PW
OK / NG
Alfresco LDAP
ユーザ情報
グループ情報
認証 同期
ログイン時にユーザが入力したIDとPWをLDAPサーバに問い合わせて認証する。
定期的にユーザ情報、グループ情報をLDAPサーバからAlfrescoにインポートする。
© 2013
2. 「認証のみ」の場合の最も簡単な設定例
以下の4つの設定をalfresco-global.propertiesに追記します。
4
設定 説明
authentication.chain=alfrescoNtlm1:alfrescoNtlm,ldap1:ldap 認証チェーンにLDAPを追加。
ldap.authentication.userNameFormat=cn=%s,ou=users,dc=aegif,dc=jp
ログイン画面で入力したユーザIDを「%s」と置き換えるとそのユーザのDNになるように設定。
ldap.authentication.java.naming.provider.url=ldap://localhost:389 LDAPサーバのホスト名(IP)とポート。
ldap.synchronization.active=false 認証のみ使用する場合は同期はOFF
に設定。
認証に関するその他の設定値については、以下のファイルを参照。 webapps/alfresco/WEB-INF/classes/alfresco/subsystems/Authentication/ldap/ldap-authentication.properties 変更したい設定があればalfresco-global.propertiesにコピーして値を書き換えれば変更できる。
© 2013
3. 「同期のみ」の場合の最も簡単な設定例
以下の7つの設定をalfresco-global.propertiesに追記します。
5
設定 説明
authentication.chain=alfrescoNtlm1:alfrescoNtlm,ldap1:ldap 認証チェーンにLDAPを追加。
※同期のみの場合でも必要
ldap.authentication.active=false 同期のみ使用する場合は認証はOFF
ldap.authentication.java.naming.provider.url=ldap://localhost:389 LDAPサーバのホスト名(IP)とポート。
ldap.synchronization.java.naming.security.principal=cn¥=Manager,dc¥
=aegif,dc¥=jp LDAPのroot dn
ldap.synchronization.java.naming.security.credentials=secret LDAPのroot pw
ldap.synchronization.groupSearchBase=ou¥=groups,dc¥=aegif,dc¥=jp このノード以下のグループを同期
ldap.synchronization.userSearchBase=ou¥=users,dc¥=aegif,dc¥=jp このノード以下のユーザを同期
同期に関するその他の設定値については、以下のファイルを参照。 webapps/alfresco/WEB-INF/classes/alfresco/subsystems/Authentication/ldap/ldap-authentication.properties webapps/alfresco/WEB-INF/classes/alfresco/subsystems/Synchronization/default/default-synchronization.properties 変更したい設定があればalfresco-global.propertiesにコピーして値を書き換えれば変更できる。
© 2013
(補足)同期の設定で通常は変更することになる設定値
前項の最も簡単な設定ではAlfrescoのデフォルト値に合わせてLDAPのエントリを作成しているため変更していませんが、実際の環境ではLDAPサーバの各エントリのどのアトリビュートをAlfrescoのユーザ/グループのどの属性に対応させるかを設定する必要があります。
同期処理の実行タイミングも環境や要件に合わせて変更することができます。
6
設定 説明
ldap.synchronization.userIdAttributeName=uid AlfrescoのユーザIDにセットするアトリビュート
ldap.synchronization.userFirstNameAttributeName=givenName Alfrescoのユーザの「名」にセットするアトリビュート
ldap.synchronization.userLastNameAttributeName=sn Alfrescoのユーザの「姓」にセットするアトリビュート
ldap.synchronization.userEmailAttributeName=mail Alfrescoのユーザの「メールアドレス」にセットするアトリビュート
ldap.synchronization.userOrganizationalIdAttributeName=o Alfrescoのユーザの「組織」にセットするアトリビュート
ldap.synchronization.groupIdAttributeName=cn AlfrescoのグループIDにセットするアトリビュート
ldap.synchronization.groupDisplayNameAttributeName=description Alfrescoのグループの「表示名」にセットするアトリビュート
synchronization.import.cron=0 0 0 * * ? 同期処理の実行タイミング
※左端は「分」ではなく「秒」
© 2013
4. 「認証 + 同期」の場合の最も簡単な設定例
以下の7つの設定をalfresco-global.propertiesに追記します。
7
設定 説明
authentication.chain=alfrescoNtlm1:alfrescoNtlm,ldap1:ldap 認証チェーンにLDAPを追加。
ldap.authentication.java.naming.provider.url=ldap://localhost:389 LDAPサーバのホスト名(IP)とポート。
ldap.synchronization.java.naming.security.principal=cn¥=Manager,dc¥
=aegif,dc¥=jp LDAPのroot dn
ldap.synchronization.java.naming.security.credentials=secret LDAPのroot pw
ldap.synchronization.groupSearchBase=ou¥=groups,dc¥=aegif,dc¥=jp このノード以下のグループを同期
ldap.synchronization.userSearchBase=ou¥=users,dc¥=aegif,dc¥=jp このノード以下のユーザを同期
この設定の場合、ログイン画面ではユーザIDとして「ldap.synchronization.userIdAttributeName」で指定されたアトリビュート(デフォルト:uid)を入力する必要がある点が「認証のみ」の場合と異なるので注意が必要。
「認証のみ」の場合のように「ldap.authentication.userNameFormat」を指定する場合は、「%s」と置き換
える部分のアトリビュート(本資料の例ではcn)を「ldap.synchronization.userIdAttributeName」と一致させる必要がある。
© 2013
(おまけ)ファイルアップロードによるユーザ登録
Alfresco 4.0からExcelやCSVファイルのアップロードでユーザを登録できるようになりました。
管理者コンソールのユーザ管理メニューからアップロードします。「ユーザーCSVファイルのアップロード」と書かれていますが、xlsxやxlsもアップロードできます。日本語を含む場合は文字化け対策のためCSVではなくExcelにした方が無難です。
アップロードするファイルの書式等、詳細についてはこちらのブログをご参照ください。
8