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