Webコンソール(利用者用)のログインでLDAP/LDAPS認証を行うように、ログイン認証を変更します。また、利用者情報を管理サーバ(ITサービス管理機能)で管理せずに認証サーバで管理することができます。
認証サーバのLDAP署名が有効化されている場合、LDAPS認証を行うように設定する必要があります。
事前の確認
Active Directoryに接続専用のユーザーを作成してください。
本手順を実施すると、利用者情報を認証サーバ(Active Directory)から参照するようになるため、Webコンソール(運用者/管理者用)から以下の操作ができなくなります。
利用者の追加
利用者の更新
手順の中で、接続先のActive Directoryのホスト名またはIPアドレスを指定します。ホスト名を指定する場合は、名前解決ができることを確認してください。なおLDAPS認証を行うよう設定する場合はホスト名での名前解決ができることを確認してください。
LDAPS認証を行うよう設定する場合、認証サーバがLDAPSに対応している必要があります。
LDAPS認証は、WebコンソールをHTTP通信で利用する場合にだけ利用できます。
目的・背景
本手順を実施すると、ITサービス管理内で利用者情報を管理することなくログイン認証を行うことができます。
手順
認証の設定をLDAPに変更します。
ブラウザを起動して、以下のURLを指定します。
http://管理サーバ(ITサービス管理機能)のホスト名またはIPアドレス:Webコンソールのポート番号/otrs/index.pl
管理者のユーザーでログインします。初回のログインでは以下のユーザーでログインします。
swcbsmadmin
ITサービス管理セットアップパラメーターファイルのITSM_ROOT_PASSWORDに指定した値、または、「5.10.1 運用者のログインでLDAP/LDAPS認証する」を設定している場合は、認証サーバ(Active Directory)に作成した管理者ユーザー「swcbsmadmin」のパスワード
ナビゲーション・バーの[管理]をクリックします。
[システム管理]の[システムコンフィグ]をクリックします。
[選択した設定グループへ移動]で[Framework]を選択し、サブグループの[Frontend::Customer::Auth]をクリックします。
以下の設定を追加または変更します。
設定項目 | 設定値 | チェックボックス |
---|---|---|
Customer::AuthModule | LDAP | - |
Customer::AuthModule::LDAP::Host | 接続先Active Directoryのホスト名またはIPアドレス(LDAPS認証の場合はホスト名) 例 ldap.example.com | ON |
Customer::AuthModule::LDAP::BaseDN | 認証用ユーザーを作成するBaseDN 例) dc=example,dc=com ここで設定したBaseDNより下の層のユーザーエントリーが利用者の対象となります。 | ON |
Customer::AuthModule::LDAP::UID | sAMAccountName | ON |
Customer::AuthModule::LDAP::SearchUserDN | Active Directoryに作成した接続用ユーザーのユーザー名 例) ldap@example.com | ON |
Customer::AuthModule::LDAP::SearchUserPw | 接続用ユーザーのパスワード 例) Password#123 | ON |
Customer::AuthModule::LDAP::Params | ■LDAPで認証する場合 async:0 port:389 timeout:120 version:3 ■LDAPS認証する場合 async:0 port:636 timeout:120 version:3 scheme:ldaps cafile:ルート証明書のパス verifyrequire | ON |
CustomerUser::LDAP::Backend###UserDN | [Customer::AuthModule::LDAP::SearchUserDN]と同一の値 | ON |
CustomerUser::LDAP::Backend###UserPw | [Customer::AuthModule::LDAP::SearchUserPw]と同一の値 | ON |
[更新]をクリックします。
利用者情報のActive Directory上からの参照設定を変更します。
ITサービス管理がインストールされているサーバに、スーパー・ユーザーでログインします。
ITサービス管理を停止します。
ITサービス管理の停止については、「6.3 ITサービス管理を停止する」を参照してください。
設定ファイル(/opt/FJSVbsmotrs/Kernel/Config/Defaults.pm)をコピーして、バックアップします。
設定ファイル(/opt/FJSVbsmotrs/Kernel/Config/Defaults.pm)の「# (customer user ldap backend and settings)」の設定を以下のようにコメントアウトを解除(行頭の「#」を削除)し、有効にします。
編集部分
# (customer user ldap backend and settings) $Self->{CustomerUser} = { Name => 'LDAP Backend', Module => 'Kernel::System::CustomerUser::LDAP', Params => { # ldap host Host => 'bay.csuhayward.edu', # ldap base dn BaseDN => 'ou=seas,o=csuh', # search scope (one|sub) SSCOPE => 'sub', # The following is valid but would only be necessary if the # anonymous user does NOT have permission to read from the LDAP tree UserDN => '', UserPw => '', # in case you want to add always one filter to each ldap query, use # this option. e. g. AlwaysFilter => '(mail=*)' or AlwaysFilter => '(objectclass=user)' AlwaysFilter => '(objectclass=user)', # if the charset of your ldap server is iso-8859-1, use this: # SourceCharset => 'utf-8', # die if backend can't work, e. g. can't connect to server Die => 0, # Net::LDAP new params (if needed - for more info see perldoc Net::LDAP) Params => { port => 389, timeout => 120, async => 0, version => 3, }, }, # customer unique id CustomerKey => 'uid', # customer # CustomerID => 'mail', CustomerUserListFields => ['sn', "givenname", 'mail'], CustomerUserSearchFields => ["sAMAccountName", 'sn', "givenname", 'mail'], CustomerUserSearchPrefix => '*', CustomerUserSearchSuffix => '*', CustomerUserSearchListLimit => 250, CustomerUserPostMasterSearchFields => ['mail'], CustomerUserNameFields => ['sn', 'givenname'], # show now own tickets in customer panel, CompanyTickets CustomerUserExcludePrimaryCustomerID => 0, # add a ldap filter for valid users (expert setting) # CustomerUserValidFilter => '(!(description=gesperrt))', # admin can't change customer preferences AdminSetPreferences => 0, # cache time to live in sec. - cache any ldap queries CacheTTL => 0, Map => [ # note: Login, Email and CustomerID needed! # var, frontend, storage, shown (1=always,2=lite), required, storage-type, http-link, readonly # [ 'UserTitle', 'Title', 'title', 1, 0, 'var', '', 1 ], [ 'UserFirstname', 'Firstname', 'givenname', 1, 1, 'var', '', 1 ], [ 'UserLastname', 'Lastname', 'sn', 1, 1, 'var', '', 1 ], [ 'UserLogin', 'Username', 'uid', 1, 1, 'var', '', 1 ], [ 'UserEmail', 'Email', 'mail', 1, 1, 'var', '', 1 ], [ 'UserCustomerID', 'CustomerID', 'mail', 0, 1, 'var', '', 1 ], # [ 'UserCustomerIDs', 'CustomerIDs', 'second_customer_ids', 1, 0, 'var', '', 0 ], [ 'UserPhone', 'Phone', 'telephonenumber', 1, 0, 'var', '', 1 ], [ 'UserAddress', 'Address', 'postaladdress', 1, 0, 'var', '', 1 ], [ 'UserComment', 'Comment', 'description', 1, 0, 'var', '', 1 ], ], }; |
編集する項目
設定項目 | 設定値 |
---|---|
Host | [Customer::AuthModule::LDAP::Host]と同一の値 |
BaseDN | [Customer::AuthModule::LDAP::BaseDN]と同一の値 |
SourceCharset | 連携対象の認証サーバの文字コードがSJISの場合だけデフォルトの設定を変更します。 例) iso-8859-1 |
「# Net::LDAP new params (if needed - for more info see perldoc Net::LDAP)」配下のParams | ■LDAPで認証する場合 デフォルトから変更しません。 ■LDAPSで認証する場合 Params => { port => 636, timeout => 120, async => 0, version => 3, cafile => 'ルート証明書ファイルのパス', scheme => 'ldaps', verify => 'require', }, |
CustomerKey | [Customer::AuthModule::LDAP::UID]と同一の値 |
CustomerID | 利用者グループに対応するActive Directoryの属性名 例) 'company' |
Map | 利用者の各情報とActive Directoryの属性名の対応付け [Map]の3列目、[storage]の値を変更することで、利用者の各情報とActive Directoryの属性の対応付けを変更できます。[storage]の値は以下の表を参照してください。 |
[storage]の値
Active Directory上の属性を参照し、必要に応じて設定してください。必須になっているパラメーターは必ず対応付ける必要があります。
var | storageのデフォルト値 | 必須 | storage(推奨値) | 利用者管理画面のラベル名 |
---|---|---|---|---|
UserFirstname | givenname | ○ | sn | 姓 |
UserLastname | sn | ○ | givenName | 名 |
UserLogin | uid | ○ | sAMAccountName | ユーザー名 |
UserEmail | ○ | メール | ||
UserCustomerID | ○ | company | 利用者グループID | |
UserPhone | telephonenumber | - | 電話 | |
UserAddress | postaladdress | - | アドレス | |
UserComment | description | - | コメント |
ITサービス管理を起動します。
ITサービス管理の起動については、「6.2 ITサービス管理を起動する」を参照してください。
結果の確認
ブラウザを起動して、以下のURLを指定します。
http://管理サーバ(ITサービス管理機能)のホスト名またはIPアドレス:Webコンソールのポート番号/otrs/customer.pl
Active Directory上に作成されている利用者のユーザーでログインできることを確認します。
Active Directoryに作成した利用者のユーザー名
ユーザー名で入力したユーザーに対応するパスワード