Hitachi Global Link Manager 導入・設定ガイド
LDAPディレクトリサーバでユーザー認証するために,Hitachi Command Suite製品では次の設定が必要です。
- LDAPディレクトリサーバのデータ構造を確認し,Hitachi Command Suite製品と連携して認証を行う方法を確認します。
- 管理サーバのexauth.propertiesファイルに必要な情報を設定します。 外部認証サーバとだけ連携する場合と,外部認可サーバとも連携する場合で設定が異なります。
また,LDAPディレクトリサーバは,次のどちらかの方法で定義できます。
- exauth.propertiesファイルに接続先のLDAPディレクトリサーバの情報を直接指定する
IPアドレスやポート番号などの情報をLDAPディレクトリサーバごとにexauth.propertiesファイルに指定します。- DNSサーバに接続先のLDAPディレクトリサーバを照会する
LDAPディレクトリサーバのOSでDNSサーバの環境設定が完了している必要があります。また,DNSサーバのSRVレコードに,LDAPディレクトリサーバのホスト名やポート番号,ドメイン名などを登録しておく必要があります。
- 参考:
- 管理サーバとLDAPディレクトリサーバとの間の通信にStartTLSを使用する場合は,exauth.propertiesファイルに接続先のLDAPディレクトリサーバの情報を直接指定する必要があります。
- また,DNSサーバに接続先のLDAPディレクトリサーバを照会する場合は,ユーザーがログインする際に処理に時間が掛かることがあります。
- 接続先のLDAPディレクトリサーバがマルチドメイン構成の場合,DNSサーバにLDAPディレクトリサーバを照会できません。
- 次の場合は,LDAPディレクトリサーバ内のユーザー情報を検索するためのユーザーアカウント(情報検索用のユーザーアカウント)を管理サーバに登録します。
- データ構造が階層モデルのとき
- データ構造がフラットモデルで,かつ外部認可サーバとも連携するとき※
- 注※
- Global Link Manager GUIで認可グループをHitachi Command Suite製品に登録する際(手順5)に,認可グループのDistinguished Nameが外部認可サーバに登録されているか確認したい場合,SystemアカウントなどHitachi Command Suite製品に登録されたユーザーIDで操作するためには,情報検索用のユーザーアカウントを管理サーバに登録しておく必要があります。
- LDAPディレクトリサーバに,Hitachi Command Suite製品を使用するユーザーのアカウントを登録します。
ユーザーIDおよびパスワードは,Hitachi Command Suite製品で使用できる文字で構成されている必要があります。1バイト以上256バイト以内で次の文字を使用できます。
A~Z a~z 0~9 ! # $ % & ' ( ) * + - . = @ \ ^ _ |
Hitachi Command Suite製品では,ユーザーIDの大文字と小文字の違いは区別されません。また,パスワードの文字種の組み合わせは,外部認証サーバでの設定に従ってください。- Global Link Manager GUIで,アカウントの登録や権限の設定などを実施します。
- 外部認証サーバとだけ連携する場合
- ユーザーの登録
- ユーザーの認証方式の変更※
- ユーザーに対する権限の設定
- ユーザーに対するリソースグループの割り当て
- 注※ 既存のユーザーの認証方式を変更する場合に必要です。
- 外部認可サーバとも連携する場合
- 認可グループの登録
- 認可グループに対する権限の設定
- なお,認可グループに対するリソースグループの割り当ては不要です。認可グループに所属するユーザーにはリソースグループに「All Resources」が割り当てられます。
- hcmds64checkauthコマンドを使用して,LDAPディレクトリサーバに正しく接続できるか確認します。
ここでは,管理サーバで必要な作業について説明します。Global Link Manager GUIでの操作方法については,マニュアル「Hitachi Global Link Manager ユーザーズガイド」を参照してください。
- この項の構成
- (1) データ構造と認証方法の確認
- (2) exauth.propertiesファイルの設定(認証方式がLDAPの場合)
- (3) 情報検索用のユーザーアカウントの登録(認証方式がLDAPの場合)
- (4) 外部認証サーバおよび外部認可サーバとの接続確認(認証方式がLDAPの場合)
LDAPディレクトリサーバのデータ構造には次の2つがあります。
- 階層構造モデル
- フラットモデルの場合
データ構造によって,exauth.propertiesファイルに設定する情報や管理サーバで必要な作業が異なるため,どちらに該当しているかを確認してください。
また,認証の際にユーザーを検索する起点となるエントリー(BaseDN)についても確認してください。BaseDNはexauth.propertiesファイルの設定で必要な情報です。BaseDNより下の階層のユーザーエントリーが認証の対象となります。Hitachi Command Suite製品で認証したいユーザーをすべて含むエントリーであることが必要です。
BaseDNより下の階層が分岐していて,かつ別の階層下にユーザーエントリーが登録されているデータ構造の場合は階層構造モデルになります。階層構造モデルの場合は,BaseDNより下のエントリーを対象に,ログインIDとユーザー属性値が等しいエントリーが検索されます。
次の図に階層構造モデルの例を示します。点線で囲まれた範囲が,認証の対象となるユーザーエントリーです。この例では,対象のユーザーエントリーが「cn=sales」と「cn=development」の2つのエントリーにわたって属しているので,BaseDNは「cn=group,dc=example,dc=com」となります。
BaseDNより下に分岐がなく,かつ直下にユーザーエントリーが登録されているデータ構造の場合はフラットモデルになります。フラットモデルの場合は,BaseDNより下のエントリーを対象に,ログインIDとBaseDNを組み合わせたDNを持つエントリーが認証されます。
次の図にフラットモデルの例を示します。点線で囲まれた範囲が,認証の対象となるユーザーエントリーです。この例では,認証対象のすべてのユーザーエントリーが「ou=people」の直下に属しているので,BaseDNは「ou=people,dc=example,dc=com」となります。
ただし,次のどちらかに該当する場合は,データ構造がフラットモデルであっても,階層構造モデルの場合の説明に従って設定してください。
- Hitachi Command Suite製品のユーザーIDとして,RDNの属性以外のユーザー属性の値を使用する
ユーザーエントリーのRDNの属性値以外のユーザー属性値(WindowsのログオンIDなど)をユーザーIDとして使用する場合には,階層構造モデルの場合の認証方法の設定が必要です。- ユーザーエントリーのRDNの属性値に,Hitachi Command Suite製品のユーザーIDとして使用できない文字が使われている
フラットモデルの場合の認証では,ユーザーエントリーのRDNの属性値をHitachi Command Suite製品のユーザーIDとして使用します。そのため,Hitachi Command Suite製品のユーザーIDとして使用できない文字が使われている場合は,フラットモデルの場合の認証を行うことができません。
- 使用できるRDNの例:
uid=John123S
cn=John_Smith- 使用できないRDNの例:
uid=John:123S(コロン(:)が使用されている)
cn=John Smith(スペースが使用されている)
(2) exauth.propertiesファイルの設定(認証方式がLDAPの場合)
ここでは,LDAPディレクトリサーバでユーザー認証する場合にexauth.propertiesファイルで必要な設定について説明します。
- exauth.propertiesファイルで,次のプロパティに値を設定します。
exauth.propertiesファイルのひな形は次の場所に格納されています。
- 共通のプロパティ(「表3-24 LDAPディレクトリサーバで認証する場合のexauth.propertiesファイルの設定項目(共通項目)」)
- 外部認証サーバと外部認可サーバのプロパティ
LDAPディレクトリサーバごとに設定します。
LDAPディレクトリサーバの情報を直接指定する場合(「表3-25 LDAPディレクトリサーバで認証する場合のexauth.propertiesファイルの設定項目(外部認証サーバの情報を直接指定するとき)」)と,DNSサーバに照会する場合(「表3-26 LDAPディレクトリサーバで認証する場合のexauth.propertiesファイルの設定項目(外部認証サーバの情報をDNSサーバに照会するとき)」)とで設定する項目が異なります。<Hitachi Command Suite共通コンポーネントのインストールフォルダ>\sample\conf\exauth.properties
- 注意事項
- 設定値の先頭および末尾には空白文字を指定しないでください。また,設定値は引用符(")で囲まないでください。指定した場合,値は無視され,デフォルト値が採用されます。
- exauth.propertiesファイルを次の場所に格納します。
<Hitachi Command Suite共通コンポーネントのインストールフォルダ>\conf\exauth.propertiesexauth.propertiesファイルの設定値を変更した場合は,直ちに変更後の値が有効になります。exauth.propertiesファイルの設定項目を「表3-24 LDAPディレクトリサーバで認証する場合のexauth.propertiesファイルの設定項目(共通項目)」~「表3-26 LDAPディレクトリサーバで認証する場合のexauth.propertiesファイルの設定項目(外部認証サーバの情報をDNSサーバに照会するとき)」に示します。
表3-24 LDAPディレクトリサーバで認証する場合のexauth.propertiesファイルの設定項目(共通項目)
プロパティ名 説明 auth.server.type 外部認証サーバの種類です。ldapを指定します。
デフォルト値:internal(外部認証サーバと連携しない場合)auth.server.name LDAPディレクトリサーバのサーバ識別名を指定します。接続プロトコルやポート番号などの設定(「表3-25 LDAPディレクトリサーバで認証する場合のexauth.propertiesファイルの設定項目(外部認証サーバの情報を直接指定するとき)」および「表3-26 LDAPディレクトリサーバで認証する場合のexauth.propertiesファイルの設定項目(外部認証サーバの情報をDNSサーバに照会するとき)」)をLDAPディレクトリサーバごとに区別するために付ける任意の名称です。初期値として「ServerName」が設定されています。必ず1つ以上のサーバ識別名を指定してください。サーバ識別名を複数指定する場合は,サーバ識別名を「,(コンマ)」で区切って指定します。同じサーバ識別名は重複して登録しないでください。
指定できる値:64バイト以内の次の文字列
0~9 A~Z a~z ! # ( ) + - . = @ [ ] ^ _ { } ~
デフォルト値:なしauth.ldap.multi_domain LDAPディレクトリサーバのサーバ識別名を複数指定する場合,各サーバがマルチドメイン構成であるか,冗長構成であるかを指定します。
マルチドメイン構成の場合はtrueを指定します。
冗長構成の場合はfalseを指定します。
デフォルト値:falseauth.ldap.default_domain Active Directoryのグローバルカタログの設定です。ログインIDにドメイン名が付与されていない場合に,デフォルトの認証先とするサーバ構成のドメイン名を指定します。auth.server.nameでサーバを複数指定した場合は,冗長構成ではなくマルチドメイン構成となります。
デフォルト値:なしauth.group.mapping 外部認可サーバとも連携するかどうかを指定します。
連携する場合はtrueを指定します。
連携しない場合はfalseを指定します。
デフォルト値:false表3-25 LDAPディレクトリサーバで認証する場合のexauth.propertiesファイルの設定項目(外部認証サーバの情報を直接指定するとき)
属性 説明 protocol※1 LDAPディレクトリサーバ接続のプロトコルです。この項目は必須です。
平文による通信の場合はldap,StartTLSによる通信の場合はtlsを指定します。
tlsを指定する場合には,LDAPディレクトリサーバで次のどれかの暗号方式を使用できることを事前に確認してください。指定できる値:ldapまたはtls
- TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
- TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
- TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
- TLS_RSA_WITH_AES_256_GCM_SHA384
- TLS_RSA_WITH_AES_128_GCM_SHA256
- TLS_RSA_WITH_AES_256_CBC_SHA256
- TLS_RSA_WITH_AES_128_CBC_SHA256
デフォルト値:なしhost※2 LDAPディレクトリサーバのホスト名またはIPアドレスを指定します。ホスト名を指定する場合,IPアドレスへの名前解決ができることを事前に確認してください。IPアドレスには,IPv4アドレスとIPv6アドレスの両方を使用できます。IPv6アドレスは必ず[ ]で囲んでください。グローバルカタログが有効(auth.ldap.default_domainを指定)の場合,複数のホスト名またはIPアドレスをコンマで区切って指定すると,冗長構成にできます。この項目は必須です。
デフォルト値:なしport LDAPディレクトリサーバのポート番号です。指定するポートが,LDAPディレクトリサーバで待ち受けポート番号として設定されていることを事前に確認してください。グローバルカタログが有効(auth.ldap.default_domainを指定)の場合,複数のポート番号をコンマで区切って指定すると,冗長構成にできます。ポート番号の個数はhostに指定した個数と一致させてください。
指定できる値:1~65535
デフォルト値:389(グローバルカタログが無効の場合),3268(グローバルカタログが有効の場合)timeout LDAPディレクトリサーバと接続するときの接続待ち時間です。この値を0にした場合,タイムアウトしないで,通信エラーが発生するまで待ち続けます。
指定できる値:0~120(秒)
デフォルト値:15attr 認証で使用するユーザーIDの値が定義されている属性名(Attribute Type)です。 初期値として「sAMAccountName」が設定されています。この項目は必須です。
- 階層構造モデルの場合
ユーザーを一意に特定できる値が格納されている属性名を指定します。この属性に格納された値をHitachi Command Suite製品のユーザーIDとして使用します。※3
例:Active Directoryを使用している場合で,WindowsのログオンIDをユーザーIDとして使用したいときは,WindowsのログオンIDが値として定義されている属性名「sAMAccountName」を指定します。- フラットモデルの場合
ユーザーエントリーのRDNの属性名を指定します。
例:ユーザーのDNが「uid=John,ou=People,dc=example,dc=com」であるとき,RDN「uid=John」の属性名「uid」を指定します。
デフォルト値:なしbasedn LDAPディレクトリサーバの情報を検索する際に,起点となるエントリーのDN(BaseDN)です。このDNより下の階層のユーザーエントリーが認証の対象となります。指定した値はLDAPディレクトリサーバにそのまま渡されるため,BaseDNにエスケープが必要な文字が含まれる場合は,正しくエスケープしてください。 この項目は必須です。DNはRFC4514の規約に従って指定してください。例えば,次の文字がDNに含まれる場合は,1文字ごとに「\」でエスケープする必要があります。
- 階層構造モデルの場合
検索対象のユーザーエントリーをすべて含む階層のDNです。
例:図3-1の場合,「cn=group,dc=example,dc=com」を指定します。- フラットモデルの場合
検索対象のユーザーエントリーより1つ上の階層のDNです。
例:図3-2の場合,「ou=people,dc=example,dc=com」を指定します。
空白文字 # + ; , < = > \
デフォルト値:なしretry.interval LDAPディレクトリサーバとの通信に失敗した場合のリトライ間隔となる秒数です。
指定できる値:1~60(秒)
デフォルト値:1retry.times LDAPディレクトリサーバとの通信に失敗した場合のリトライ回数です。この値を0にした場合,リトライされません。
指定できる値:0~50
デフォルト値:20domain.name LDAPディレクトリサーバが管理する外部認可サーバ用のドメインの名称です。外部認可サーバとも連携する場合,この項目は必須です。
デフォルト値:なしdomain LDAPディレクトリサーバが管理するマルチドメイン構成用のドメインの名称,またはグローバルカタログのドメインの名称です。
ログイン時に,この属性で指定したドメイン名をユーザーIDに含めると,指定したドメインに属するLDAPディレクトリサーバが認証先となります。
LDAPディレクトリサーバのサーバ識別名ごとにドメイン名を指定する際に,ドメイン名を重複しないように指定してください。大文字小文字は区別されません。
グローバルカタログが有効の場合,デフォルトの認証先とする構成は,auth.ldap.default_domainのドメイン名と一致させてください。
マルチドメイン構成の場合,この項目は必須です。
デフォルト値:なしdns_lookup falseを指定します。
デフォルト値:false
- 注
- 各属性は,次のように指定します。
- auth.ldap.<auth.server.nameに指定した値>.<属性>=<値>
- 注※1
- LDAPディレクトリサーバの接続プロトコルにStartTLSを使用する場合には,Hitachi Command Suite共通コンポーネントのセキュリティ設定が必要です。StartTLSを使用する場合の設定については,「5.2 サーバとLDAPディレクトリサーバ間のセキュリティ設定」を参照してください。
- 注※2
- LDAPディレクトリサーバの接続プロトコルにStartTLSを使用する場合は,host属性にはLDAPディレクトリサーバの証明書のCNと同じホスト名を設定してください。IPアドレスは使用できません。
- 注※3
- Hitachi Command Suite製品のユーザーIDとして使用できない文字列が値に含まれていない属性を指定してください。
表3-26 LDAPディレクトリサーバで認証する場合のexauth.propertiesファイルの設定項目(外部認証サーバの情報をDNSサーバに照会するとき)
属性 説明 protocol LDAPディレクトリサーバ接続のプロトコルです。この項目は必須です。
指定できる値:ldap
デフォルト値:なしport LDAPディレクトリサーバのポート番号です。指定するポートが,LDAPディレクトリサーバで待ち受けポート番号として設定されていることを事前に確認してください。
指定できる値:1~65535
デフォルト値:389timeout LDAPディレクトリサーバと接続するときの接続待ち時間です。この値を0にした場合,タイムアウトしないで,通信エラーが発生するまで待ち続けます。
指定できる値:0~120(秒)
デフォルト値:15attr 認証で使用するユーザーIDの値が定義されている属性名(Attribute Type)です。 初期値として「sAMAccountName」が設定されています。この項目は必須です。
- 階層構造モデルの場合
ユーザーを一意に特定できる値が格納されている属性名を指定します。この属性に格納された値をHitachi Command Suite製品のユーザーIDとして使用します。※
例:Active Directoryを使用している場合で,WindowsのログオンIDをユーザーIDとして使用したいときは,WindowsのログオンIDが値として定義されている属性名「sAMAccountName」を指定します。- フラットモデルの場合
ユーザーエントリーのRDNの属性名を指定します。
例:ユーザーのDNが「uid=John,ou=People,dc=example,dc=com」であるとき,RDN「uid=John」の属性名「uid」を指定します。
デフォルト値:なしbasedn LDAPディレクトリサーバの情報を検索する際に,起点となるエントリーのDN(BaseDN)です。このDNより下の階層のユーザーエントリーが認証の対象となります。指定した値はLDAPディレクトリサーバにそのまま渡されるため,BaseDNにエスケープが必要な文字が含まれる場合は,正しくエスケープしてください。 この項目は必須です。DNはRFC4514の規約に従って指定してください。例えば,次の文字がDNに含まれる場合は,1文字ごとに「\」でエスケープする必要があります。
- 階層構造モデルの場合
検索対象のユーザーエントリーをすべて含む階層のDNです。
例:図3-1の場合,「cn=group,dc=example,dc=com」を指定します。- フラットモデルの場合
検索対象のユーザーエントリーより1つ上の階層のDNです。
例:図3-2の場合,「ou=people,dc=example,dc=com」を指定します。
空白文字 # + ; , < = > \
デフォルト値:なしretry.interval LDAPディレクトリサーバとの通信に失敗した場合のリトライ間隔となる秒数です。
指定できる値:1~60(秒)
デフォルト値:1retry.times LDAPディレクトリサーバとの通信に失敗した場合のリトライ回数です。この値を0にした場合,リトライされません。
指定できる値:0~50
デフォルト値:20domain.name LDAPディレクトリサーバが管理する外部認可サーバ用のドメインの名称です。この項目は必須です。
デフォルト値:なしdns_lookup trueを指定します。
ただし,次の属性に値が設定されている場合は,DNSサーバには照会されず,ユーザーが指定した値を使用してLDAPディレクトリサーバに接続されます。デフォルト値:false
- auth.ldap.<auth.server.nameに指定した値>.host
- auth.ldap.<auth.server.nameに指定した値>.port
- 注
- LDAPディレクトリサーバ連携用のプロパティは,次のように指定します。
- auth.ldap.<auth.server.nameに指定した値>.<属性>=<値>
- 注※
- Hitachi Command Suite製品のユーザーIDとして使用できない文字列が値に含まれていない属性を指定してください。
設定例を次に示します。
- LDAPディレクトリサーバの情報を直接指定する場合(外部認証サーバとだけ連携するとき)
auth.server.type=ldap auth.server.name=ServerName auth.group.mapping=false auth.ocsp.enable=false auth.ocsp.responderURL= auth.ldap.ServerName.protocol=ldap auth.ldap.ServerName.host=ldap.example.com auth.ldap.ServerName.port=389 auth.ldap.ServerName.timeout=15 auth.ldap.ServerName.attr=sAMAccountName auth.ldap.ServerName.basedn=dc=Example,dc=com auth.ldap.ServerName.retry.interval=1 auth.ldap.ServerName.retry.times=20 auth.ldap.ServerName.dns_lookup=false- LDAPディレクトリサーバをDNSサーバに照会する場合(外部認証サーバとだけ連携するとき)
auth.server.type=ldap auth.server.name=ServerName auth.group.mapping=false auth.ldap.ServerName.protocol=ldap auth.ldap.ServerName.timeout=15 auth.ldap.ServerName.attr=sAMAccountName auth.ldap.ServerName.basedn=dc=Example,dc=com auth.ldap.ServerName.retry.interval=1 auth.ldap.ServerName.retry.times=20 auth.ldap.ServerName.domain.name=EXAMPLE.COM auth.ldap.ServerName.dns_lookup=true- LDAPディレクトリサーバの情報を直接指定する場合(外部認可サーバとも連携するとき)
auth.server.type=ldap auth.server.name=ServerName auth.group.mapping=true auth.ocsp.enable=false auth.ocsp.responderURL= auth.ldap.ServerName.protocol=ldap auth.ldap.ServerName.host=ldap.example.com auth.ldap.ServerName.port=389 auth.ldap.ServerName.timeout=15 auth.ldap.ServerName.attr=sAMAccountName auth.ldap.ServerName.basedn=dc=Example,dc=com auth.ldap.ServerName.retry.interval=1 auth.ldap.ServerName.retry.times=20 auth.ldap.ServerName.domain.name=EXAMPLE.COM auth.ldap.ServerName.dns_lookup=false- LDAPディレクトリサーバをDNSサーバに照会する場合(外部認可サーバとも連携するとき)
auth.server.type=ldap auth.server.name=ServerName auth.group.mapping=true auth.ldap.ServerName.protocol=ldap auth.ldap.ServerName.timeout=15 auth.ldap.ServerName.attr=sAMAccountName auth.ldap.ServerName.basedn=dc=Example,dc=com auth.ldap.ServerName.retry.interval=1 auth.ldap.ServerName.retry.times=20 auth.ldap.ServerName.domain.name=EXAMPLE.COM auth.ldap.ServerName.dns_lookup=true- 冗長構成の場合
auth.server.type=ldap auth.server.name=ServerName1,ServerName2 auth.ldap.multi_domain=false auth.group.mapping=false auth.ldap.ServerName1.protocol=ldap auth.ldap.ServerName1.host=ldap1.example.com auth.ldap.ServerName1.port=389 auth.ldap.ServerName1.timeout=15 auth.ldap.ServerName1.attr=sAMAccountName auth.ldap.ServerName1.basedn=dc=Example,dc=com auth.ldap.ServerName1.retry.interval=1 auth.ldap.ServerName1.retry.times=20 auth.ldap.ServerName2.protocol=ldap auth.ldap.ServerName2.host=ldap2.example.com auth.ldap.ServerName2.port=389 auth.ldap.ServerName2.timeout=15 auth.ldap.ServerName2.attr=sAMAccountName auth.ldap.ServerName2.basedn=dc=Example,dc=net auth.ldap.ServerName2.retry.interval=1 auth.ldap.ServerName2.retry.times=20- マルチドメイン構成の場合
auth.server.type=ldap auth.server.name=ServerName1,ServerName2 auth.ldap.multi_domain=true auth.group.mapping=false auth.ldap.ServerName1.protocol=ldap auth.ldap.ServerName1.host=ldap1.example.com auth.ldap.ServerName1.port=389 auth.ldap.ServerName1.timeout=15 auth.ldap.ServerName1.attr=sAMAccountName auth.ldap.ServerName1.basedn=dc=Example,dc=com auth.ldap.ServerName1.retry.interval=1 auth.ldap.ServerName1.retry.times=20 auth.ldap.ServerName1.domain=example.com auth.ldap.ServerName2.protocol=ldap auth.ldap.ServerName2.host=ldap2.example.com auth.ldap.ServerName2.port=389 auth.ldap.ServerName2.timeout=15 auth.ldap.ServerName2.attr=sAMAccountName auth.ldap.ServerName2.basedn=dc=Example,dc=net auth.ldap.ServerName2.retry.interval=1 auth.ldap.ServerName2.retry.times=20 auth.ldap.ServerName2.domain=example.net- グローバルカタログを有効にする場合
auth.server.type=ldap auth.server.name=ServerName1,ServerName2 auth.ldap.default_domain=example.com auth.ldap.ServerName1.protocol=ldap auth.ldap.ServerName1.host=ldap.example1.com,ldap.example2.com auth.ldap.ServerName1.port=3268,3268 auth.ldap.ServerName1.timeout=15 auth.ldap.ServerName1.attr=sAMAccountName auth.ldap.ServerName1.basedn=dc=Example,dc=com auth.ldap.ServerName1.retry.interval=1 auth.ldap.ServerName1.retry.times=20 auth.ldap.ServerName1.domain=example.com auth.ldap.ServerName2.protocol=ldap auth.ldap.ServerName2.host=ldap.example1.com,ldap.example2.com auth.ldap.ServerName2.port=3268,3268 auth.ldap.ServerName2.timeout=15 auth.ldap.ServerName2.attr=sAMAccountName auth.ldap.ServerName2.basedn=dc=Example,dc=net auth.ldap.ServerName2.retry.interval=1 auth.ldap.ServerName2.retry.times=20 auth.ldap.ServerName2.domain=example.net
(3) 情報検索用のユーザーアカウントの登録(認証方式がLDAPの場合)
hcmds64ldapuserコマンドを使用して情報検索用のユーザーアカウントを管理サーバに登録します。登録後は,hcmds64ldapuserコマンドで,情報検索用のユーザーアカウントを削除したり,管理サーバに情報検索用のユーザーアカウントを登録済みのLDAPディレクトリサーバを確認したりできます。
この作業は次の場合に必要です。
- データ構造が階層モデルのとき
- データ構造がフラットモデルで,かつ外部認可サーバとも連携するとき※
- 注※
- Global Link Manager GUIで認可グループをHitachi Command Suite製品に登録する際に,認可グループのDistinguished Nameが外部認可サーバに登録されているか確認したい場合,SystemアカウントなどHitachi Command Suite製品に登録されたユーザーIDで操作するためには,情報検索用のユーザーアカウントを管理サーバに登録しておく必要があります。
上記以外の場合は,認証・認可時にユーザー情報の検索を行わないため,この作業は不要です。すでに登録されている場合は,削除してください。
hcmds64ldapuserコマンドで情報検索用のユーザーアカウントを登録します。
情報検索用のユーザーアカウントには,次の条件を満たすユーザーアカウントを登録してください。
- LDAPディレクトリサーバに登録されていること
- exauth.propertiesファイルのauth.ldap.<auth.server.nameに指定した値>.basednで指定したDNにバインドできること
- exauth.propertiesファイルのauth.ldap.<auth.server.nameに指定した値>.basednで指定したDN以下のすべてのエントリーに対して属性を検索できること
- exauth.propertiesファイルのauth.ldap.<auth.server.nameに指定した値>.basednで指定したDNを参照できること
hcmds64ldapuserコマンドの書式は次のとおりです。
<Hitachi Command Suite共通コンポーネントのインストールフォルダ>\bin\hcmds64ldapuser /set /dn <情報検索用ユーザーのDN> /pass <情報検索用ユーザーのパスワード> /name <サーバ識別名または外部認可サーバ用のドメイン名>
- <情報検索用ユーザーのDN>
DNはRFC4514の規約に従って指定してください。例えば,次の文字が含まれる場合は,1文字ごとに円記号(\)でエスケープする必要があります。
空白文字 # + , ; < = > \- <情報検索用ユーザーのパスワード>
大文字と小文字の違いも含めて,LDAPディレクトリサーバに登録しているパスワードと完全に一致している必要があります。- <サーバ識別名または外部認可サーバ用のドメイン名>
exauth.propertiesファイルのauth.server.nameプロパティに指定したサーバ識別名またはauth.ldap.<auth.server.name に指定した値 >.domain.nameプロパティに指定したドメイン名を指定します。
- 注意事項
- LDAPディレクトリサーバではDNやパスワードに「"」を使用できますが,管理サーバにはDNおよびパスワードに「"」が含まれていないユーザーアカウントを登録してください。
図3-1のようなデータ構造の場合の実行例を説明します。この図では,検索の起点となるエントリーのDNは「cn=group,dc=example,dc=com」となります。このDN以下のすべてのユーザー「Babs」「Tim」「John」に対し,属性を検索する権限を持つユーザーが「administrator」である場合,/dnオプションには「administrator」のDN「cn=administrator,cn=admin,dc=example,dc=com」を指定します。コマンドの実行例を次に示します。「administrator」のパスワードは「administrator_pass」とします。
hcmds64ldapuser /set /dn "cn=administrator,cn=admin,dc=example,dc=com" /pass administrator_pass /name ServerName
- 参考:
- Active Directoryを使用している場合は,Active Directoryが提供するdsqueryコマンドでユーザーのDNを確認できます。dsqueryコマンドを使用して,ユーザー「administrator」のDNを確認する場合の実行例と実行結果を次に示します。
dsquery user -name administrator "CN=administrator,CN=admin,DC=example,DC=com"- なお,DNが「cn=administrator,cn=admin,dc=example,com」の場合など,DNに「,(コンマ)」が含まれる場合は次のように指定します。
hcmds64ldapuser /set /dn "cn=administrator,cn=admin,dc=example\,com" /pass administrator_pass /name ServerName情報検索用のユーザーアカウントを削除するには,次のコマンドを実行してください。
<Hitachi Command Suite共通コンポーネントのインストールフォルダ>\bin\hcmds64ldapuser /delete /name <サーバ識別名または外部認可サーバ用のドメイン名>情報検索用ユーザーアカウントを登録済みのLDAPディレクトリサーバを確認する
どのLDAPディレクトリサーバの情報検索用ユーザーアカウントが管理サーバに登録されているかを確認する場合は,次のコマンドを実行してください。
<Hitachi Command Suite共通コンポーネントのインストールフォルダ>\bin\hcmds64ldapuser /list
(4) 外部認証サーバおよび外部認可サーバとの接続確認(認証方式がLDAPの場合)
hcmds64checkauthコマンドを使用して,LDAPディレクトリサーバに正しく接続できるか確認します。
<Hitachi Command Suite共通コンポーネントのインストールフォルダ>\bin\hcmds64checkauth /user <ユーザーID> /pass <パスワード> [/summary]/summaryオプションを指定すると,コマンド実行時に表示される確認メッセージが簡略化されます。
<ユーザーID>,<パスワード>には,LDAPディレクトリサーバに登録されているユーザーアカウントのものを指定してください。<ユーザーID>には,exauth.propertiesファイルのauth.ldap.<auth.server.nameに指定した値>.attrで指定した属性に格納されている値を指定してください。ただし,<ユーザーID>,<パスワード>の先頭に,「/」は指定できません。
重要
- マルチドメイン構成の場合,hcmds64checkauthコマンドを実行すると,連携しているすべての外部認証サーバに対してチェックし外部認証サーバごとにチェック結果が表示されます。
- hcmds64checkauthコマンドで指定したユーザーアカウントが登録されていない外部認証サーバでは,チェック結果のフェーズ3でユーザーアカウントが登録されていないことを示すエラーメッセージが表示され,フェーズ3での確認で失敗することがあります。
- この場合,接続確認したい外部認証サーバごとに,外部認証サーバに登録されているユーザーアカウントで確認してください。
hcmds64checkauthコマンドでは,次の4フェーズに分けて確認が行われます。フェーズごとに確認結果が表示されます。
- フェーズ1
- exauth.propertiesファイルの共通のプロパティ(「表3-24 LDAPディレクトリサーバで認証する場合のexauth.propertiesファイルの設定項目(共通項目)」)が正しく設定されているかチェックします。
- フェーズ2
- exauth.propertiesファイルの外部認証サーバと外部認可サーバのプロパティ(「表3-25 LDAPディレクトリサーバで認証する場合のexauth.propertiesファイルの設定項目(外部認証サーバの情報を直接指定するとき)」または「表3-26 LDAPディレクトリサーバで認証する場合のexauth.propertiesファイルの設定項目(外部認証サーバの情報をDNSサーバに照会するとき)」)が正しく設定されているかチェックします。
- フェーズ3
- 外部認証サーバに接続できるかチェックします。
- フェーズ4
- 外部認可サーバとも連携するよう設定されている場合に,外部認可サーバに接続できるか,および認可グループを検索できるかをチェックします。
各フェーズでの確認が正常に終了した場合,次のメッセージが表示されます。
KAPM15004-I The result of the configuration check of Phase X※ was normal.注※ 「X」にはフェーズ番号が入ります。
図3-1のユーザー「John」のアカウントを使用して,hcmds64checkauthコマンドを実行する例を次に示します。
この例では,exauth.propertiesファイルのauth.ldap.<auth.server.nameに指定した値>.attrに「sAMAccountName」が指定されていることとします。LDAPディレクトリサーバで設定された「John」のsAMAccountName属性の値が「John_Smith」であるとき,<ユーザーID>には「John_Smith」を指定します。「John」の,LDAPディレクトリサーバ上のパスワードが「John_pass」であるとき,<パスワード>には「John_pass」を指定します。
hcmds64checkauth /user John_Smith /pass John_pass図3-2のユーザー「John」のアカウントを使用して,hcmds64checkauthコマンドを実行する例を次に示します。
この例では,exauth.propertiesファイルのauth.ldap.<auth.server.nameに指定した値>.attrに「uid」が指定されていることとします。「John」のRDNは「uid=John」であるため,<ユーザーID>にはRDNの属性値「John」を指定します。「John」の,LDAPディレクトリサーバ上のパスワードが「John_pass」であるとき,<パスワード>には「John_pass」を指定します。
hcmds64checkauth /user John /pass John_pass
All Rights Reserved. Copyright© 2014, 2021, Hitachi, Ltd.