Sun Identity Manager 8.1 リソースリファレンス

第 3 章 Sun Access Manager

Identity Manager では Sun Access Manager リソースアダプタが提供され、旧バージョンモードで動作している Sun Java™ System Access Manager をサポートします。

アダプタの詳細

このアダプタは、com.waveset.adapter.SunAccessManagerResourceAdapter クラスで定義されます。


注 –

リソースを設定する際の注意事項


注 –

Access Manager 7 以降の場合、このアダプタでは旧バージョンモードのみがサポートされます。レルムモードはサポートされません。


設定できるのは (レルムモードまたは旧バージョンモードにかかわらず) 1 つの Access Manager サーバーだけです。

Policy Agent は、シングルサインオン (SSO) を有効にするために使用できるオプションモジュールです。使用している環境内でこの製品を使用していない場合は、Policy Agent の設定手順やインストール手順を実行しないでください。

Policy Agent の詳細は、http://docs.sun.com/app/docs/coll/1322.1 を参照してください。

Policy Agent をインストールするには、Policy Agent に付属するインストール手順書に従います。 その後、次の作業を実行します。

ProcedurePolicy Agent を設定する

  1. AMAgent.properties ファイルを編集します。

  2. Sun Access Manager でポリシーを作成します。

AMAgent.properties ファイルの編集

AMAgent.properties ファイルを変更して、Identity Manager を保護する必要があります。このファイルは AgentInstallDir/config ディレクトリにあります。

ProcedureAMAgent.properties ファイルを編集する

  1. AMAgent.properties ファイル内で次の行を検索します。


    com.sun.identity.agents.config.cookie.reset.enable = false
    com.sun.identity.agents.config.cookie.reset.name[0] =
    com.sun.identity.agents.config.cookie.reset.domain[] =
    com.sun.identity.agents.config.cookie.reset.path[] =

    これらの行を次のように編集します。


    com.sun.identity.agents.config.cookie.reset.enable = true
    com.sun.identity.agents.config.cookie.reset.name[0] = AMAuthCookie
    com.sun.identity.agents.config.cookie.reset.domain[0] = .example.com
    com.sun.identity.agents.config.cookie.reset.path[0] = /
  2. 次の行を追加します。


    com.sun.identity.agents.config.cookie.reset.name[1] = iPlanetDirectoryPro
    com.sun.identity.agents.config.cookie.reset.domain[1] = .example.com
    com.sun.identity.agents.config.cookie.reset.path[1] = /
  3. 次の行を検索します。


    com.sun.identity.agents.config.profile.attribute.fetch.mode = NONE
    com.sun.identity.agents.config.profile.attribute.mapping[] =

    これらの行を次のように編集します。


    com.sun.identity.agents.config.profile.attribute.fetch.mode = HTTP_HEADER
    com.sun.identity.agents.config.profile.attribute.mapping[uid] = sois_user
  4. 変更を有効にするために、Web サーバーを再起動します。

Sun Access Manager のポリシーの作成

Procedureポリシーを作成する

  1. Sun Access Manager アプリケーションで、次の規則を設定した IDMGR という名前 (または類似の名前) の新しいポリシーを作成します。

    サービスのタイプ  

    リソース名  

    アクション  

    URL ポリシーエージェント 

    http://server:port/idm

    GET アクションと POST アクションを許可します

    URL ポリシーエージェント 

    http://server:port/idm/*

    GET アクションと POST アクションを許可します

  2. 1 つ以上の主体を IDMGR ポリシーに割り当てます。

Sun Access Manager (Access Manager 7.0 より前のバージョン) のインストールと設定

次に、Sun Access Manager および Policy Agent のインストールと設定の方法について説明します。Sun Access Manager を Identity Manager サーバーと同じシステムにインストールする場合は、Sun Access Manager リソースアダプタの設定に関する情報を参照してください。Policy Agent を使用している場合は、「Policy Agent のインストールと設定」で追加情報を確認してください。

Access Manager を Identity Manager サーバーとは異なるシステムにインストールする場合は、Identity Manager システムで次の手順を実行します。

