Policy API と Access Manager コンソールを使用してポリシーを作成、変更、および削除でき、amadmin コマンド行ツールを使用してポリシーを作成および削除できます。また、amadmin ユーティリティーを使用して、ポリシーの一覧を XML 形式で取得して表示することもできます。この節では、amadmin コマンド行ユーティリティーと Access Manager コンソールを使用してポリシーを作成することを中心に説明します。Policy API の詳細は、『Sun Java System Access Manager 7 2005Q4 Developer’s Guide』を参照してください。
通常ポリシーは XML ファイルで作成し、amadmin コマンド行ユーティリティーを使って Access Manager に追加し、Access Manager のコンソールを使って管理します (ただし、ポリシーをコンソールで作成することもできる)。これは、ポリシーが amadmin を使って直接変更できないからです。ポリシーを修正するには、そのポリシーを Access Manager から削除してから、修正したポリシーを amadmin を使用して追加します。
一般に、ポリシーはレルムツリー全体で使用するために、レルムまたはサブレルムレベルで作成します。
ポリシーの XML ファイルを amadmin.dtd に基づいて作成します。このファイルは次のディレクトリにあります。
AccessManager-base /SUNWam/dtd
ポリシーの XML ファイルを作成したら、次のコマンドを使用してロードできます。
AccessManager-base/SUNWam/bin/amadmin --runasdn "uid=amAdmin,ou=People,default_org, root_suffix" --password password --data policy.xml |
複数のポリシーを同時に追加するには、各 XML ファイルにポリシーを 1 つずつ置くのではなく、1 つの XML ファイルにすべてのポリシーを置きます。複数の XML ファイルでポリシーを次々とロードすると、内部ポリシーインデックスが破損したり、ポリシーの評価に参加できないポリシーが生じたりするおそれがあります。
ポリシーを amadmin で作成するときは、認証スキーム条件を作成中にレルムに認証モジュールを登録することの確認、レルム、LDAP グループ、LDAP ロール、および LDAP ユーザーの対象を作成中に、対応する LDAP オブジェクト (レルム、グループ、ロール、およびユーザー) が存在することの確認、IdentityServerRoles 対象を作成中に、Access Manager ロールが存在することの確認、そしてサブレルムまたはピアレルムの参照を作成中に、関連があるレルムが存在することの確認を行ってください。
SubrealmReferral、PeerRealmReferral、Realm 対象、IdentityServerRoles 対象、LDAPGroups 対象、LDAPRoles 対象、および LDAPUsers 対象の Value 要素のテキストには、完全な DN を指定する必要があります。
ポリシーを作成するレルムを選択します。
「ポリシー」タブをクリックします。
「ポリシー」リストから「新規ポリシー」をクリックします。
ポリシーの名前と説明を入力します。
ポリシーをアクティブにする場合は、「アクティブ」属性で「はい」を選択します。
この時点では、標準ポリシーのフィールドすべてを定義する必要はありません。ポリシーの作成後、ルール、対象、条件、および応答プロバイダを追加できます。詳細は、「ポリシーの管理」を参照してください。
「作成」をクリックします。
「ポリシー」タブから「新規参照」をクリックします。
ポリシーの名前と説明を入力します。
ポリシーをアクティブにする場合は、「アクティブ」属性で「はい」を選択します。
この時点では、参照ポリシーのフィールドすべてを定義する必要はありません。ポリシーの作成後、ルールおよび参照を追加できます。詳細は、「ポリシーの管理」を参照してください。
「作成」をクリックします。
ピアレルムまたはサブレルムのポリシーを作成するには、まず親レルムまたは別のピアレルムで参照ポリシーを作成する必要があります。参照ポリシーのルールの定義には、サブレルムが管理するリソースプレフィックスを含める必要があります。親レルムまたは別のピアレルムで参照ポリシーを作成すれば、サブレルムまたはピアレルムで標準ポリシーを作成できます。
次の例では、o=isp は親レルム、o=example.com は、http://www.example.com のリソースとサブリソースを管理するサブレルムです。
o=isp で参照ポリシーを作成します。参照ポリシーについては、「参照ポリシーの修正」の手順を参照してください。
参照ポリシーは、http://www.example.com をリソースとしてルールに定義し、参照内に example.com を値として持つ SubRealmReferral を含んでいる必要があります。
example.com というサブレルムに移動します。
これで isp によってリソースが example.com の管理に委ねられたので、http://www.example.com というリソース、または http://www.example.com から始まる任意のリソースに対して標準ポリシーを作成できます。
example.com で管理する別のリソースのポリシーを定義するには、追加の参照ポリシーを o=isp に作成する必要があります。