ページの先頭行へ戻る
Systemwalker Cloud Business Service Management V1.3.0 ITサービス管理 管理者ガイド
FUJITSU Software

5.10.2 利用者のログインでLDAP/LDAPS認証する

Webコンソール(利用者用)のログインでLDAP/LDAPS認証を行うように、ログイン認証を変更します。また、利用者情報を管理サーバ(ITサービス管理機能)で管理せずに認証サーバで管理することができます。

認証サーバのLDAP署名が有効化されている場合、LDAPS認証を行うように設定する必要があります。

事前の確認

  • Active Directoryに接続専用のユーザーを作成してください。
  • 本手順を実施すると、利用者情報を認証サーバ(Active Directory)から参照するようになるため、Webコンソール(運用者/管理者用)から以下の操作ができなくなります。
    • 利用者の追加
    • 利用者の更新
  • 手順の中で、接続先のActive Directoryのホスト名またはIPアドレスを指定します。ホスト名を指定する場合は、名前解決ができることを確認してください。なおLDAPS認証を行うよう設定する場合はホスト名での名前解決ができることを確認してください。
  • LDAPS認証を行うよう設定する場合、認証サーバがLDAPSに対応している必要があります。
  • LDAPS認証は、WebコンソールをHTTP通信で利用する場合にだけ利用できます。

目的・背景

本手順を実施すると、ITサービス管理内で利用者情報を管理することなくログイン認証を行うことができます。

手順

  1. 認証の設定をLDAPに変更します。
    1. ブラウザを起動して、以下のURLを指定します。

      http://管理サーバ(ITサービス管理機能)のホスト名またはIPアドレス:Webコンソールのポート番号/otrs/index.pl
    2. 管理者のユーザーでログインします。初回のログインでは以下のユーザーでログインします。
      ユーザー名
      swcbsmadmin
      パスワード
      ITサービス管理セットアップパラメーターファイルのITSM_ROOT_PASSWORDに指定した値、または、「 5.10.1 運用者のログインでLDAP/LDAPS認証する 」を設定している場合は、認証サーバ(Active Directory)に作成した管理者ユーザー「swcbsmadmin」のパスワード
    3. ナビゲーション・バーの[管理]をクリックします。
    4. [システム管理]の[システムコンフィグ]をクリックします。
    5. [選択した設定グループへ移動]で[Framework]を選択し、サブグループの[Frontend::Customer::Auth]をクリックします。
    6. 以下の設定を追加または変更します。
      設定項目 設定値 チェックボックス
      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
    7. [更新]をクリックします。
  2. 利用者情報のActive Directory上からの参照設定を変更します。
    1. ITサービス管理がインストールされているサーバに、スーパー・ユーザーでログインします。
    2. ITサービス管理を停止します。

      ITサービス管理の停止については、「7.3 ITサービス管理を停止する」を参照してください。

    3. 設定ファイル(/opt/FJSVbsmotrs/Kernel/Config/Defaults.pm)をコピーして、バックアップします。
    4. 設定ファイル(/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 mail mail メール
        UserCustomerID mail company 利用者グループID
        UserPhone telephonenumber   - 電話
        UserAddress postaladdress   - アドレス
        UserComment description   - コメント
    5. ITサービス管理を起動します。

      ITサービス管理の起動については、「7.2 ITサービス管理を起動する」を参照してください。

結果の確認

  1. ブラウザを起動して、以下のURLを指定します。

    http://管理サーバ(ITサービス管理機能)のホスト名またはIPアドレス:Webコンソールのポート番号/otrs/customer.pl
  2. Active Directory上に作成されている利用者のユーザーでログインできることを確認します。

    ユーザー名
    Active Directoryに作成した利用者のユーザー名
    パスワード
    ユーザー名で入力したユーザーに対応するパスワード