Sun Java System Portal Server 7.1 管理ガイド

第 13 章 委任管理チャネルの管理

Portal Server では、ポータルの管理者が、特定の組織内の各種のタスクを管理する責任を委任管理者と呼ばれるほかのユーザーに委任することができます。管理機能を分散させると、とりわけ複雑な組織でポータルの管理を改善できます。ポータルの管理者は、委任管理者がデスクトップの管理に使用するチャネルを設定できます。

委任管理者は、Portal Server デスクトップにある管理ポートレットを使用して、管理タスクを実行します。ここでは、Developers Sample デスクトップにこれらのチャネルを設定する方法について説明します。これにより、委任管理者用の基本的なデスクトップを設計できるようになります。

ポータルの委任管理の概要

Portal Server では、Portal Server デスクトップで管理ポートレットを提供しています。管理者は、これらのポートレットを使用して、委任管理者がデスクトップとエンドユーザーロールの管理に使用する特殊なチャネルを設定できます。次の 3 つの委任管理ロールがあります。

ここでは、Developers Sample デスクトップにこれらのチャネルを設定する方法について説明します。これにより、委任管理者用の基本的なデスクトップを設計できるようになります。

委任管理チャネルの設定

ここでは、Developers Sample デスクトップで、委任管理チャネルを組織、ロール、およびユーザーのレベルに設定する方法を示します。

