ポリシー ストアとして OpenLDAP 2.3 以前を設定する方法

目次
casso1283
目次
2
OpenLDAP はポリシー ストアとして機能できます。1 つのディレクトリ サーバ インスタンスは、ポリシー ストアおよびキー ストアとして機能できます。
単一のディレクトリ サーバを使用すると管理タスクが簡略化されます。以下のセクションでは、ポリシー データと暗号化キーを格納するよう 1 つのディレクトリ サーバ インスタンスを設定する方法について説明します。実装に必要な場合は、別のキー ストアを設定できます。
ディレクトリ サーバ情報の収集
casso1283
LDAP ディレクトリ サーバをポリシー ストアとして設定するか、または既存のポリシー ストアをアップグレードするには、特定のディレクトリ サーバ情報が必要です。作業を始める前に、以下の情報を収集してください。
  • ホスト情報
    ディレクトリ サーバの完全修飾ホスト名または IP アドレスを指定します。
  • ポート情報
    (任意)標準以外のポートを指定します。
    デフォルト値:
    636(SSL)および 389(SSL 以外)
  • 管理 DN
    LDAP ツリー内のポリシー ストア ルート オブジェクトの下でオブジェクトの作成、読み取り、変更、および削除を行う権限を持つユーザの LDAP ユーザ名を指定します。
  • 管理パスワード
    管理 DN のパスワードを指定します。
  • ポリシー サーバのルート DN
    ポリシー ストア オブジェクトを定義する、LDAP ツリー内のノードの識別名を指定します。
  • SSL クライアント証明書
    SSL クライアント証明書データベース ファイルがあるディレクトリのパス名を指定します。
    制限:
    SSL のみ
Slapd 構成ファイルの設定
OpenLDAP ディレクトリ サーバをポリシー ストアとして使用できるようにするには、事前に OpenLDAP ディレクトリ サーバで追加設定を行っておく必要があります。設定手順は以下のとおりです。
  1. SiteMinder
    スキーマ ファイルを指定します。
  2. ポリシー ストア インデックスを指定します。
  3. 認証を有効にします。
  4. データベース ディレクティブを指定します。
  5. クライアント サイドの並べ替えのサポート
  6. 構成ファイルをテストします。
  7. OpenLDAP サーバのを起動します。
SiteMinder
スキーマ ファイルの指定
slapd 構成ファイル(slapd.conf)の include セクションにスキーマ ファイルを指定することによって、slapd プロセス(LDAP ディレクトリ サーバ デーモン)が設定され追加の構成情報を読み取ることができます。含めるファイルは、適切な slapd 設定ファイル形式に従う必要があります。
以下の手順に従います。
  1. ポリシー サーバ ホスト システムにログインします。
  2. siteminder_home
    /db/tier2/OpenLDAP に移動し、以下のファイルを OpenLDAP インストール ディレクトリ内のスキーマ フォルダにコピーします。
    • openldap_attribute.schema
    • openldap_object.schema
    • siteminder_home
      ポリシー サーバのインストール パスを指定します。
  3. siteminder_home
    /xps/db に移動し、以下のファイルを OpenLDAP インストール ディレクトリ内のスキーマ フォルダにコピーします。
    • openldap_attribute_XPS.schema
    • openldap_object_XPS.schema
  4. slapd 構成ファイルの include セクションに、以下のエントリを入力します。
    ....
    .....
    include /usr/local/etc/openldap/schema/openldap_attribute.schema
    include /usr/local/etc/openldap/schema/openldap_object.schema
    include /usr/local/etc/openldap/schema/openldap_attribute_XPS.schema
    include /usr/local/etc/openldap/schema/openldap_object_XPS.schema
    この手順では、OpenLDAP サーバが /usr/local/etc/openldap 内にあり、スキーマ ファイルが schema サブディレクトリに配置されていることを前提としています。
    SiteMinder
    スキーマ ファイルが指定されます。