ProcedureAccess Manager を別のシステムにインストールする場合

  1. Sun Access Manager サーバーからコピーするファイルの配置先ディレクトリを作成します。この手順では、CfgDir という名前のディレクトリを使用します。Access Manager がインストールされている場所を AccessMgrHome とします。

  2. 次のファイルを AccessMgrHome から CfgDir にコピーします。ディレクトリ構造はコピーしないでください。

    • lib/*.*

      • locale/*.properties

      • config/serverconfig.xml

      • config/SSOConfig.properties (Identity Server 2004Q2 以降)

      • config/ums/ums.xml

  3. UNIX では、全体的な読み取りアクセスを許可するために CfgDir 内の JAR ファイルのアクセス権を変更しなければならない場合があります。アクセス権を変更するには、次のコマンドを実行します。

    chmod a+r CfgDir/*.jar

  4. 次のように JAVA クラスパスを付加します。

    • Windows: CfgDir ;CfgDir/am_sdk.jar; CfgDir/am_services.jar;CfgDir /am_logging.jar

      • UNIX: CfgDir :CfgDir/am_sdk.jar: CfgDir/am_services.jar:CfgDir /am_logging.jar

  5. Identity Server 6.0 を使用する場合は、CfgDir を指す Java システムプロパティーを設定します。次のようなコマンドを使用します。


    java -Dcom.iplanet.coreservices.configpath=CfgDir
  6. バージョン 6.1 以降を使用する場合は、CfgDir/AMConfig.properties ファイルで、次の行を追加または編集します。


    com.iplanet.services.configpath=CfgDir
    com.iplanet.security.SecureRandomFactoryImpl=com.iplanet.am.util.
    SecureRandomFactoryImpl
    com.iplanet.security.SSLSocketFactoryImpl=netscape.ldap.factory.
    JSSESocketFactory
    com.iplanet.security.encryptor=com.iplanet.services.util.
    JCEEncryption

    最初の行では configpath を設定しています。最後の 3 行ではセキュリティー設定を変更しています。

  7. CfgDir/am_*.jar ファイルを $WSHOME/WEB-INF/lib にコピーします。Identity Server 6.0 を使用する場合は、jss311.jar ファイルも $WSHOME/WEB-INF/lib ディレクトリにコピーします。

  8. Identity Manager が Windows 上で稼働している環境で Identity Server 6.0 を使用する場合は、IdServer\lib\jss\*.dllCfgDir にコピーし、CfgDir をシステムパスに追加します。


    注 –

    Identity Manager が Access Manager とは異なるシステムにインストールされている環境では、次のエラー条件を確認してください。Access Manager リソースへの接続時にエラー java.lang.ExceptionInInitializerError が返され、それに続く試行で java.lang.NoClassDefFoundError が返される場合は、設定データに誤りまたは欠落がないか確認します。

    また、java.lang.NoClassDefFoundError で示されたクラスの JAR ファイルも確認します。そのクラスが含まれている JAR ファイルのクラスパスを、アプリケーションサーバーの JAVA クラスパスに付加します。


    CfgDir「Sun Access Manager (Access Manager 7.0 より前のバージョン) のインストールと設定」で説明したすべてのデータが含まれ、すべての設定プロパティーが正しく割り当てられていることを確認します。

Policy Agent のインストールと設定

適切な Access Manager Policy Agent を、Identity Manager サーバーにインストールする必要があります。Policy Agent は次の場所から入手できます。

http://wwws.sun.com/software/download/inter_ecom.html#dirserv

Policy Agent に付属するインストール手順書に従ってください。その後、次に示す作業を実行します。

AMAgent.properties ファイルの編集

AMAgent.properties ファイルを変更して、Identity Manager を保護する必要があります。このファイルは次のディレクトリにあります。

必ず、前述したディレクトリにあるファイルを使用してください。AgentInstallDir\config ディレクトリにあるファイルは使用しないでください。

ProcedureAMAgent.properties ファイルの編集

  1. AMAgent.properties ファイル内で次の行を検索します。


    com.sun.identity.agents.config.cookie.reset.enable = false
    com.sun.identity.agents.config.cookie.reset.name[0] =
    com.sun.identity.agents.config.cookie.reset.domain[] =
    com.sun.identity.agents.config.cookie.reset.path[] =

    これらの行を次のように編集します。


    com.sun.identity.agents.config.cookie.reset.enable = true
    com.sun.identity.agents.config.cookie.reset.name[0] = AMAuthCookie
    com.sun.identity.agents.config.cookie.reset.domain[0] = .example.com
    com.sun.identity.agents.config.cookie.reset.path[0] = /
  2. 次の行を追加します。


    com.sun.identity.agents.config.cookie.reset.name[1] = iPlanetDirectoryPro
    com.sun.identity.agents.config.cookie.reset.domain[1] = .example.com
    com.sun.identity.agents.config.cookie.reset.path[1] = /
  3. 次の行を検索します。


    com.sun.identity.agents.config.profile.attribute.fetch.mode = NONE
    com.sun.identity.agents.config.profile.attribute.mapping[] =

    これらの行を次のように編集します。


    com.sun.identity.agents.config.profile.attribute.fetch.mode = HTTP_HEADER
    com.sun.identity.agents.config.profile.attribute.mapping[uid] = sois_user
  4. 変更を有効にするために、Web サーバーを再起動します。

ProcedureAccess Manager のポリシーの作成

  1. Access Manager アプリケーションで、次の規則を設定した IDMGR という名前 (または類似の名前) の新しいポリシーを作成します。

    サービスのタイプ

    リソース名

    アクション

    URL ポリシーエージェント 

    http://server:port/idm

    GET アクションと POST アクションを許可します

    URL ポリシーエージェント 

    http://server:port/idm/*

    GET アクションと POST アクションを許可します 

  2. 1 つ以上の主体を IDMGR ポリシーに割り当てます。

Identity Manager のインストールに関する注意事項

ここでは、Sun Access Manager リソースアダプタおよび Policy Agent のインストールと設定に関する注意点を説明します。

Sun Access Manager リソースアダプタ

次の手順に従って、リソースアダプタのインストールと設定を行います。

ProcedureAccess Manager リソースアダプタをインストールして設定する

  1. 適切なバージョンの『Sun JavaTM System Access Manager Developer’s Guide』に記載された手順に従って、Sun Access Manager インストールからクライアント SDK を構築します。

  2. 生成される war ファイルから AMConfig.properties ファイルと amclientsdk.jar ファイルを抽出します。

  3. 次のディレクトリに AMConfig.properties をコピーします。


    $WSHOME/WEB-INF/classes
  4. 次のディレクトリに amclientsdk.jar をコピーします。


    $WSHOME/WEB-INF/lib
  5. サーバーのクラスパスに amclientsdk.jar ファイルを追加します。

  6. Identity Manager アプリケーションサーバーを再起動します。

  7. ファイルのコピーが終了したら、Sun Access Manager リソースを Identity Manager リソースリストに追加する必要があります。「管理するリソースの設定」ページの「カスタムリソース」セクションに次の値を追加します。


    com.waveset.adapter.SunAccessManagerRealmResourceAdapter

Policy Agent

Access Manager ログインモジュールが最初に表示されるように、管理者およびユーザーのログインモジュールを変更します。


注 –

この手順を実行する前に、Access Manager リソースを設定する必要があります。


Procedure管理者とユーザーのログインモジュールを変更する

  1. Identity Manager 管理者インタフェースのメニューバーで、「セキュリティー」を選択します。

  2. 「ログイン」タブをクリックします。

  3. ページの下部にある「ログインモジュールグループの管理」ボタンをクリックします

  4. 変更するログインモジュールを選択します。たとえば、「アイデンティティーシステムのデフォルトの ID/パスワード ログインモジュールグループ」を選択します。

  5. 「ログインモジュールの割り当て」選択ボックスで、「Sun Access Manager ログインモジュール」を選択します。

  6. 「ログインモジュールの割り当て」オプションの横に新しく「選択」オプションが表示されたら、適切なリソースを選択します。

  7. 「ログインモジュールの修正」ページが表示されたら、表示されているフィールドを必要に応じて編集し、「保存」をクリックします。「ログインモジュールグループの修正」がもう一度表示されます。

  8. モジュールグループの最初のリソースとして「Sun Access Manager ログインモジュール」を指定し、「保存」をクリックします。

使用上の注意

WebLogic で Identity Manager を実行している環境で、Access Manager に対するネイティブな変更が Identity Manager に表示されない場合は、クラスパスの weblogic.jar の前に am_services.jar を追加します。

複数のプロトコルハンドラがある場合は、次のようにプロトコルハンドラを設定します。

java.protocol.handler.pkgs=com.iplanet.services.comm|sun.net.www.protocol

セキュリティーに関する注意事項

ここでは、サポートされる接続と基本的なタスクの実行に必要な承認の要件について説明します。

サポートされる接続

Identity Manager は、SSL 経由の JNDI を使用してこのアダプタと通信します。

必要な管理特権

Access Manager に接続するユーザーに、ユーザーアカウントを追加または変更するためのアクセス権を付与してください。

プロビジョニングに関する注意事項

ここでは、アダプタのプロビジョニング機能の概要を表に示します。

機能  

サポート状況  

アカウントの有効化/無効化 

あり 

アカウントの名前の変更 

なし 

パススルー認証 

はい。 

シングルサインオンには Web Proxy Agent が必要です。 

前アクションと後アクション 

なし 

データ読み込みメソッド 

  • リソースから直接インポート

  • リソースの調整

アカウント属性

次の表に、デフォルトでサポートされる Access Manager ユーザーのアカウント属性を示します。特に記載されていないかぎり、属性はすべて省略可能です。

リソースユーザー属性

リソース属性タイプ

説明

cn

String 

必須。ユーザーのフルネーム。 

dynamicSubscriptionGroups

String 

ユーザーが登録されている動的グループのリスト。 

employeeNumber

Number 

ユーザーの従業員番号。 

givenname

String 

ユーザーの名。 

iplanet-am-user-account-life

Date 

ユーザーアカウントが期限切れになる日時。この値が設定されていない場合、アカウントは期限切れになりません。 

iplanet-am-user-alias-list

String 

ユーザーに適用される可能性がある別名のリスト。 

iplanet-am-user-failure-url

String 

認証の失敗時にユーザーがリダイレクトされる URL。 

iplanet-am-user-success-url

String 

認証の成功時にユーザーがリダイレクトされる URL。 

mail

Email 

ユーザーの電子メールアドレス。 

postalAddress

String 

ユーザーの自宅住所。 

roles

String 

ユーザーに割り当てられたロールのリスト。 

sn

String 

ユーザーの姓。 

staticSubscriptionGroups

String 

ユーザーが登録されている静的グループのリスト。 

telephoneNumber

String 

ユーザーの電話番号。 

uid

String 

必須。ユーザーの一意のユーザー ID。 

userPassword

Password 

必須。ユーザーのパスワード。 

リソースオブジェクトの管理

Identity Manager は、次の Access Manager オブジェクトをサポートします。

リソースオブェクト  

サポートされる機能  

管理される属性  

ロール 

表示、更新、削除 

cniplanet-am-role-aci-descriptioniplanet-am-role-descriptioniplanet-am-role-typeaccountMembers

Static subscription group 

表示、作成、更新、削除、名前を付けて保存 

cniplanet-am-group-subscribableuniqueMember

Filtered group 

表示、作成、更新、削除、名前を付けて保存 

cnaccountMembersmembershipFilter

Dynamic subscription group 

表示、作成、更新、削除、名前を付けて保存 

cnaccountMembersiplanet-am-group-subscribable

組織 

表示、作成、削除、名前を付けて保存、検索 

o

アイデンティティーテンプレート

デフォルトのアイデンティティーテンプレートは次のとおりです。

uid=$uid$,ou=People,dc=MYDOMAIN,dc=com

デフォルトのテンプレートを有効な値に置き換えてください。

サンプルフォーム

ここでは、組み込みのサンプルフォームと、Sun Access Manager リソースアダプタで利用できるその他のサンプルフォームの一覧を示します。

組み込みのフォーム

その他の利用可能なフォーム

SunAMUserForm.xml

トラブルシューティング

Identity Manager のデバッグページを使用して、次のクラスでトレースオプションを設定します。

com.waveset.adapter.SunAccessManagerResourceAdapter