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

アダプタの詳細

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

ここでは、Identity Manager で使用する Domino リソースの設定手順を説明します。次のような手順があります。

一般的な設定手順

Domino アダプタ Domino リソースアダプタを設定するには、次の手順を使用します。

ProcedureDomino リソースアダプタを設定する

  1. Domino で Identity Manager 管理者を作成します。ユーザーの管理に必要とされるすべての組織へのアクセス権を持つ認証者 ID を使用します。

  2. サーバーのアドレス帳 (names.nsf) のアクセス制御リスト (ACL) に、ユーザーを追加します。

    1. ユーザーには、編集者のアクセス権を付与します。

    2. ユーザーに次のロールを割り当てます。

      • GroupModifier

        • UserCreator

          • UserModifier

  3. 認証ログデータベース (certlog.nsf) の ACL に、投稿者のアクセス権を付与したユーザーを追加します。

  4. 管理要求 (admin4.nsf) の ACL に、投稿者のアクセス権を付与したユーザーを追加します。

  5. 新しく作成されたユーザーをサーバーのセキュリティーに追加します。

    1. 「セキュリティー」パネルを開いて、サーバー設定を編集します。

    2. Domino サーバーへのアクセスが制限されている場合、Identity Manager のプロキシアカウントにサーバーへのアクセス権があるかどうかを確認します。確認を行うには、アカウント名か、プロキシアカウントの属しているグループを、「アクセスサーバー」フィールドに指定します。

    3. Domino エージェントを呼び出す前アクションと後アクションが存在する場合、呼び出されるエージェントの設定方法によって、「制限されていない LotusScript/Java エージェントを実行」または「制限されている LotusScript/Java エージェントを実行」のいずれかのフィールドに、ユーザーの追加が必要となる場合もあります。

Domino をサポートするようにゲートウェイをインストールする

ゲートウェイを Dimino に接続するには、あらかじめインストールされた Notes クライアントを、ゲートウェイマシン上に用意する必要があります。

Domino が正しく動作するように、Windows レジストリの HKEY_LOCAL_MACHINE\SOFTWARE\Waveset\Lighthouse\Gateway に次の文字列値を追加します。


注 –

Notes クライアントがネットワーク対応のプロファイルとともに実行中であることを確認します。ini ファイルのコピー後にネットワーク接続を変更する場合、再度コピーを行うか、次のようなコマンド行によってクライアントを実行します。

C:\Lotus\Notes\notes.exe=PathToIniFile

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

このリソースでは、追加のインストール手順は必要ありません。

使用上の注意

ここでは、Domino リソースアダプタの使用に関する情報を示します。 次のトピックで構成されています。

Identity Manager を使用して Domino グループを作成するときに、グループの別名を使用できます。グループの別名は、「Group1;alias1;alias2」という構文で表します。リストにグループ名が表示されるときには、基本名のみが表示されます。

再認証処理

再認証処理は、recertify という名前の Boolean ユーザー属性を使用して実行されます。更新操作中に属性がチェックされ、有効な場合は、ユーザー ID が再認証されます。

再認証処理は adminp 処理によって行われます。つまり、adminp 要求を生成すると、それ以降のいずれかの時点で、その ID の再認証が行われます。再認証のタイミングは、Dimino サーバーの設定に基づいて決まります。

パスワードの変更

Lotus ユーザーには、2 つの異なるパスワードがあります。

アダプタは、これらのパスワードの一方または両方を管理するように構成できます。

HttpPasswords のみの管理

ID ファイルパスワードではなく HttpPasswords を管理するには、Domino Gateway アダプタを次のように構成します。

HttpPasswords と ID ファイルパスワードの管理

ユーザーインタフェースから ID ファイルパスワードを管理したり、管理者インタフェースやユーザーインタフェースから HttpPasswords を管理したりするには、Domino Gateway アダプタを次のように構成します。

ID ファイルパスワードのみの管理

HttpPasswords は管理せずに、ユーザーインタフェースから ID ファイルパスワードを管理するには、Domino Gateway アダプタを次のように構成します。

有効化と無効化

Domino 6.0 以降では、ユーザーを無効にする方法として、CheckPassword アカウント属性を 2 に設定する方法が使用されています。ただし、ユーザーを DNY GROUP に追加する 5.x の方法も使用できます。