ポリシー ストア インデックスの指定
ポリシー ストアとして OpenLDAP を使用する slapd.conf ファイルでインデックスを指定します。
以下の手順に従います。
  1. slapd インスタンスを停止します。
  2. slapd.conf ファイルをテキスト エディタで開きます。
  3. 以下の行を確認します。
    # Indices to maintain
    index   objectClass     eq
  4. ファイルに新しい行を挿入し、次に、以下の行を追加します。
    index smAdminOID4 pres,eq
    index smAuthDirOID4 pres,eq
    index smAzDirOID4 pres,eq
    index smcertmapOID4 pres,eq
    index smIsRadius4 pres,eq
    index smIsAffiliate4 pres,eq
    index smParentRealmOID4 pres,eq
    index smPasswordPolicyOID4 pres,eq
    index smAgentGroupOID4 pres,eq
    index smKeyManagementOID4 pres,eq
    index smAgentOID4 pres,eq
    index smAgentKeyOID4 pres,eq
    index smRootConfigOID4 pres,eq
    index smAGAgents4 pres,eq
    index smDomainAdminOIDs4 pres,eq
    index smDomainOID4 pres,eq
    index smvariableoid5 pres,eq
    index smNestedVariableOIDs5 pres,eq
    index smvariabletypeoid5 pres,eq
    index smActiveExprOID5 pres,eq
    index smDomainUDs4 pres,eq
    index smVariableOIDs5 pres,eq
    index smusractiveexproid5 pres,eq
    index smPropertyOID5 pres,eq
    index smPropertySectionOID5 pres,eq
    index smPropertyCollectionOID5 pres,eq
    index smFilterClass4 pres,eq
    index smTaggedStringOID5 pres,eq
    index smNoMatch5 pres,eq
    index smTrustedHostOID5 pres,eq
    index smIs4xTrustedHost5 pres,eq
    index smDomainMode5 pres,eq
    # index smImsEnvironmentOIDs5 pres,eq
    index smSecretRolloverEnabled6 pres,eq
    index smSecretGenTime6 pres,eq
    index smSecretUsedTime6 pres,eq
    index smSharedSecretPolicyOID6 pres,eq
    index smFilterPath4 pres,eq
    index smPolicyLinkOID4 pres,eq
    index smIPAddress4 pres,eq
    index smRealmOID4 pres,eq
    index smSelfRegOID4 pres,eq
    index smAzUserDirOID4 pres,eq
    index smResourceType4  pres,eq
    index smResponseAttrOID4 pres,eq
    index smResponseGroupOID4  pres,eq
    index smResponseOID4     pres,eq
    index smRGResponses4 pres,eq
    index smRGRules4     pres,eq
    index smRuleGroupOID4 pres,eq
    index smRuleOID4   pres,eq
    index smSchemeOID4 pres,eq
    index smisTemplate4  pres,eq
    index smisUsedbyAdmin4 pres,eq
    index smSchemeType4   pres,eq
    index smUserDirectoryOID4 pres,eq
    index smODBCQueryOID4 pres,eq
    index smUserPolicyOID4 pres,eq
    index smAgentTypeAttrOID4 pres,eq
    index smAgentTypeOID4 pres,eq
    index smAgentTyperfcid4 pres,eq
    index smAgentTypeType4 pres,eq
    index smAgentCommandOID4 pres,eq
    index smTimeStamp4     pres,eq
    index smServerCommandOID4 pres,eq
    index smAuthAzMapOID4 pres,eq
    index xpsParameter pres,eq
    index xpsValue  pres,eq
    index xpsNumber pres,eq
    index xpsCategory pres,eq
    index xpsGUID pres,eq
    index xpsSortKey pres,eq
    index xpsIndexedObject pres,eq
  5. ファイルを保存し、テキスト エディタを閉じます。
  6. 以下のコマンドを実行します。
    slapindex -f slapd.conf
  7. slapd インスタンスを再起動します。
    OpenLDAP 用のポリシー ストア インデックスが指定されます。
