Sun Java System Portal Server 6 2005Q4 管理ガイド |
第 7 章
管理の委任の設定この章では Sun JavaTM System System Portal Server の管理の委任を設定する方法について説明します。
この章で説明する内容は次のとおりです。
管理の委任の概要企業が作成するポータルが大規模かつ複雑になるに従い、中央集中型管理モデルはもはや実現不可能です。管理の委任、すなわち Line of Business (LOB) 管理は、管理作業を実際のポータルユーザーに委任または分散することで、この問題に対処しています。
Portal Server では、ロールを使用して管理機能をユーザーに委任できます。企業はロールベースの管理によって、規模の小さな組織または LOB に事業を分割できます。これによって異なるユーザーがユーザーのロールに基づいて LOB の組織、サブ組織、ユーザー、ポリシー、ロール、およびチャネルを管理できます。
表 7-1 は、Portal Server で適用されるいくつかの重要な管理の委任のリストと定義を示しています。この表には 2 つの列があります。最初の列は用語を示し、2 番目の列は簡単な説明を示します。
委任管理ロール
Sun Java System Access Manager 管理コンソールは、ロールベースの管理の委任の機能を異なる種類の管理者に割り当て、指定されたアクセス権に基づいて組織、ユーザー、ポリシー、ロール、およびチャネルを管理します。
Sun Java System Access Manager 管理コンソールには、管理機能を委任するために、管理者ロールがあらかじめいくつか設定されています。これらのロールは次のとおりです。
これらのロールについての詳細は、Sun Java System Access Manager 製品のマニュアルを参照してください。
これらの事前に定義された管理者ロールを使用して、ロールの機能がニーズに合う場合は委任管理の実装を設定できます。たとえば、1 つの組織の下に複数のサブ組織があるディレクトリ構造のモデルを使用している場合、Organization Admin を複数のユーザーに割り当て、サブ組織ごとに委任管理者を作成することができます。
企業の組織構造がより複雑な場合は、特定のニーズに的を絞った管理の委任を作成する方がよい可能性があります。この場合、Sun Java System Access Manager 管理コンソールを使用して、特定の業務上のニーズに合わせて委任管理者ロールを定義できます。
企業に合った管理の委任モデルを実装する場合、次に示す重要な概念ロールがあります。
Top-Level Admin Role はシステムの設定時に作成され、Organization Admin Role は新しい組織の設定時に自動的に作成されます。Role Administrator Role は、委任管理モデルの要件に基づいて作成するロールです。Role Administrator Role のアクセス権は、対応するアクセス制御命令 (ACI) を直接編集して定義します。
管理の委任では、次の原則が適用されます。
- ユーザー権限はユーザーのロールによって与えられます。
- 権限は個々のユーザーに基づいて、要求される権限を持つロールを定義し、このロールを個々のユーザーに割り当てることで許可されます。
- 特定のロールを 1 つ割り当てることで、一連のユーザーをグループ化できます。これらのユーザーは権限セットが許可され、そのロールに定義されているダイナミックな属性の値を継承します。
- ユーザーは複数のロールまたは集約ロールを持つことができます。複数のロールを持つユーザーは、ロールの機能の組み合わせすべてにアクセスできます。集約されたロールで許可される機能に競合が起こると、それらのロールの各サービスに対して定義される競合の解決レベルを通じて設定された優先順位に基づき、競合が解決されます。最高から最低まで 7 段階で解決レベルを設定できます。複数のロールのロールテンプレートがマージされることによって属性の競合が発生した場合は、競合の解決レベルがもっとも高いテンプレートセットの属性が返されます。
管理の委任モデルの定義Portal Server の管理機能を適切に委任するために、企業が要求する管理ロールを決定する際に役立つ、管理の委任モデルを開発する必要があります。モデルを開発する場合、次の点に注意してください。
管理の委任の設定Portal Server で管理の委任を設定するための手順の概要は、次のとおりです。
Role Administrator Roles の ACI 設定の定義
委任モデルに特定したロール管理者ロールに適切な権限を設定するために、委任モデルの固有の各ロールについて、ACI で適切な権限を定義する必要があります。ロールの ACI 権限テンプレートは、Sun Java System Access Manager 管理コンソールまたは Directory Server コンソールを使用して定義します。ldapmodify コマンドを使用すると、特定のロールに対して ACI を定義できます。
Sun Java System Access Manager 管理コンソールまたは Directory Server コンソールで ACI 権限テンプレートを定義する場合は、次のフォーマットを使用します。
permission_name | aci_desc| dn:aci ## dn:aci ## dn:aci
各表記の意味は次のとおりです。
permission_name は権限の名前です。
aci_desc はこれらの ACI で許可されるアクセスの詳細です。
dn:aci は DN と ACI のペアを表し、## で区切られます。Sun Java System Access Manager は各 ACI を関連する DN エントリに設定します。
このフォーマットは、値を代入できるタグもサポートします。この値は ACI では ROLENAME、ORGANIZATION、GROUPNAME、および PCNAME といった文字で指定する必要があります。これらのタグを使用することで、デフォルトとして使用できる十分な柔軟性を備えたロールを定義できます。デフォルトロールに基づいてロールが作成されると、ACI のタグはロールの DN から引き出された値で解決されます。
ACI の設定については、『Sun Java System Access Manager Programmer's Guide』を参照してください。
コマンド行を使用して ACI を定義する
- ldapmodify コマンドで、使用する ACI 設定を保存したテキストファイルを作成します。たとえば、次の acis.ldif ファイルには、JDCAdmin1 および JDCAdmin2 という 2 つのロールの ACI 定義が格納されています。
- ディレクトリを Sun Java System Access Manager ユーティリティーのディレクトリに変更します。たとえば次のように指定します。
cd /AccessManager-base/SUNWam/bin
- AccessManager-base/SUNWam/ldaplib/solaris/sparc/ldapsdk が含まれるように LD_LIBRARY_PATH を設定します。
- 次のコマンドを実行します。
./ldapmodify -D "DS_DIRMGR_DN" -w DS_DIRMGR_PASSWORD -f /tmp/acis.ldif
- Sun Java System Access Manager 管理コンソールに、管理者としてログインします。
デフォルトでは、ロケーションパネルでは「アイデンティティー管理」が選択され、ナビゲーションパネルでは「組織」が選択されています。
- 新しいロールを作成する組織またはサブ組織に移動します (JDCAdmin1、JDCAdmin2 など)。
- 作成したロールの「デスクトップ」サービステンプレートを作成します。
- ロールディスプレイプロファイルにタブを作成します (たとえば、JDC のロールディスプレイプロファイル、など)。
- タブを作成するロールに移動します。
- ナビゲーションパネルの「表示」メニューから「サービス」を選択します。
- ナビゲーションパネルの「ポータルデスクトップ」の隣にあるプロパティー矢印を選択します。
- デスクトップ属性ページがデータパネルに表示されます。
- デスクトップページで「チャネルおよびコンテナを管理」リンクを選択します。
- 「チャネル」ページが表示され、コンテナパスが root で設定されています。
- チャネルまたはコンテナを追加するコンテナをクリックします。
- ページの上部に、チャネルが追加されるコンテナパスが表示されます。チャネルとコンテナが定義されている場合は、リストに表示されます。
- 「追加」をクリックして、コンテナチャネルまたはチャネルを追加します。
- コンテナチャネルを追加するには、「コンテナチャネル」で「追加」をクリックします。チャネルを追加するには、「チャネル」で「追加」をクリックします。
- 「チャネルの追加」ページが表示されます。
- チャネル名を入力し、メニューからプロバイダのタイプを選択します。
- 「作成」をクリックします。
詳細については、第 10 章「ディスプレイプロファイルの管理」を参照してください。
- ユーザーを作成します (admin1、admin2 など)。
- ユーザーにロールを割り当てます (たとえば、admin1 に JDCadmin1 を割り当てる、admin2 に JDCadmin2 を割り当てる、など)。
- 管理コンソールからログアウトします。
管理コンソールを使用して ACI を定義する
- 最上位管理者として Sun Java System Access Manager 管理コンソールにログインします。
デフォルトでは、ロケーションメニューでは「アイデンティティー管理」が選択され、ナビゲーションパネルでは「組織」が選択されています。
- ロケーションパネルで「サービス設定」をクリックします。
- 「管理」サービスの隣にあるプロパティーの矢印をクリックします。
データパネルに管理の属性が表示されます。
- 「デフォルトロールアクセス権 (ACI)」入力フィールドに、ACI 定義を入力して「追加」をクリックします。たとえば、以前に定義された JDCAdmin1 と JDCAdmin2 というロールの場合、次のように入力します。
JDCAdmin1|Add/delete users from JDC role|dc=sesta,dc=com:aci:(target= "ldap:///ou=people,dc=sesta,dc=com") (targetattr = "*")(version 3.0; acl "Allow JDCAdmin1 Role to read and search users"; allow (read,search) roledn = "ldap:///cn=JDCAdmin1,dc=sesta,dc=com";)##dc=sesta,dc=com:aci:(target="ldap:///dc=sesta,dc=com") (targetfilter="(entrydn=cn=JDC,dc=sesta,dc=com)")(targetattr="*")(version 3.0; acl "Allow JDCAdmin1 Role to read and search JDC Role";allow (read,search) roledn="ldap:///cn=JDCAdmin1,dc=sesta,dc=com";) ##dc=sesta,dc=com:aci:(target="ldap:///ou=people,dc=sesta,dc=com")(targetattr="nsroledn")(targetfilter="(!(|(nsroledn=cn=Top-level Admin Role,dc=sesta,dc=com)(nsroledn=cn=Top-level Help Desk Admin Role,dc=sesta,dc=com)(nsroledn=cn=Organization Admin Role,dc=sesta,dc=com)(nsroledn=cn=Top-level Policy Admin Role,dc=sesta,dc=com)))")(targattrfilters="add=nsroledn:(nsroledn=cn=JDC,dc=sesta,dc=com),del=nsroledn:(nsroledn=cn=JDC,dc=sesta,dc=com)")(version 3.0; acl "Allow JDCAdmin1 Role to add/remove users to JDC Role"; allow (write)roledn="ldap:///cn=JDCAdmin1,dc=sesta,dc=com";)
JDCAdmin2|Add/remove channels from the JDC role|dc=sesta,dc=com:aci:(target="ldap:///cn=SunPortalDesktopService,dc=sesta,dc=com")(targetfilter=(cn=cn=JDC,dc=sesta,dc=com))(targetattr="*")(version 3.0; acl "Allow JDCAdmin2 to edit display profile of JDC Role"; allow (all) roledn="ldap:///cn=JDCAdmin2,dc=sesta,dc=com";)##dc=sesta,dc=com:aci:(target="ldap:///dc=sesta,dc=com")(targetattr = "*") (version 3.0; acl "Allow JDCAdmin2 to read and search all"; allow (read,search) roledn = "ldap:///cn=JDCAdmin2,dc=sesta,dc=com";)
「デフォルトロールアクセス権 (ACI)」リストに新しい ACI が表示されます。
- 「保存」をクリックします。
委任モデルのための管理ロールの新規作成
委任管理ロールの権限を定義する ACI を作成したあと、その ACI 定義を使用するためのロールを作成する必要があります。
- 最上位管理者または組織管理者として Sun Java System Access Manager 管理コンソールにログインします。
デフォルトでは、ロケーションメニューでは「アイデンティティー管理」が選択され、ナビゲーションパネルでは「組織」が選択されています。
- ロールの作成先である組織またはサブ組織に移動します。
作成したすべての組織がナビゲーションパネルに表示されます。
注
これが新規組織の場合、すべてのサービスを追加し、適切なテンプレートを作成する必要があります。詳細については、第 6 章「認証、ユーザー、およびサービスの管理」を参照してください。
- 「表示」メニューから「ロール」を選択し、「新規」をクリックします。
「新規ロール」ページがデータパネルに表示されます。
- 名前を入力し、スタティックロールを選択して「次へ」をクリックします。
- 説明を入力し、タイプとして「管理」を選択します。
- 「アクセス権」を選択します。
- 「作成」をクリックします。
新規ロールがナビゲーションパネルに表示されます。
ロール管理者ロールを割り当てる
- Sun Java System Access Manager 管理コンソールに、管理者としてログインします。
デフォルトでは、ロケーションメニューでは「アイデンティティー管理」が選択され、ナビゲーションパネルでは「組織」が選択されています。
- ロールの作成先である組織またはサブ組織に移動します。
作成したすべての組織がナビゲーションパネルに表示されます。
- 「表示」メニューから「ロール」を選択します。
- 割り当てるロールのプロパティーの矢印をクリックします。
- データパネルの「表示」メニューから「ユーザー」を選択し、「追加」をクリックします。
「ユーザーを追加」ページがデータパネルに表示されます。
- 割り当てるユーザーを検索するためのフィールドの値を指定し、「フィルタ」を選択します。
ユーザーのリストが表示されます。
- ロールを割り当てるユーザーの隣のボックスにチェックマークを付けるか、「すべて選択」を選択してすべてのユーザーを選択します。
- 「送信」をクリックします。
「このロールのユーザー」ボックスのリストが、割り当てられたユーザーで更新されます。
ロール管理者ロールで追加制限を設定する
機能が制限されたロールを設定できます。一般的な制限として、ディスプレイプロファイルの修正およびコンテンツ管理機能の実行に対するロールへの制限がありますが、この場合、デスクトップ属性のほかの表示が制限されます。
また、委任管理者を開始 DN ビューとともに設定することもできます。開始 DN ビューは、委任管理者がエンティティーを確認して修正できるディレクトリの場所です。
ロールに追加制限を設定するには、次の手順に従います。
- Sun Java System Access Manager 管理コンソールに、管理者としてログインします。
デフォルトでは、ロケーションメニューでは「アイデンティティー管理」が選択され、ナビゲーションパネルでは「組織」が選択されています。
- 設定するロールが格納された組織またはサブ組織に移動します。
作成したすべての組織がナビゲーションパネルに表示されます。
- 「表示」メニューから「ロール」を選択します。
- 設定するロールを選択します。
- 「表示」メニューから「サービス」を選択します。
- プロファイルまたはチャネル管理機能のみを表示するようにロールを制限するには、次の手順に従います。
- 特定の開始 DN にロールを制限するには、次の手順を実行します。