Domino の初期のバージョンでは、ユーザーごとのネイティブな無効化フラグが実装されていないため、無効化された各ユーザーは DENY GROUP 内に配置されます。有効化すると、これらは定義済みグループのいずれかのメンバーとして削除されます。DENY GROUP にはメンバーの最大数のしきい値が設定されているので、グループをリソースに対するアカウント属性として指定してください。このためには、追加の DenyGroups アカウント属性をリソースに渡す必要があります。DenyGroups は、無効化、有効化、またはプロビジョニング解除の実行時に設定できますが、取得するには追加のコーディングが必要です。

プロビジョニング解除または無効化の実行中に、ユーザーを追加する先の DenyGroups のリストを送信します。有効化の実行中には、ユーザーが削除される DenyGroups のリストを送信します。

次のコードによって、使用可能な DenyGroups をリソースから取得できます。

<invoke name=’listResourceObjects’ class=’com.waveset.ui.FormUtil’>
    <ref>:display.session</ref>
    <s>DenyLists</s>
    <s>YourResourceName</s>
    <null/>
    <s>false</s>
 </invoke>

次のコードによって、現在割り当てられている DenyGroups を、無効化、有効化、またはプロビジョニング解除フォームに取得できます。

<invoke name=’getList’>
    <invoke name=’getView’>
       <ref>display.session</ref>
       <concat>
          <s>UserViewer:</s>
          <ref>resourceAccounts.id</ref>
       </concat>
       <map>
          <s>TargetResources</s>
          <list>
             <s>YourResourceName</s>
          </list>
       </map>
    </invoke>
    <s>accounts[YourResourceName].DenyGroups</s>
 </invoke>

無効化、有効化、またはプロビジョニング解除フォームでは、DenyGroups 属性を次のようにアドレス指定します。

resourceAccounts.currentResourceAccounts [YourResourceName].attributes.DenyGroups

次の例では、複数選択ボックスの左側にある使用可能な DenyGroups を一覧表示する無効化フォームのフィールドを定義しています。

<Field name=’resourceAccounts.currentResourceAccounts [
  YourResourceName].attributes.DenyGroups’>
    <Display class=’MultiSelect’>
       <Property name=’title’ value=’Deny Groups’/>
       <Property name=’required’>
          <Boolean>false</Boolean>
       </Property>
       <Property name=’allowedValues’>
          <invoke name=’listResourceObjects’ class=’com.waveset.ui.FormUtil’>
             <ref>:display.session</ref>
             <s>DenyLists</s>
             <s>YourResourceName</s>
             <null/>
             <s>false</s>
          </invoke>
       </Property>
       <Property name=’availableTitle’ value=’Available Deny Groups’/>
       <Property name=’selectedTitle’ value=’Assigned Deny Groups’/>
    </Display>
 </Field>

次の例では、非表示フィールドの取得規則内の割り当てられた DenyGroups を一覧表示する有効化フォームのフィールドを定義しています。

<Field name=’resourceAccounts.currentResourceAccounts 
  [YourResourceName].attributes.DenyGroups’>
   <Derivation>
       <invoke name=’getList’>
          <invoke name=’getView’>
             <ref>display.session</ref>
             <concat>
                <s>UserViewer:</s>
                <ref>resourceAccounts.id</ref>
             </concat>
             <map>
                <s>TargetResources</s>
                <list>
                   <s>YourResourceName</s>
                </list>
             </map>
          </invoke>
          <s>accounts[YourResourceName].DenyGroups</s>
       </invoke>
    </Derivation>
 </Field>

ID ファイル

ゲートウェイマシンでは、新しく登録されたユーザーに対して新規 ID が生成されます。これらは、ゲートウェイの処理やサービスにアクセス可能な UNC パス上に配置されます。したがって、\\machine\ids\myidfile.id と指定すると、ネットワーク共有に配置されます。

ユーザーの作成時に指定される共有部分にアクセスするためのサービスとしてゲートウェイを設定した場合、このゲートウェイに対してユーザーとして実行する必要がある可能性があります。共有部分にアクセスできるように SYSTEM を割り当てることもできますが、これはゲートウェイネットワーク環境がどのように見えるかに依存します。

「アドレス帳に ID を保存」リソース属性を TRUE または FALSE に設定することで、ID ファイルをアドレス帳に格納するかどうかを指定することもできます。

Rename/Move

move/rename アクションは、adminp プロセスでも実行されます。move は、certifierOrgHierarchy 属性を変更して元の certifierId ファイルとその id ファイルのパスワードを入力することによって、名前変更フォームから開始できます。move 要求によって要求データベース内に「名前移動要求」が作成されます。また、move 要求は、ユーザーの新しい組織を代表する新しい認証者が完了する必要があります。move は、ユーザーの姓または名を変更することで開始できます。