ユーザ認証の有効化
ユーザ認証を有効にすることにより、サポートされた認証方式でリソースを保護することができます。
ユーザ認証を有効にするには、slapd 設定ファイルに以下の行を追加します。
access to attrs=userpassword
by self write
by anonymous auth
by * none
データベース ディレクティブの指定
slapd 設定ファイルには、さらにデータベース ディレクティブの値が必要です。
ディレクティブを指定するには、以下を編集します。
  • database
    任意のサポートされているバックエンド タイプを指定します。
    例:
    bdb
  • suffix
    データベースのサフィックスを指定します。
    例:
    dc=example、dc=com
  • rootdn
    ルートの DN を指定します。
    例:
    cn=Manager、dc=example、dc=com
  • rootpw
    ルートのパスワードを指定します。
  • ディレクトリ
    データベース ディレクトリのパスを指定します。
    例:
    /usr/local/var/openldap-data
    データベース ディレクトリは slapd を実行する前に存在し、slapd プロセスに対してのみアクセス可能である必要があります。
クライアント サイドの並べ替えのサポート
サポートされている LDAP ディレクトリで、サーバ側の並べ替えをサポートしていないのは OpenLDAP のみです。そこで、OpenLDAP では、すべての並べ替えをクライアント側で実行する必要があります。これを可能にするため、すべての XPS オブジェクトは、サーバ側のページングを使用して起動時に取得されます。
クライアント サイドの並べ替えをサポートするには、OpenLDAP ディレクトリの管理者が、slapd.conf ファイルで以下の設定を行う必要があります。
  • ルート DSE の読み取りを有効にします。
    この設定により、XPS クライアントは OpenLDAP ディレクトリのタイプおよび機能を読み取ることが可能になります。
  • 検索操作から返すことのできる項目の最大数を 500 以上に設定します。
    この設定により、サーバ サイドのページングによって 500 個単位で取得される XPS オブジェクトに対応します。
  • シンプル V2 バインドを許可します。
    この設定により、smconsole はシンプル V2 バインドを使用して LDAP 接続をテストすることが可能になります。
以下の手順に従います。
  1. slapd.conf ファイルに、以下の行を追加します。
    access to * by users read by anonymous read
    または
    access to dn.base="ou=<
    Root_DN
    >" by users read
     
    • Root_DN
      ポリシー ストア オブジェクトを定義する必要がある、LDAP ツリー内のノードの識別名を指定します。
    注:
    ACL を指定する方法の詳細については、http://www.openldap.org/doc/admin24/access-control.html を参照してください。
  2. slapd.conf ファイルで sizelimit ディレクティブによって指定された値が 500 以上であることを確認します。
    sizelimit 500
    注:
    sizelimit のデフォルト値は 500 です。詳細については、http://www.openldap.org/doc/admin24/slapdconfig.html を参照してください。
  3. slapd.conf ファイルに、以下の行を追加します。
    allow bind_v2
slapd.conf ファイルが、クライアント サイドの並べ替えをサポートするように設定されます。
設定ファイルのテスト
設定ファイルをテストすることで、ファイルを正しい形式にすることができます。
以下の手順に従います。
  1. OpenLDAP サーバ ディレクトリに移動します。
  2. 以下のコマンドを実行します。
    ./slapd
    レベル 0 を含め、デバッグ レベルを指定しない限り、slapd は自動的にフォークし、制御端末から自身を切り離し、バックグラウンドで実行します。
  3. 以下のコマンドを実行します。
     ./slapd -Tt
    slapd 設定ファイルがテストされます。
OpenLDAP サーバの再起動
OpenLDAP ディレクトリ サーバを再起動すると、
SiteMinder
スキーマがロードされます。ディレクトリ サーバをポリシー ストアとして使用できるように、ポリシー サーバは、事前に
SiteMinder
スキーマをロードしておくことを必要とします。
以下の手順に従います。
  1. 以下のコマンドを使用して、ディレクトリ サーバを停止します。
    kill -INT 'cat path_of_var/run_directory/slapd.pid`
    • path_of_var/run_directory
      データベース ディレクトリのパスを指定します。
      例: kill -INT `cat /usr/local/var/run/slapd.pid`
  2. 以下のコマンドを使用して、ディレクトリ サーバを起動します。
    ./slapd