Procedure委任管理チャネルを設定する

  1. デスクトップチャネルへのアクセスを許可または制限するアクセス制御命令を設定します。

    • 組織レベルの管理者アクセスの場合、アクセス制御命令は Access Manager によってデフォルトで設定されます。

    • ロールレベルまたはユーザーレベルの管理者アクセスの場合は、Portal Server の管理者がアクセス制御命令を設定する必要があります。

      1. サンプル ACI (アクセス制御命令) を Directory Server にロードします。

        ldapmodify -D "cn=directory manager"-w -f acis.ldif と入力します。

        サンプル ACI の内容は次のとおりです。


        #
        
        acis.ldif
        
        dn:dc=sample,dc=siroe,dc=com
        changetype:modify
        
        # JDCAdmin1 ロールの ACI
        
        add:aci
        aci: (target= "ldap:///ou=people,o=DeveloperSample,dc=red,dc=iplanet,dc=com") 
        (targetattr = "*")
        (version 3.0; acl "Allow JDCAdmin1 Role to read and search users"; 
        allow (read,search) 
        roledn = "ldap:///cn=JDCAdmin1,o=DeveloperSample,dc=red,dc=iplanet,dc=com";)
        -
        add:aci
        aci: (target="ldap:///dc=red,dc=iplanet,dc=com") 
        (targetfilter="(entrydn=cn=JDC,o=DeveloperSample,dc=red,dc=iplanet,dc=com)")
        (targetattr="*")
        (version 3.0; acl "Allow JDCAdmin1 Role to read and search JDC Role";
        allow (read,search) 
        roledn="ldap:///cn=JDCAdmin1,o=DeveloperSample,dc=red,dc=iplanet,dc=com";)
        -
        add:aci
        aci: (target="ldap:///ou=people,o=DeveloperSample,dc=red,dc=iplanet,dc=com")
        (targetattr="nsroledn")
        (targetfilter="(!(|(nsroledn=cn=Top-level Admin Role,dc=red,dc=iplanet,dc=com)
        (nsroledn=cn=Top-level Help Desk Admin Role,dc=red,dc=iplanet,dc=com)
        (nsroledn=
        cn=Organization Admin Role,o=DeveloperSample,dc=red,dc=iplanet,dc=com)
        (nsroledn=cn=Top-level Policy Admin Role,dc=red,dc=iplanet,dc=com)))")
        (targattrfilters="add=nsroledn:
        (nsroledn=cn=JDC,o=DeveloperSample,dc=red,dc=iplanet,dc=com),
        del=nsroledn:(nsroledn=cn=JDC,o=DeveloperSample,dc=red,dc=iplanet,dc=com)")
        (version 3.0; acl "Allow JDCAdmin1 Role to add/remove users to JDC Role"; 
        allow (write)
        roledn="ldap:///cn=JDCAdmin1,o=DeveloperSample,dc=red,dc=iplanet,dc=com";)
        - 
        
        # JDCAdmin2 ロールの ACI
        
        add:aci
        aci: 
        (target="ldap:///cn=SunPortalportal1DesktopService,dc=red,dc=iplanet,dc=com")
        (targetfilter=
        (cn=cn=JDC,o=DeveloperSample,dc=red,dc=iplanet,dc=com))(targetattr="*")
        (version 3.0; acl "Allow JDCAdmin2 to edit display profile of JDC Role"; 
        allow (all) 
        roledn="ldap:///cn=JDCAdmin2,o=DeveloperSample,dc=red,dc=iplanet,dc=com";)
        -
        add:aci
        aci: (target="ldap:///dc=red,dc=iplanet,dc=com")(targetattr = "*") 
        (version 3.0; acl "Allow JDCAdmin2 to read and search all"; 
        allow (read,search) 
        roledn = "ldap:///cn=JDCAdmin2,o=DeveloperSample,dc=red,dc=iplanet,dc=com";)
        
        #
      2. o=DeveloperSample,dc=red,dc=iplanet となっている部分をすべて dc=sample,dc=hostname ,dc=com に置き換えます。

  2. 委任管理者のロールを定義します。

    1. Sun JavaTM System Access Manager 管理コンソールにログインします。

      Access Manager コンソールについては、『Sun Java System Access Manager 7.1 管理ガイド』を参照してください。

    2. DeveloperSample 組織に移動します。

    3. 次のいずれかを作成します。

      • 新しいサブ組織

        新しい組織を作成すると、Access Manager によってその組織の組織管理者ロールが設定されます。

        1. この新しい組織に必要なすべてのサービスを登録します。

        2. 新しいユーザーを作成し、このユーザーに組織管理者ロールを割り当てます。

      • 新しい委任管理ロール

        1. 次の新しいロールを作成します。

          • エンドユーザーロール — ロール JDC を作成し、「タイプ」を「サービス」に設定して、アクセス権をオフにします。

          • コンテンツ管理ロール — ロール JDCAdmin2 を作成し、「タイプ」を「管理」に設定して、アクセス権をオフにします。

          • ユーザー管理ロール — ロール JDCAadmin1 を作成し、「タイプ」を「ユーザー」に設定して、アクセス権をオフにします。

        2. 次の新しいユーザーを作成します。

          • jdcuser — ロール JDC に割り当てます。

          • jdcuadmin — ロール JDCAadmin1 に割り当てます。

          • jdctadmin — ロール JDCAdmin2 に割り当てます。

    4. (省略可能) Access Manager コンソールからログアウトします。

  3. ポータルデスクトップサービスの属性値が、管理者ロール DN 側とポータル側で一致するようにします。

    管理者ロール DN のデスクトップサービス属性値は、次のとおりです。

    • content.admin.role.dn

    • user.admin.role.dn

    ポータルのデスクトップサービスの属性値がこれらの値と一致しない場合、この管理者ロールに属するユーザーがポータルに対して認証を行うと、正しくないデスクトップが表示されることがあります。

    たとえば、DeveloperSample ポータルデスクトップサービスの属性値を次のように設定したとします。

    • 親コンテナ: JSPTabContainer

    • EditContainer: JSPEditContainer

    • デフォルトタイプ: developer_sample

    一方、管理者ロール DN を両方とも次のように設定したとします。

    cn=Organization Admin Role, o=DeveloperSample, dc=siroe, dc=com

    この場合、管理者ロール DN に対応するポータルデスクトップサービスの属性を次のように設定する必要があります。

    cn=Organization Admin Role, o=DeveloperSample, dc=siroe, dc=com

  4. taskadmin.properties ファイルを編集します。

    1. portal-base-directory/samples/taskadmin ディレクトリの taskadmin.properties ファイルを開きます。

    2. 次の変数の値を指定します。

      • am.admin.dn — 最上位管理者 DN (たとえば、amadmin)

      • default.org.dn — 最上位組織またはデフォルト組織 (たとえば、dc=sun,dc=com)

      • ps.portal.id — Portal ID (たとえば、portal1)

      • ps.parent.tab.container — ポータルデスクトップの親コンテナ名 (たとえば、ASCTabContainer)

      • ps.default.type — ポータルデスクトップタイプ (たとえば、enterprise_sample)

      • content.admin.role.dn — コンテンツ管理者のチャネルとコンテナがロードされる DN

      • user.admin.role.dn — ユーザー管理者のチャネルとコンテナがロードされる DN

      • managed.content.dn — コンテンツ管理者ロールで管理される DN

    3. 実際の配備に合わせてデフォルト値を変更します。

      # ------------------------------------------------------
         # 全般設定
         # ------------------------------------------------------
         #
         # psadmin パスワードファイル (ファイル名とディレクトリパス)
         # 例: /tmp/password
         #
         psadmin.password.file=/tmp/password //パスワードファイルにパスワードが含まれます
          #
         # ポータル構成場所
         # 例: /etc/opt/SUNWportal
         #
         ps.config.location=/etc/opt/SUNWportal
         #
         # Portal ID
         # 例: portal1
         #
         ps.portal.id=portal1
         #
         # Access Manager 管理者 DN
         # 例: uid=amAdmin,ou=People,dc=siroe,dc=com
         #
         am.admin.dn=uid=amAdmin,ou=People,dc=siroe,dc=com
         #
         # Access Manager デフォルト組織
         # 例: dc=siroe,dc=com
         #
         default.org.dn=dc=siroe,dc=com
         #
         # ------------------------------------------------------
         # タスク管理全般設定
         # ------------------------------------------------------
         #
         # 親タブコンテナ
         # 例: JSPTabContainer
         #
         ps.parent.tab.container=JSPTabContainer
         #
         # 親タブコンテナプロバイダ
         # 例: JSPTabContainerProvider
         #
         ps.parent.tab.container.provider=JSPTabContainerProvider
         #
         # ポータルデフォルトタイプ
         # 例: developer_sample
         #
         ps.default.type=developer_sample
         #
         # ------------------------------------------------------
         # コンテンツ管理者設定
         # ------------------------------------------------------
         #
         # コンテンツ管理者ロール DN。コンテンツ管理チャネルおよびコンテナ
         # がこの DN にロードされます。# 例: 次を参照してください
         #
         content.admin.role.dn=cn=Organization Admin Role,o=DeveloperSample,dc=siroe,dc=com
         #
         # 管理対象コンテンツ DN。'content.admin.role.dn' で管理される DN です。
         # 例: 次を参照してください
         #
         managed.content.dn=o=DeveloperSample,dc=siroe,dc=com
         #
         # ------------------------------------------------------
         # ユーザー管理者設定
         # ------------------------------------------------------
         #
         # ユーザー管理者ロール DN。ユーザー管理チャネルおよびコンテナ
         # がこの DN にロードされます。# 例: 次を参照してください
         #
         user.admin.role.dn=cn=Organization Admin Role,o=DeveloperSample,dc=siroe,dc=com
         #
         # ======================================================
         # 例
         # ======================================================
         #
         # 組織管理者の例:
         #   content.admin.role.dn=cn=Organization Admin Role,o=DeveloperSample,dc=siroe,dc=com
         #   managed.content.dn=o=DeveloperSample,dc=siroe,dc=com
         #   user.admin.role.dn=cn=Organization Admin Role,o=DeveloperSample,dc=siroe,dc=com
         #
         # ロール管理者の例:
         #   content.admin.role.dn=cn=JDCAdmin2,o=DeveloperSample,dc=siroe,dc=com
         #   managed.content.dn=cn=JDC,o=DeveloperSample,dc=siroe,dc=com
         #   user.admin.role.dn=cn=JDCAdmin1,o=DeveloperSample,dc=siroe,dc=com
    4. ant コマンドを実行します。

      /usr/sfw/bin/ant -f ps-base-directory/samples/taskadmin/build.xml -Dprops.location=/tmp

      tmptaskadmin.properties ファイルの場所です

  5. 追加されたことを確認します。

    1. 新しい委任管理者のユーザーデスクトップにログインします。

    2. 新しい委任管理チャネルを表示します。

      • 組織委任管理者の場合は、この組織の管理チャネルが Developer Sample の「管理」タブに表示されることを確認します。

      • ロールまたはユーザー委任管理者の場合は、このユーザーの管理チャネルが Developer Sample の「管理」タブに表示されることを確認します。

    3. ユーザーデスクトップからログアウトします。