注 –

rename と move を同時に実行することはできません。 adminp 処理で rename と move の同時実行ができないのは、要求が、どちらの場合にも変更される標準的な名前を参照するためです。


リソース名

ゲートウェイでは、すべての Domino リソースに一意の名前を付ける必要があります。複数の Identity Manager の配備があり、それらが同じゲートウェイを指している場合は、それらの配備に存在するすべての Domino リソースに一意のリソース名を付ける必要があります。

ローミングのサポート

リソースが Domino 7.0 以降のサーバーの場合、Identity Manager でローミングユーザーを作成できます。Identity Manager は、ユーザーのローミング状態を変更できません。そのため、RoamingUser アカウント属性を既存のユーザーに設定することはできません。

ゲートウェイタイムアウト

Domino アダプタでは、RA_HANGTIMEOUT リソース属性を使用してタイムアウト値を秒単位で指定できます。この属性は、ゲートウェイに対する要求がタイムアウトしてハングしているとみなされるまでの時間を制御します。

次のように、この属性を Resource オブジェクトに手動で追加する必要があります。

<ResourceAttribute name=’Hang Timeout’ displayName=’com.waveset.adapter.RAMessages:
  RESATTR_HANGTIMEOUT’ type=’int’ description=’com.waveset.adapter.RAMessages:
  RESATTR_HANGTIMEOUT_HELP’ value=’NewValue’>
 </ResourceAttribute>

この属性のデフォルト値は 0 です。これは Identity Manager がハングした接続を確認しないことを表します。

追加情報

ここでは、このアダプタに関して、次のようないくつかの追加情報を提供します。

ListAllObjects

Domino で指定したすべてのオブジェクトを一覧表示できます。listAllObjects 呼び出しへの「タイプ」として表示名に渡します。

フォームの更新

これらの操作の一部には追加の属性が必要であるため、それらの属性を含むように、デフォルトのフォームを更新してください。

さまざまなビューに渡される属性は、リソース定義によってあらかじめ定義されています。

searchFilter

次のサンプル UserForm では、getResourceObjects メソッドの searchFilter オプションを Domino 用に実装する方法を示します。このフォームでは、リソース MyResource 上で姓が Smith であるすべてのユーザーを検索しています。ユーザーはアカウント ID 順ではなく、com.waveset.object.GenericObject%4014a614a6 などの内部識別子の順に表示されます。

<DOCTYPE Configuration PUBLIC 'waveset.dtd' 'waveset.dtd'>
<Configuration name='Domino searchFilter Form' wstype=UserForm'"
 <Extension>
  <Form>
   <Display class=’EditForm’/>
   <Field name=’rcwfield’>
      <Display class=’MultiSelect’>
         <Property name=’title’ value=’My Lister’/>
         <Property name=’availableTitle’ value=’Listing available items’/>
         <Property name=’selectedTitle’ value=’Selected Item(s)’/>
         <Property name=’allowedValues’>
         <block trace=’true’>
               <invoke name=’getResourceObjects’ class=’com.waveset.ui.FormUtil’>
                  <ref>:display.session</ref>
                  <s>People</s>
                  <s>MyResource</s>
                  <Map>
                     <MapEntry key=’searchAttrsToGet’>
                        <List>
                           <String>LastName</String>
                           <String>ShortName</String>
                           <String>MailFile</String>
                        </List>
                     </MapEntry>
                     <MapEntry key=’searchFilter’ value=’@IsAvailable(LastName) &amp; 
@Contains(@LowerCase(LastName);"smith")’/>
                  </Map>
               </invoke>
         </block>
         </Property>
        </Display>
        <Disable>
         <i>0</i>
        </Disable>
     </Field>
  </Form>
 </Extension>
</Configuration>

その他のフォームに関する問題点

ビューに渡されるように設定する属性

アクション

前アクションと後アクションで、次の変数を使用できます。

WSUSER_UNID 変数は、Lotus Notes の汎用 ID を表します。この変数は、アカウントが作成されるまで参照することができません。

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

ここでは、サポートされる接続と特権の要件について説明します。

サポートされる接続

Identity Manager は、Sun Identity Manager Gateway を使用して Domino と通信します。

必要な管理特権

なし

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

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

機能  

サポート状況  

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

あり 

アカウントの名前の変更 

あり 

パススルー認証 

なし 

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

あり 

データ読み込みメソッド 

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

  • 調整

  • Active Sync

アカウント属性