Portalデータベースの作成
以下のプロセスに、ポリシー ストア用のディレクトリ サーバ データベースを作成するための手順を示します。
  1. ベース ツリー構造を作成します。
  2. エントリを追加します。
ベース ツリー構造の作成
ポリシー ストア オブジェクトを格納するためにベース ツリー構造を作成できます。
ルート DN の下に、以下のエントリを指定します。
ou=Netegrity,ou=SiteMinder,ou=PolicySvr4,ou=XPS
ベース ツリー構造が作成されます。
エントリの追加
SiteMinder
が必要な組織情報および組織ロール情報を保持するように、ディレクトリ サーバにエントリを追加します。
以下の手順に従います。
  1. LDIF ファイルを作成します。
    例:
    以下の例には、entries.ldif の組織エントリおよび組織ロール エントリが含まれます。
    # Netegrity, example.com
    dn: ou=Netegrity,dc= example,dc=com
    ou: Netegrity
    objectClass: organizationalUnit
    objectClass: top
     
    # SiteMinder, Netegrity, example.com
    dn: ou=SiteMinder,ou=Netegrity,dc= example,dc=com
    ou: SiteMinder
    objectClass: organizationalUnit
    objectClass: top
     
    # PolicySvr4, SiteMinder, CA, example.com
    dn: ou=PolicySvr4,ou=SiteMinder,ou=Netegrity,dc= example,dc=com
    ou: PolicySvr4
    objectClass: organizationalUnit
    objectClass: top
     
    # XPS, PolicySvr4, SiteMinder, Netegrity, example.com
    dn: ou=XPS,ou=PolicySvr4,ou=SiteMinder,ou=Netegrity,dc= example,dc=com
    ou: XPS
    objectClass: organizationalUnit
    objectClass: top
  2. 以下のコマンドを使用して、エントリを追加します。
    ldapadd -f <file_name.ldif> -D "cn=Manager,dc=example,dc=com"
    -w<password>
ポリシー サーバからポリシー ストアへの参照の設定
casso1283
ポリシー サーバからポリシー ストアへの参照を設定し、ポリシー サーバがポリシー ストアにアクセスできるようにします。
以下の手順に従います。
  1. ポリシー サーバ管理コンソールを開きます。
    casso1283
    Windows サーバ上で、ユーザ アカウント制御(UAC)が有効な場合は、管理者権限でショートカットを開きます。管理者としてシステムにログインしている場合でも、管理者権限を使用します。詳細については、お使いの
    SiteMinder
    コンポーネントの「リリース ノート」を参照してください。
  2. [データ]タブをクリックします。
  3. データベース リストから以下の値を選択します。
    Policy Store
  4. ストレージ リストから以下の値を選択します。
    LDAP
  5. [LDAP ポリシー ストア]グループ ボックスで、以下を設定します。
    • LDAP IP アドレス
    • Admin Username
    • Password
    • パスワードの確認入力
    • ルート DN
    フィールド、コントロール、およびそれぞれの要件については、[ヘルプ]をクリックしてください。
  6. [適用]をクリックします。
  7. [LDAP 接続のテスト]をクリックして、ポリシー サーバがポリシー ストアにアクセスできることを確認します。
  8. データベース リストから以下の値を選択します。
    Key Store
  9. ストレージ リストから以下の値を選択します。
    LDAP
  10. 以下のオプションを選択します。
    Use Policy Store database
  11. [OK]をクリックします。
SiteMinder
スーパーユーザ パスワードの設定
casso1283
デフォルトの管理者アカウントの名前は
siteminder
です。 このアカウントは最大の権限を持っています。
デフォルトのスーパーユーザを日常的な作業に使用しないでください。デフォルトのスーパーユーザは、以下の場合に使用してください。
  • 管理 UI に初めてアクセスするとき。
  • SiteMinder
    ユーティリティの管理を初めて行うとき。
  • スーパーユーザ権限を持つ別の管理者を作成するとき。
