インストールおよびアップグレード > Installation and Configuration Guide > 高度な設定 > 追加のディレクトリサーバーの設定 > ユーザーおよびグループの LDAP 属性値のマッピング
  
ユーザーおよびグループの LDAP 属性値のマッピング
Windchill では、LDAP V3 準拠のスキーマに定義されている、ユーザーおよびグループの LDAP 属性のサブセットが使用されます。ディレクトリによっては、使用するユーザーエントリおよびグループエントリのディレクトリ属性が、Windchill によってデフォルトで予期されるものと厳密に一致しない場合があります。
ユーザーまたはグループのエンタープライズディレクトリを使用する場合は、ディレクトリで使用される属性を修正するか、またはユーザーおよびグループを定義する LDAP オブジェクトクラスを修正する必要が生じる場合があります。つまり、JNDI アダプタを設定する場合は、属性のマッピングプロパティを追加して、デフォルトの Windchill のユーザー属性およびグループ属性を、LDAP ディレクトリで使用される対応するユーザー属性およびグループ属性にマッピングする必要があります。
LDAP エントリフォームの「その他のプロパティ」セクションを使用して、プロパティ属性をマップできます。
入力した値は、指定した JNDI 設定プロパティに保存されます。プロパティは、再読み込みされた後、ディレクトリサービスによって使用されます。
JNDI アダプタ内のプロパティ属性をマッピングするときは、次のフォーマットを使用してユーザー、グループ、および組織の属性プロパティを指定します。
プリンシパル
プロパティフォーマット
ユーザー
<サービス名>.windchill.mapping.user.<マップ識別子>
グループ
<サービス名>.windchill.mapping.group.<マップ識別子>
組織
<サービス名>.windchill.mapping.org.<マップ識別子>
ここで
<サービス名> はアダプタに対して指定されたサービス名です (LDAP プロパティフォームの「サービス名」フィールド)。
<マップ識別子> は、マッピングする属性または値です。
次のシナリオでは、ユーザーのオブジェクトクラスを設定する方法の例を示します。
JNDI アダプタには、サービス名 EnterpriseDirectory1 を指定しました。
Windchill では、オブジェクトクラスプロパティを設定する際のマップ識別子は objectClass です。
このプロパティをマッピングする対象はユーザーなので、フォーマット windchill.mapping.user を指定します。
Windchill のデフォルトオブジェクトクラス値は "inetOrgPerson" ですが、この値を "organizationalPerson" に設定します。
このプロパティを設定するには、LDAP エントリフォームの「その他のプロパティ」セクションで、次の操作を行います。
1. 「プロパティ」フィールドに、次のように入力します。
EnterpriseDirectory1.windchill.mapping.user.objectClass
2. 「値」フィールドに、次のように入力します。
organizationalPerson
3. 「追加」をクリックします。
ユーザーおよびグループのデフォルト LDAP 属性値
次のセクションでは、Windchill で使用されるデフォルトのグループ LDAP オブジェクトクラスおよび属性と、ほかの LDAP ディレクトリにあるグループオブジェクトに使用される対応するオブジェクトクラスおよび属性のリストを示します。Microsoft Active Directory 固有の値については、セクション「ユーザーオブジェクトおよびグループオブジェクトに対する Microsoft Active Directory 属性のマッピング」を参照してください。
ユーザーオブジェクトの LDAP 属性値
LDAP ユーザーオブジェクトクラスに割り当てられる Windchill のデフォルト値は、次のとおりです。
Windchill ユーザーオブジェクトクラス
<map_ID>
説明
LDAP オブジェクトクラスのデフォルト値
objectClass
ディレクトリサービス内のユーザーを定義する LDAP オブジェクトクラス値を指定します。
inetOrgPerson
次の表に、Windchill によって認識されるユーザーオブジェクトのデフォルト LDAP 値のリストを示します。必要な場合は、<マップ識別子> を使用して、LDAP ディレクトリの対応するデフォルト属性値を変更します。
Windchill LDAP ユーザー属性
<map_ID>
説明
デフォルト値
cn
ディレクトリサービス内のユーザーのフルネーム (共通名) を保持する属性を指定します。
cn
certificateType
ディレクトリサービス内で登録済みのユーザー証明書のタイプを指定します。
X.509
mail
ディレクトリサービス内のユーザーの電子メールアドレスを保持する属性を指定します。
mail
postalAddress
ディレクトリサービス内のユーザーの住所を保持する属性を指定します。
postalAddress
preferredLanguage
ディレクトリサービス内のユーザーのユーザー指定言語を保持する属性を指定します。
preferredLanguage
sn
ディレクトリサービス内のユーザーの姓を保持する属性を指定します。
sn
o
ディレクトリサービス内のユーザーが属している組織を保持する属性を指定します。
usersOrganizationName を使用して、ユーザーの初期組織名も設定できます。詳細については、JNDI アダプタの作成と設定のセクション「その他のプロパティ」を参照してください。
o
uid
ディレクトリサービス内のユーザーのユーザー ID (通常はログイン ID として使用) を保持する属性を指定します。
uid
uniqueIdAttribute
ディレクトリサービス内のユーザーを一意に識別する属性を指定します。
uid
userCertificate
ディレクトリサービス内のユーザーのユーザー証明書を提供する属性を指定します。
userCertificate
telephoneNumber
ユーザーの電話番号を保持する属性を指定します。
telephoneNumber
mobile
ユーザーの携帯電話の番号を保持する属性を指定します。
mobile
facsimileTelephoneNumber
ユーザーのファックス番号を保持する属性を指定します。
facsimileTelephoneNumber
labledURI
ユーザーの Web サイトの URL を保持する属性を指定します。
labledURI
グループオブジェクトの LDAP 属性値
LDAP グループオブジェクトクラスに割り当てられる Windchill のデフォルト値は、次のとおりです。
Windchill グループオブジェクトクラス
<map_ID>
説明
デフォルトの LDAP オブジェクトクラス
objectClass
ディレクトリサービス内のグループを定義する LDAP オブジェクトクラス値を指定します。
groupOfUniqueNames
次の表に、Windchill によって認識されるグループオブジェクトのデフォルト LDAP 値のリストを示します。必要な場合は、<マップ識別子> を使用して、LDAP ディレクトリの対応するデフォルト属性値を変更します。
Windchill LDAP グループ属性
<map_ID>
説明
デフォルト値
cn
ディレクトリサービス内のグループ名を保持する属性を指定します。
cn
description
ディレクトリサービス内のグループに関する説明テキストを保持する属性を指定します。
description
filter
この JNDI アダプタを使用するグループの照会に使用する、すべての LDAP サーチフィルタに追加する定義式を指定します。デフォルトでは、追加される定義式はありません。例:(ou=Engineering)
既存の JNDI searchFilter プロパティを使用してフィルタを設定することもできます。
uniqueIdAttribute
ディレクトリサービス内の一意のグループ名を保持する属性を指定します。
cn
uniqueMember
ディレクトリサービス内のグループのメンバーを定義する属性を指定します。
uniqueMember
ユーザーオブジェクトおよびグループオブジェクトに対する Microsoft Active Directory 属性のマッピング
Windchill で Microsoft Active Directory のユーザーオブジェクトを使用できるようにするには、次の属性マッピングプロパティを JNDI アダプタ定義のユーザーオブジェクト用に設定する必要があります。
mapping.user.objectClass=user
mapping.user.o=company
mapping.user.uid=sAMAccountName
mapping.user.uniqueIdAttribute=sAMAccountName
* 
マッピング値は、マップ識別子にマッピングされた属性を表しています。たとえば、マップ識別子 o は属性 company にマッピングされます。
* 
uid は Web サーバーへのログイン時に使用するユーザー ID なので、一意であると見なされます。したがって、mapping.user.uniqueIdAttribute に指定した値は、mapping.user.uid に指定した値と常に同じである必要があります。
* 
ActiveDirectory 設定 (ADAM など) が異なる場合は、属性のインデックスが自動的に作成されません。インデックスが作成されない場合、パフォーマンスに影響する可能性があります。この可能性を小さくするには、mapping.user.uniqueIdAttribute にマッピングされる属性に対してインデックスが作成されるようにしてください。
次の属性マッピング値は、Microsoft Active Directory がインストールされた既成の環境に基づいています。これらの属性マッピングプロパティに割り当てる実際の値は、Microsoft Active Directory がインストールされた環境によって異なる場合があります。
<サービス名>.windchill.mapping.user.postalAddress=postalAddress
<サービス名>.windchill.mapping.group.objectClass=group
<サービス名>.windchill.mapping.user.uid=sAMAccountName
<サービス名>.windchill.mapping.user.cn=cn
<サービス名>.windchill.mapping.user.preferredLanguage=preferredLanguage
<サービス名>.windchill.mapping.group.uniqueMember=member
<サービス名>.windchill.mapping.user.mobile=mobile
<サービス名>.windchill.mapping.group.uniqueIdAttribute=sAMAccountName
<サービス名>.windchill.mapping.group.description=description
<サービス名>.windchill.mapping.user.mail=mail
<サービス名>.windchill.mapping.user.facsimileTelephoneNumber=facsimileTelephoneNumber
<サービス名>.windchill.mapping.user.sn=sn
<サービス名>.windchill.mapping.user.objectClass=user
<サービス名>.windchill.mapping.user.uniqueIdAttribute=sAMAccountName
<サービス名>.windchill.mapping.user.userCertificate=userCertificate
<サービス名>.windchill.mapping.user.o=company
<サービス名>.windchill.mapping.user.attributes=objectGUID
次のプロパティは、オプションの Microsoft Active Directory 属性マッピングです。
<サービス名>.windchill.mapping.user.preferredLanguage=localeID
<サービス名>.windchill.mapping.user.labeledURI=wWWHomePage
次の表に、Windchill の値と対比した Microsoft Active Directory ユーザーオブジェクトのデフォルト属性のリストを示します。
Windchill および Microsoft Active Directory のユーザーオブジェクトクラス
Windchill のデフォルトの LDAP ユーザーオブジェクトクラス
Microsoft Active Directory のユーザーオブジェクトクラス
inetOrgPerson
user
* 
Microsoft Active Directory のマッピング値の一部は、使用している Active Directory スキーマによって異なる場合があります。このスキーマは、使用している Windows のリリースレベルによって異なります。
Windchill および Microsoft Active Directory のユーザー属性
Windchill のデフォルトの LDAP ユーザー属性
Microsoft Active Directory のユーザー属性
cn
cn
mail
mail
postalAddress
Microsoft Active Directory ユーザーオブジェクトクラスでは既成の postalAddress がサポートされますが、Microsoft Active Directory は postalAddress を設定しません。代わりに、住所、場所、郵便番号、および国の個別の属性が使用されます。
* 
この属性に指定した値に文字 $ が含まれ、プロパティ <jndiAdapterName>.<webAppName>.config.directoryTypeADS に設定されている場合、文字 $ は改行に置き換えられます。このプロパティの設定の詳細については、JNDI アダプタのプロパティを参照してください。
Windchill で postalAddress 値を認識させるには、次のいずれかの手順を行います。1) すべてのアドレス情報をユーザーオブジェクトの postalAddress 属性に割り当てる。2) すべてのアドレス情報を統合できる別の属性を使用し、その属性を JNDI アダプタ定義の postalAddress にマッピングする。
preferredLanguage
既成の Microsoft Active Directory には、ユーザーオブジェクトの preferredLanguage 属性がありません。Microsoft Active Directory をインストールした環境で、いずれかのユーザーオブジェクトの属性が希望の言語値に設定されていて、その属性が JNDI アダプタ定義の preferredLanguage にマッピングされる場合を除いて、Windchill では preferredLanguage 値を認識しません。
sn
sn
uid
既成の Microsoft Active Directory には、ユーザーオブジェクトの uid 属性がありません。代わりに、ユーザー ID (uid) 情報を持つ 2 つの属性があります。
1 つ目は sAMAccountName で、これはユーザー ID のみです。
2 つ目は userPrincipalName で、これはユーザー ID にドメインを付加したものです (たとえば、user@myco.com)。
Windchill で uid 値を認識させるには、これらのいずれかの属性を JNDI アダプタ定義の uid にマッピングする必要があります。Web サーバーから渡されるユーザー ID のフォーマットに対応する属性を使用します。
userPassword
Microsoft Active Directory ユーザーオブジェクトクラスでは既成の userPassword がサポートされますが、Microsoft Active Directory は userPassword を設定しません。
Microsoft Active Directory がインストールされた環境で userPassword が設定されている場合 (または、JNDI アダプタ定義の userPassword にマッピングするほかの属性が設定されている場合) を除いて、Windchill ではこの値を認識しません。
userCertificate
userCertificate
o
Microsoft Active Directory スキーマは、ユーザーオブジェクトクラスのオプション属性として o をサポートします。ただし、o は通常は Active Directory によって設定されません。このため、デフォルトでは Windchill は o を企業にマップします。必要に応じて、このマッピングを変更できます。
telephoneNumber
telephoneNumber
facsimileTelephoneNumber
facsimileTelephoneNumber
mobile
mobile
labeledURI
既成の Microsoft Active Directory には、ユーザーオブジェクトの labeledURI 属性がありません。代わりに、同じ情報を持つ wWWHomePage 属性が存在します。Windchill で labeledURI 値を認識させるには、wWWHomePage を JNDI アダプタ定義の labeledURI にマッピングします。
Additional Attributes
Active Directory がデフォルトの LDAP サービスとして選択されている場合、デフォルトで追加の属性 objectGUID が事前入力されています。この属性は Active Directory では必須です。複数の追加の属性をコンマで区切って指定できます。
objectGUID を使用して、Active Directory 内のユーザーを一意に識別します。JNDI アダプタコンフィギュレーションファイルが更新されて以下のエントリが作成されます。
<service_name>.windchill.mapping.user.attributes=<commaSeparatedValues>
Microsoft Active Directory のグループオブジェクトの LDAP 属性
Windchill のデフォルトの LDAP グループオブジェクトクラス
Microsoft Active Directory のグループオブジェクトクラス
groupofUniqueNames
group
Windchill および Microsoft Active Directory のグループ属性
Windchill のデフォルトの LDAP グループ属性
Microsoft Active Directory のグループ属性
cn
cn
description
description
uniqueMember
既成の Microsoft Active Directory には、グループオブジェクトの uniqueMember 属性がありません。代わりに、member 属性が存在します。Windchill によって Microsoft Active Directory グループメンバーを参照できるようにするには、member 属性を JNDI アダプタ定義の uniqueMember にマッピングします。
Windchill で Microsoft Active Directory のグループオブジェクトおよびグループメンバーを使用できるようにするには、次の属性マッピングプロパティを JNDI アダプタ定義のグループオブジェクト用に設定する必要があります。
mapping.group.cn=cn
mapping.group.objectClass=group
mapping.group.uniqueMember=member