次の表に、Domino アカウント属性の情報を示します。特に記載されていないかぎり、デフォルトのデータ型は文字列です。

リソースユーザー属性  

説明  

alternateOrgUnit

代替言語での、ユーザーの組織単位。 

AltFullName

ユーザーの母国語での、ユーザーのフルネーム。 

AltFullNameLanguage

代替のフルネームに使用される言語。 

Assistant

補佐の名前。 

CalendarDomain

カレンダのドメイン名。 

CellPhoneNumber

ユーザーの携帯電話番号。 

certifierIDFile

ゲートウェイマシンを基準とした認証者 ID ファイルへのパス (リソースの値をオーバーライドする) 

CertifierOrgHierarchy

/US1 など、認証者の組織階層のパス (リソースの値をオーバーライドする)。 

CheckPassword

整数値。 

0 = チェックしません 

1 = チェックします 

2 = ユーザーを無効にします 

Children

従業員の子の名前 (複数可)。 

City

ユーザーの自宅住所の市。 

Comment

ユーザーに関するコメント。 

CompanyName

ユーザーが勤務する会社。 

Country

ユーザーの自宅住所の国。 

credentials

認証者 ID ファイルのパスワード (リソースの値をオーバーライドする) 

dbQuotaSizeLimit

ユーザーのメールデータベースの最大サイズを指定します。1000 未満の値を指定した場合、最大サイズの単位はメガバイト (M バイト) になります。1000 以上の値を指定した場合、最大サイズはバイト単位で表されます。1001 ~ 1023 の値は、1024 バイトに切り上げられます。 

この属性を設定するには、プロキシ管理者がサーバードキュメント内で管理者として一覧表示される必要があります。 

dbQuotaWarningThreshold

データベースのサイズについての警告が生成される基準となる、ユーザーのメールデータベースのサイズを指定します。1000 未満の値を指定した場合、しきい値の単位はメガバイト (M バイト) になります。1000 以上の値を指定した場合、しきい値はバイト単位で表されます。1001 ~ 1023 の値は、1024 バイトに切り上げられます。 

この属性を設定するには、プロキシ管理者がサーバードキュメント内で管理者として一覧表示される必要があります。 

defaultPasswordExp

新しい証明書が発行されるまでの日数 (作成操作、再認証操作)。

deleteMailFileOption

リソースの属性を次のようにオーバーライドします。 

  • 0: メールファイルを削除しません。

  • 1: 人物レコードに指定されたメールファイルのみを削除します。

  • 2: 人物レコードに指定されたメールファイルとすべての複製を削除します。

    注意: mailfile を削除するように設定した場合、adminp 要求はキューに入れられます。削除する前に、ネイティブで承認する必要があります。

DenyGroups

リソースへのアクセスを拒否されるユーザーのリスト。 

Department

ユーザーの部署名または部署番号。 

DisplayName

ユーザーの表示名。 

EmployeeID

ユーザーの一意の従業員 ID。 

firstname

ユーザーの名。 

HomeFAXPhoneNumber

ユーザーの自宅の FAX 番号と電話番号。 

HTTPPassword

Web ブラウザまたはその他の HTTP クライアントから Notes サーバーにアクセスするときに使用するパスワード。 

idFile

ゲートウェイマシンを基準とした ID ファイルへの完全修飾パス。 

gateway machine

 

InternetAddress

 

JobTitle

ユーザーの役職。 

lastModified

ユーザーを最後に変更した日時の文字列表現。 

lastname

ユーザーの姓。 

Location

オフィスの場所またはメールの到着場所 

MailAddress

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

MailDomain

ユーザーのメールサーバーのドメイン名。 

MailFile

メールファイルの名前 (MAIL\JSMITH など) 

mailOwnerAccess

メールボックスの所有者のアクセス制御レベルを示します。指定できる値は、0 (マネージャー)、1 (設計者)、および 2 (エディター) です。 

この属性は、デフォルトではスキーママップ内に存在しません。ユーザーの作成時のみに適用できる属性です。 

MailServer

ユーザーのメールサーバー名。 

MailTemplate

メールテンプレートの名前。作成時のみ有効。 

Manager

ユーザーのマネージャー。 

MiddleInitial

最後にピリオドの付いたミドルネームのイニシャル。 

NetUserName

ユーザーのネットワークアカウント名。 

NotesGroups

 

objectGUID

ユーザーの NotesID。 

OfficeCity

ユーザーの勤務先住所の市。 

OfficeCountry

ユーザーの勤務先住所の国。 

OfficeFAXPhoneNumber