以下の手順に従います。
  1. smreg ユーティリティを
    siteminder_home
    \bin にコピーします。
    • siteminder_home
      ポリシー サーバのインストール パスを指定します。
    このユーティリティは、ポリシー サーバ インストール キットの最上位レベルにあります。
  2. 以下のコマンドを実行します。
    smreg -su 
    password
    • パスワード
      デフォルトの管理者のパスワードを指定します。
    パスワードには、以下の要件があります。
    • パスワードは 6 文字以上、24 文字以下である必要があります。
    • パスワードには、アンパサンド(&)またはアスタリスク(*)を含むことはできません。
    • パスワードにスペースが含まれている場合は、引用符でパスフレーズを囲みます。
    Oracle ポリシー ストアを設定している場合、パスワードの大文字と小文字が区別されます。他のすべてのポリシー ストアの場合は、パスワードの大文字と小文字を区別しません。
  3. siteminder_home
    \bin から smreg を削除します。smreg を削除すると、既存のパスワードを把握していない限り、パスワードを変更することはできなくなります。
デフォルトの管理者アカウントのパスワードが設定されます。
ポリシー ストア データ定義のインポート
casso1283
ポリシー ストア データ定義をインポートすると、ポリシー ストアで作成および格納できるオブジェクトのタイプが定義されます。
以下の手順に従います。
  1. コマンド ウィンドウを開き、
    siteminder_home
    \xps\dd に移動します。
    • siteminder_home
      ポリシー サーバのインストール パスを指定します。
  2. 以下のコマンドを実行します。
    XPSDDInstall SmMaster.xdd
    • XPSDDInstall
      必要なデータ定義をインポートします。すべてのポリシー サーバがご使用の環境の同じポリシー ストアまたはレプリケートされたポリシー ストアを参照している場合、環境内の 1 つのポリシー サーバでのみ XPSDDInstall を一度実行します。レプリケーション プロセスが完了してから、次のステップに進みます。整合性エラーを防ぐために、すべてのポリシー サーバで XPSDDInstall を実行しないようにしてください。
デフォルトのポリシー ストア オブジェクトのインポート
casso1283
デフォルトのポリシー ストア オブジェクトをインポートすると、管理 UI とポリシー サーバで使用するポリシー ストアが設定されます。
以下の点を考慮します。
  • 必ず
    siteminder_home
    \bin への書き込みアクセス権があることを確認してください。インポート ユーティリティは、ポリシー ストア オブジェクトをインポートするためにこの権限を必要とします。
    • siteminder_home
      ポリシー サーバのインストール パスを指定します。
  • Windows ユーザ アカウント制御(UAC)が有効になっている場合、管理者権限でコマンド ライン ウィンドウを開きます。アカウントに管理者権限がある場合でも、このようにコマンド ライン ウィンドウを開きます。詳細については、お使いの
    SiteMinder
    コンポーネントの「リリース ノート」を参照してください。
以下の手順に従います。
  1. コマンド ウィンドウを開き、
    siteminder_home
    \db に移動します。
  2. 以下のいずれかのファイルをインポートします。
    • smpolicy.xml をインポートするには、以下のコマンドを実行します。
      XPSImport smpolicy.xml -npass
    • smpolicy-secure.xml をインポートするには、以下のコマンドを実行します。
      XPSImport smpolicy-secure.xml -npass
      • npass
        パスフレーズが必要ではないことを指定します。デフォルト ポリシー ストア オブジェクトには暗号化されたデータが含まれていません。
      両方のファイルに、デフォルトのポリシー ストア オブジェクトが含まれています。これらのオブジェクトにはデフォルトのエージェント設定オブジェクト(ACO)テンプレート内のデフォルト セキュリティ設定が含まれます。smpolicy–secure ファイルはより制限の厳しいセキュリティ設定を提供します。
    • Option Pack 機能をインポートするには、以下のコマンドを実行します。
      XPSImport ampolicy.xml -npass
    • フェデレーション機能をインポートするには、以下のコマンドを実行します。
      XPSImport fedpolicy-12.5.xml -npass
    • OAuth または OpenID 接続を使用するには、以下のコマンドを実行して、デフォルト OAuth エンティティおよび OpenID 接続用のデフォルトのクレームおよびスコープ オブジェクトをインポートします。
      XPSImport default-fedobjects-config.xml -npass
      -npass
      は、パスフレーズが必要ではないことを指定します。
    ベース ポリシー ストア オブジェクトがインポートされます。
ampolicy.xml をインポートすると、
SiteMinder
から別個にライセンスが付与されるレガシー フェデレーションおよび Web サービス変数機能が使用可能になります。Web サービスの変数機能を使用する予定の場合は、ライセンス情報について Broadcom アカウント担当者に問い合わせてください。
管理 UI 登録の準備
casso1283
管理 UI に初めてログインするときは、デフォルトのスーパーユーザ アカウントを使用します。初めてログインするときは、管理 UI をポリシー サーバに登録する必要があります。これで、両方のコンポーネントの間に信頼関係が作成されます。
XPSRegClient ユーティリティを使用してスーパーユーザ アカウントの名前とパスワードを指定して、登録の準備をします。ポリシー サーバは、これらの認証情報を使用して、登録要求が有効であること、および信頼関係を確立できることを検証します。
以下の点を考慮します。
  • 認証情報を指定してから最初の管理 UI ログインまでの時間は、24 時間に制限されています。24 時間以内に管理 UI をインストールする予定がない場合は、管理 UI をインストールする前に以下の手順を実行します。
  • (UNIX) XPSRegClient を使用する前に、
    SiteMinder
    環境変数が設定されていることを確認してください。環境変数が設定されていない場合は、手動で設定します。
以下の手順に従います。
  1. ポリシー サーバ ホスト システムにログインします。
  2. 以下のコマンドを実行します。
    XPSRegClient super_user_account_name[:
    passphrase
    ] -adminui-setup -t 
    timeout 
    -r 
    retries 
    -c 
    comment 
    -cp -l 
    log_path 
    -e 
    error_path 
    -vT -vI -vW -vE -vF
    • passphrase
      デフォルトのスーパーユーザ アカウントのパスワードを指定します。
      パスフレーズを指定しない場合、XPSRegClient でパスフレーズの入力と確認が求められます。
    • -adminui–setup
      管理 UI がポリシー サーバに初めて登録されることを指定します。
    • -t
      timeout
      (任意)管理 UI をインストールしてから、ログインしてポリシー サーバとの信頼関係を作成するまでの割り当て時間を指定します。タイムアウト値を超過すると、ポリシー サーバは登録リクエストを拒否します。
      測定単位
      : 分
      デフォルト:
      240(4 時間)
      最小:
      15
      最大値:
      1440 (24 時間)
    • -r
      retries
      (任意)管理 UI の登録時に許容される試行の失敗回数を指定します。試行が失敗する原因としては、管理 UI への最初のログイン時に指定する管理者の認証情報の誤りが考えられます。
      デフォルト:
      1
      最大:
      5
    • -c
      comment
      (任意)指定されたコメントを情報目的で登録ログ ファイルに挿入します。
      コメントは引用符で囲んでください。
    • -cp
      (任意)登録ログ ファイルに複数行のコメントが含まれることを指定します。ユーティリティにより複数行のコメントが求められ、指定されたコメントが情報目的で登録ログ ファイルに挿入されます。
      コメントは引用符で囲んでください。
    • -l
      log_path
      (任意)登録ログ ファイルをエクスポートする場所を指定します。
      デフォルト:
      siteminder_home
      \log
      siteminder_home
      ポリシー サーバのインストール パスを指定します。
    • -e
      error_path
      (任意)例外を指定されたパスに送信します。
      デフォルト
      : stderr
    • -vT
      (任意)詳細レベルを TRACE に設定します。
    • -vI
      (任意)詳細レベルを INFO に設定します。
    • -vW
      (任意)詳細レベルを WARNING に設定します。
    • -vE
      (任意)詳細レベルを ERROR に設定します。
    • -vF
      (任意)詳細レベルを FATAL に設定します。
  3. Enter キーを押します。
    XPSRegClient は、ポリシー サーバに管理者認証情報を提供します。ポリシー サーバは、管理 UI への最初のログイン時に、登録リクエストを確認するためにこれらの認証情報を使用します。