ユーザーの勤務先住所の FAX 番号。 

OfficeNumber

ユーザーの勤務先住所の局番号。 

OfficePhoneNumber

ユーザーの勤務先住所の電話番号。 

OfficeState

ユーザーの勤務先住所の州または都道府県。 

OfficeStreetAddress

ユーザーの勤務先住所の街路住所。 

OfficeZIP

ユーザーの勤務先住所の郵便番号。 

orgUnit

 

password

ユーザーのパスワード。 

PasswordChangeInterval

整数値。ユーザーが新しいパスワードを設定する必要が生じるまでの日数。 

PasswordGracePeriod

パスワードの期限切れ後にユーザーがロックアウトされるまでの日数。 

PhoneNumber

ユーザーの自宅電話番号。 

PhoneNumber_6

 

Policy

ユーザーの明示的ポリシー。「明示的ポリシー名」リソースパラメータの値によって、この属性が上書きされます。このパラメータは、Domino 7.0 以降のみに適用されます。

Profiles

ユーザーに割り当てられたプロファイル。この値によって、リソースパラメータとして指定されたプロファイルが上書きされます。この属性は、Domino 7.0 以上のみに適用されます。 

Recertify

ブール型。ユーザーを再認証することを示すフラグ。 

RoamCleanPer

RoamCleanSetting が 1 の場合は、クリーニング間隔の日数。 

RoamCleanSetting

Domino がユーザーのローミングファイルをクリーンアップするタイミングを指定します。有効な値は次のとおりです。 

0 (削除しない) 

1 (定期的) 

2 (Domino サーバーのシャットダウン時) 

3 ( ユーザーに確認) 

RoamingUser

1 に設定すると、ユーザーがローミングユーザーであることを指定します。 

RoamRplSrvrs

ユーザーのローミングファイルがレプリケートされるサーバーの一覧。 

RoamSrvr

ユーザーのローミングファイルが置かれるサーバーを指定します。 

RoamSubdir

ユーザーのローミングファイルが含まれるディレクトリを指定します。 

SametimeServer

ユーザーの Sametime サーバーの階層名。 

ShortName

一般に外国のメールシステムによって使用される短いユーザー名。 

Spouse

ユーザーの配偶者の名前。 

State

ユーザーの自宅住所中の州または都道府県。 

StreetAddress

ユーザーの自宅住所。 

Suffix

ユーザーの世代を表す修飾子。 

Title

ユーザーの役職。 

WebSite

ユーザーの Web サイト。 

WS_USER_PASSWORD

ユーザーのパスワード変更要求時に、ユーザーの現在のパスワードを送信するために使用する属性。 

x400Address

 

Zip

ユーザーの自宅住所の郵便番号。 

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

Identity Manager は、次のネイティブ Domino オブジェクトを管理します。

表 12–1 ネイティブ Domino オブジェクト

リソースオブェクト 

サポートされる機能 

管理される属性 

Group 

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

ConflictAction、Group_Main、AvailableForDirSync、DeleteNTUserAccount、DocumentAccess、Form、GroupName、GroupTitle、GroupType、InternetAddress、ListCategory、ListDescription、ListName、ListOwner、LocalAdmin、MailDomain、MailVerify、Owner、Type、Members、MemberPeople、MemberGroups 

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

Domino では、各ユーザーのアイデンティティーは userid ファイルに格納されます。ただし、それと同じユーザー名が FullName 属性内のユーザーレコードに格納されます。この属性は複数値を取り、リスト内の最初の属性は一意です。リスト内の最初の名前は、標準的な形式で格納され、次のようになります。

CN=Joe T Smith/O=MyCompany

この名前を使用して、名前とアドレス帳のレコードにアクセスできます。Identity Manager は、この文字列を適切なフォームの resourceInfo に、次のように格納します。

Joe T Smith/MyCompany

Domino には、API レベルで名前を変換する組み込み機能があります。Identity Manager は、NOTEIDGUID 属性として格納し、可能な場合は、このグローバル識別子を使用して Domino のユーザーを検索します。

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

$firstname$ $MiddleInitial$ $lastname$$CertifierOrgHierarchy$

環境によっては、ミドルネームのイニシャルが含まれない場合もあります。

サンプルフォーム

DominoActiveSyncForm.xml

Dominogroupcreate.xml

Dominogroupupdate.xml

トラブルシューティング

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

com.waveset.adapter.DominoResourceAdapter

ゲートウェイへの接続の問題を診断するために、次のメソッドでトレースを有効にすることもできます。