アイデンティティおよびアカウントの属性をカスタマイズおよび変換するためのデータ・ルール・リファレンス
アイデンティティおよびアカウント属性をカスタマイズまたは変換するルールを追加できます。これらのルールは、JavaScriptで記述されます。
オブジェクト
|
オブジェクト名 |
目的 |
例 |
|---|---|---|
|
requestAttributes |
プロビジョニング要求属性オブジェクト。これらの属性は、プロビジョニングがポリシー・ベース、アクセス・バンドル・リクエスト、ロール・ベースまたは直接メソッド経由の場合に使用できます。 |
|
|
ユーザー |
ユーザーオブジェクト。任意のメンバーにアクセスするには、これに必要なgetterを使用します。 |
|
|
アプリケーション |
リソース・オブジェクト任意のメンバーにアクセスするには、これに必要なgetterを使用します。 |
|
|
オブジェクト名 |
目的 |
例 |
|---|---|---|
|
ユーザー |
ユーザーオブジェクト。アイデンティティのソースのすべてのメンバーにアクセスするには、これに必要なgetterを使用します。 |
user.getName().getGivenName(), user.getUserName()
|
|
アカウント |
アカウント・オブジェクト。「権限の管理」のメンバーにアクセスするには、これに必要なgetterを使用します。 |
account.getDisplayName()
|
アイデンティティおよびアカウント属性を変換またはカスタマイズするためのベスト・プラクティス
次に、検討するベスト・プラクティスと推奨事項をいくつか示します。
- 認可ソースまたは管理対象システムから取り込まれたインバウンド・データのアイデンティティおよびアカウント属性を変換またはカスタマイズできます。ただし、変換できるのはアウトバウンド・データのアイデンティティ(ユーザー)属性のみです。
- 抽出された値を使用する前に、必ずNULLチェック・イン・ルールを実行してください。そうしないと、NULL参照で取込みサイクルが失敗する可能性があります。これは、認可ソースのuser属性オブジェクトとインバウンド変換の管理対象システムのaccount属性オブジェクトの両方に対して行う必要があります。
- 配列オブジェクトのデータ型を持つ属性(つまり、Eメール、写真、住所などの値リストを返す属性)に値を直接変換または割り当てることはできませんが、これらを使用して、他のユーザーまたはアカウント属性を変更または操作できます。たとえば、事業所がNULLの場合、国値を属性事業所のデフォルト値として設定するには、次を使用します。
user.getLocation() !=null ? user.getLocation() : user.getAddresses()[0].getCountry()
アウトバウンド変換の認可ソース・アイデンティティ・オブジェクト属性
アウトバウンド・データは、オーケストレート済システムで使用可能またはプロビジョニングされたデータにデータ変換ルールを適用することで、変更または変更できます。アウトバウンド・データ変換で使用できるアイデンティティ(ユーザー)属性のリストを次に示します。
アウトバウンド・データのアイデンティティ属性をフェッチする構文
これらの詳細は、次の構文を使用してフェッチできます。
get<FieldName>()
ユーザーの指定された名前を取得します
user.getName().getGivenName()
| 属性 | サブ 属性 | データ型 | 構文 |
|---|---|---|---|
|
名前 |
参照 |
user.getName()
|
|
|
フォーマット済 |
文字列 |
user.getName().getFormatted()
|
|
|
familyName |
文字列 |
user.getName().getFamilyName()
|
|
|
givenName |
文字列 |
user.getName().getGivenName()
|
|
|
middleName |
文字列 |
user.getName().getMiddleName()
|
|
|
honorificPrefix |
文字列 |
user.getName().getHonorificPrefix()
|
|
|
honorificSuffix |
文字列 |
user.getName().getHonorificSuffix()
|
|
|
userName |
文字列 |
user.getUserName()
|
|
|
displayName |
文字列 |
user.getDisplayName()
|
|
|
説明 |
文字列 |
user.getDescription()
|
|
|
primaryEmail |
文字列 |
user.getPrimaryEmail()
|
|
|
userType |
文字列 |
user.getUserType()
|
|
|
タイトル |
文字列 |
user.getTitle()
|
|
|
employeeNumber |
文字列 |
user.getEmployeeNumber()
|
|
|
organization |
参照 |
user.getOrganization()
|
|
|
値 |
文字列 |
user.getOrganization().getValue()
|
|
|
参照 |
文字列 |
user.getOrganization().getRef()
|
|
|
displayName |
文字列 |
user.getOrganization().getDisplayName()
|
|
|
resourceType |
文字列 |
user.getOrganization().getResourceType()
|
|
|
部門 |
文字列 |
user.getDepartment()
|
|
|
マネージャ |
参照 |
user.getManager()
|
|
|
値 |
文字列 |
user.getManager().getValue()
|
|
|
参照 |
文字列 |
user.getManager().getRef()
|
|
|
displayName |
文字列 |
user.getManager().getDisplayName()
|
|
|
resourceType |
文字列 |
user.getManager().getResourceType()
|
|
|
ステータス |
文字列 |
user.getStatus()
|
|
|
jobCode |
文字列 |
user.getJobCode()
|
|
|
国家 |
文字列 |
user.getState()
|
|
|
リスク |
文字列 |
user.getRisk()
|
|
|
場所 |
文字列 |
user.getLocation()
|
|
|
電子メール |
Eメールのリスト |
|
|
|
pendingVerificationData |
文字列 |
email.getPendingVerificationData()
|
|
|
プライマリ |
ブール値 |
email.getPrimary()
|
|
|
セカンダリ |
ブール値 |
email.getSecondary()
|
|
|
タイプ |
文字列 |
email.getType()
|
|
|
値 |
文字列 |
email.getValue()
|
|
|
検証済 |
ブール値 |
email.getVerified()
|
|
|
アドレス |
住所リスト |
|
|
|
国 |
文字列 |
address.getCountry()
|
|
|
フォーマット済 |
文字列 |
address.getFormatted()
|
|
|
ローカリティ |
文字列 |
address.getLocality()
|
|
|
postalCode |
文字列 |
address.getPostalCode()
|
|
|
プライマリ |
ブール値 |
address.isPrimary()
|
|
|
地域 |
文字列 |
address.getRegion()
|
|
|
streetAddress |
文字列 |
address.getStreetAddress()
|
|
|
タイプ |
文字列 |
address.getType()
|
|
|
phoneNumbers |
PhoneNumberのリスト |
|
|
|
表示 |
文字列 |
phoneNumber.getDisplay()
|
|
|
プライマリ |
ブール値 |
phoneNumber.isPrimary()
|
|
|
タイプ |
文字列 |
phoneNumber.getType()
|
|
|
値 |
文字列 |
phoneNumber.getValue()
|
|
|
ブール値 |
phoneNumber.isVerified()
|
インバウンド変換およびアイデンティティ属性のカスタマイズの認可ソース・アイデンティティ・オブジェクト属性
データ取込みフェーズ中にデータ変換ルールをオーケストレート済システムに適用することで、受信データを変更または変更できます。アイデンティティ属性を変換することで、同じ属性セットを使用して、Oracle Access Governanceで構築されたコンポジット・アイデンティティ・プロファイルをカスタマイズできます。
インバウンド・データのアイデンティティ属性をフェッチする構文
属性の詳細は、次の構文を使用してフェッチできます。
get<FieldName>()
ユーザーの指定された名前を取得します
user.getName().getGivenName()
| 属性 | サブ 属性 | データ型 | 構文 |
|---|---|---|---|
|
fullName (OIG/ICFの場合) |
参照 |
user.getFullName()
|
|
|
フォーマット済 |
文字列 |
user.getFullName().getFormatted()
|
|
|
familyName |
文字列 |
user.getFullName().getFamilyName()
|
|
|
givenName |
文字列 |
user.getFullName().getGivenName()
|
|
|
middleName |
文字列 |
user.getFullName().getMiddleName()
|
|
|
honorificPrefix |
文字列 |
user.getFullName().getHonorificPrefix()
|
|
|
honorificSuffix |
文字列 |
user.getFullName().getHonorificSuffix()
|
|
|
名前(OCIの場合) |
参照 |
user.getName()
|
|
|
フォーマット済 |
文字列 |
user.getName().getFormatted()
|
|
|
familyName |
文字列 |
user.getName().getFamilyName()
|
|
|
givenName |
文字列 |
user.getName().getGivenName()
|
|
|
middleName |
文字列 |
user.getName().getMiddleName()
|
|
|
honorificPrefix |
文字列 |
user.getName().getHonorificPrefix()
|
|
|
honorificSuffix |
文字列 |
user.getName().getHonorificSuffix()
|
|
|
userName |
文字列 |
user.getUserName()
|
|
|
displayName |
文字列 |
user.getDisplayName()
|
|
|
説明 |
文字列 |
user.getDescription()
|
|
|
primaryEmail |
文字列 |
user.getPrimaryEmail()
|
|
|
userType |
文字列 |
user.getUserType()
|
|
|
タイトル |
文字列 |
user.getTitle()
|
|
|
employeeNumber |
文字列 |
user.getEmployeeNumber()
|
|
|
organization |
参照 |
user.getOrganization()
|
|
|
値 |
文字列 |
user.getOrganization().getValue()
|
|
|
参照 |
文字列 |
user.getOrganization().getRef()
|
|
|
displayName |
文字列 |
user.getOrganization().getDisplayName()
|
|
|
resourceType |
文字列 |
user.getOrganization().getResourceType()
|
|
|
部門 |
文字列 |
user.getDepartment()
|
|
|
マネージャ |
参照 |
user.getManager()
|
|
|
値 |
文字列 |
user.getManager().getValue()
|
|
|
参照 |
文字列 |
user.getManager().getRef()
|
|
|
displayName |
文字列 |
user.getManager().getDisplayName()
|
|
|
resourceType |
文字列 |
user.getManager().getResourceType()
|
|
|
ステータス |
文字列 |
user.getStatus()
|
|
|
jobCode |
文字列 |
user.getJobCode()
|
|
|
国家 |
文字列 |
user.getState()
|
|
|
リスク |
文字列 |
user.getRisk()
|
|
|
場所 |
文字列 |
user.getLocation()
|
|
|
compartmentId |
文字列 |
user.getCompartmentId()
|
|
|
domainId |
文字列 |
user.getDomainId()
|
|
|
domainOCID |
文字列 |
user.getDomainOCID()
|
|
|
地域 |
文字列 |
user.getRegion()
|
|
|
電子メール |
Eメールのリスト |
emails = user.getEmails()
|
|
|
pendingVerificationData |
文字列 |
user.getEmails()[0].getPendingVerificationData()
|
|
|
プライマリ |
ブール値 |
user.getEmails()[0].getPrimary()
|
|
|
セカンダリ |
ブール値 |
user.getEmails()[0].getSecondary()
|
|
|
タイプ |
文字列 |
user.getEmails()[0].getType()
|
|
|
値 |
文字列 |
user.getEmails()[0].getValue()
|
|
|
検証済 |
ブール値 |
user.getEmails()[0].getVerified()
|
|
|
アドレス |
住所リスト |
|
|
|
国 |
文字列 |
user.getAddresses()[0].getCountry()
|
|
|
フォーマット済 |
文字列 |
user.getAddresses()[0].getFormatted()
|
|
|
ローカリティ |
文字列 |
user.getAddresses()[0].getLocality()
|
|
|
postalCode |
文字列 |
user.getAddresses()[0].getPostalCode()
|
|
|
プライマリ |
ブール値 |
user.getAddresses()[0].isPrimary()
|
|
|
地域 |
文字列 |
user.getAddresses()[0].getRegion()
|
|
|
streetAddress |
文字列 |
user.getAddresses()[0].getStreetAddress()
|
|
|
タイプ |
文字列 |
user.getAddresses()[0].getType()
|
|
|
phoneNumbers |
PhoneNumberのリスト |
|
|
|
表示 |
文字列 |
user.getPhoneNumbers()[0].getDisplay()
|
|
|
プライマリ |
ブール値 |
user.getPhoneNumbers()[0].isPrimary()
|
|
|
タイプ |
文字列 |
user.getPhoneNumbers()[0].getType()
|
|
|
値 |
文字列 |
user.getPhoneNumbers()[0].getValue()
|
|
|
ブール値 |
user.getPhoneNumbers()[0].isVerified()
|
||
|
写真 |
写真のリスト |
|
|
|
表示 |
文字列 |
user.getPhotos()[0].getDisplay()
|
|
|
プライマリ |
ブール値 |
user.getPhotos()[0].isPrimary()
|
|
|
タイプ |
文字列 |
user.getPhotos()[0].getType()
|
|
|
値 |
文字列 |
user.getPhotos()[0].getValue()
|
|
|
ims |
imsのリスト |
|
|
|
表示 |
文字列 |
user.getIms()[0].getDisplay()
|
|
|
プライマリ |
ブール値 |
user.getIms()[0].isPrimary()
|
|
|
タイプ |
文字列 |
user.getIms()[0].getType()
|
|
|
値 |
文字列 |
user.getIms()[0].getValue()
|
インバウンド変換の管理対象システム・アカウント・オブジェクト属性
データ取込みフェーズ中にデータ変換ルールをオーケストレート済システムに適用することで、受信アカウント属性データを変更または変更できます。
インバウンド・データ変換の勘定科目属性をフェッチする構文
属性の詳細は、次の構文を使用してフェッチできます。
get<FieldName>()
ユーザーの指定された名前を取得します
account.getName().getGivenName()
| 属性 | サブ 属性 | データ型 | 構文 |
|---|---|---|---|
|
fullName |
参照 |
account.getFullName()
|
|
|
フォーマット済 |
文字列 |
account.getFullName().getFormatted()
|
|
|
familyName |
文字列 |
account.getFullName().getFamilyName()
|
|
|
givenName |
文字列 |
account.getFullName().getGivenName()
|
|
|
middleName |
文字列 |
account.getFullName().getMiddleName()
|
|
|
honorificPrefix |
文字列 |
account.getFullName().getHonorificPrefix()
|
|
|
honorificSuffix |
文字列 |
account.getFullName().getHonorificSuffix()
|
|
|
userName |
文字列 |
account.getUserName()
|
|
|
displayName |
文字列 |
account.getDisplayName()
|
|
|
説明 |
文字列 |
account.getDescription()
|
|
|
primaryEmail |
文字列 |
account.getPrimaryEmail()
|
|
|
userType |
文字列 |
account.getUserType()
|
|
|
タイトル |
文字列 |
account.getTitle()
|
|
|
ステータス |
文字列 |
account.getStatus()
|
|
|
アカウント・タイプ |
文字列 |
account.getAccountType()
|
|
|
provisionedByMechanism |
文字列 |
account.getProvisionedByMechanism()
|
|
|
provisionedOnDate |
文字列 |
account.getProvisionedOnDate()
|
|
|
resourceName |
文字列 |
account.getResourceName()
|
|
|
startDate |
ロング |
account.getStartDate()
|
|
|
名前 |
文字列 |
account.getName()
|
|
|
userLogin |
文字列 |
account.getUserLogin()
|
|
|
resourcesId |
文字列 |
account.getResourcesId()
|
|
|
compartmentId |
文字列 |
account.getCompartmentId()
|
|
|
domainId |
文字列 |
account.getDomainId()
|
|
|
domainOCID |
文字列 |
account.getDomainOCID()
|
|
|
地域 |
文字列 |
account.getRegion()
|
|
|
電子メール |
Eメールのリスト |
emails = account.getEmails()
|
|
|
pendingVerificationData |
文字列 |
account.getEmails()[0].getPendingVerificationData()
|
|
|
プライマリ |
ブール値 |
account.getEmails()[0].getPrimary()
|
|
|
セカンダリ |
ブール値 |
account.getEmails()[0].getSecondary()
|
|
|
タイプ |
文字列 |
account.getEmails()[0].getType()
|
|
|
値 |
文字列 |
account.getEmails()[0].getValue()
|
|
|
検証済 |
ブール値 |
account.getEmails()[0].getVerified()
|
|
|
アドレス |
住所リスト |
addresses = account.getAddresses();
|
|
|
国 |
文字列 |
account.getAddresses()[0].getCountry()
|
|
|
フォーマット済 |
文字列 |
account.getAddresses()[0].getFormatted()
|
|
|
ローカリティ |
文字列 |
account.getAddresses()[0].getLocality()
|
|
|
postalCode |
文字列 |
account.getAddresses()[0].getPostalCode()
|
|
|
プライマリ |
ブール値 |
account.getAddresses()[0].isPrimary()
|
|
|
地域 |
文字列 |
account.getAddresses()[0].getRegion()
|
|
|
streetAddress |
文字列 |
account.getAddresses()[0].getStreetAddress()
|
|
|
タイプ |
文字列 |
account.getAddresses()[0].getType()
|
|
|
phoneNumbers |
PhoneNumberのリスト |
phoneNumbers = account.getPhoneNumbers()
|
|
|
表示 |
文字列 |
account.getPhoneNumbers()[0].getDisplay()
|
|
|
プライマリ |
ブール値 |
account.getPhoneNumbers()[0].isPrimary()
|
|
|
タイプ |
文字列 |
account.getPhoneNumbers()[0].getType()
|
|
|
値 |
文字列 |
account.getPhoneNumbers()[0].getValue()
|
|
|
ブール値 |
account.getPhoneNumbers()[0].isVerified()
|
||
|
写真 |
写真のリスト |
photos = account.getPhotos()
|
|
|
表示 |
文字列 |
account.getPhotos()[0].getDisplay()
|
|
|
プライマリ |
ブール値 |
account.getPhotos()[0].isPrimary()
|
|
|
タイプ |
文字列 |
account.getPhotos()[0].getType()
|
|
|
値 |
文字列 |
account.getPhotos()[0].getValue()
|
|
|
ims |
imsのリスト |
ims = account.getIms()
|
|
|
表示 |
文字列 |
account.getIms()[0].getDisplay()
|
|
|
プライマリ |
ブール値 |
account.getIms()[0].isPrimary()
|
|
|
タイプ |
文字列 |
account.getIms()[0].getType()
|
|
|
値 |
文字列 |
account.getIms()[0].getValue()
|
インバウンド変換での複数属性ルール
変換ルールを使用すると、一意の値を生成し、その値をインバウンド変換で一度に複数の属性にマップできます。
このルールは、descriptionおよびBuilding属性をtempName値に設定します。複数属性ルールで使用する前に、属性に設定された以前の単一属性ルールを削除する必要があります。
var tempName = user.getUserName() == null ? null : user.getUserName().concat('-', user.getExternalId());
multipleAttribute.setAttribute('description', tempName);
multipleAttribute.setCustomAttribute('Building', tempName);
このルールを使用すると、単一のルールでdescriptionおよびbuildingの値を設定できます。「このルールでは複数の属性が設定されますか。」で「はい」を選択し、関連する属性を選択します。
出力:
description: "jsmith-12345"
Building: "jsmith-12345"
カスタム・ユーザーおよびアカウント属性
インバウンド・データ変換にデータ変換ルールを適用する際に、カスタム・ユーザーまたはアカウント属性をフェッチして使用できます。アウトバウンド・データ変換では、カスタム・ユーザー属性のみをフェッチできます。
ユーザー・カスタム属性
Oracle Access Governanceには、インバウンドまたはアウトバウンド変換用のユーザーのカスタム属性をフェッチするユーティリティ・メソッドが用意されています。ユーザーのCUSTOM_ATTRIBUTE_NAMEをフェッチするには、次のような構文を使用します。
if( user.getCustomAttributes() != null ) {user.getCustomAttributes()['CUSTOM_ATTRIBUTE_NAME'] }
たとえば、Tagsというカスタム属性の場合:
if( user.getCustomAttributes() != null ) {user.getCustomAttributes()['Tags'] }
日付タイプのカスタム属性の場合:
if( user.getCustomAttributes() != null ) {new Number(user.getCustomAttributes()['SOME_DATE']) }
アカウント・カスタム属性
Oracle Access Governanceには、インバウンド変換に対してのみアカウントのカスタム属性をフェッチするユーティリティ・メソッドが用意されています。アカウントのCUSTOM_ATTRIBUTE_NAMEをフェッチするには、次のような構文を使用します。
if(account.getCustomAttributes() != null) {account.getCustomAttributes()['CUSTOM_ATTRIBUTE_NAME'] }
たとえば、Tagsというカスタム属性の場合:
if(account.getCustomAttributes() != null) {account.getCustomAttributes()['Tags'] }
アウトバウンド・データ変換のための変換ユーティリティ
アカウントの存在確認、ユーザーの取得、参照の使用など、変換タスクに役立つユーティリティが多数用意されています。
| ユースケース | ユーティリティメソッド |
|---|---|
|
ユーザーのカスタム属性をフェッチします。 |
|
|
ターゲット参照コードおよびデコード値を取得します。 |
|
|
グローバル参照コードおよびデコード値を取得します。 |
|
|
別の属性値でフィルタされた管理対象オブジェクトから属性の値を取得します。 このユーティリティでは、一致する属性のOracle Access Governance名および値を、値を返す属性のOracle Access Governance名とともに指定することで、目的の属性の値を取得できます。一致するオブジェクトが複数ある場合、または一致がない場合はnullになります。 |
たとえば、次の例では、一致する属性名としてfullNameを指定し、その値としてAlice Smithを指定することで、一致した管理対象オブジェクトからorganizationNameの値を取得できます。
|
|
指定された属性名と値のアカウントが存在するかどうかを確認します。 |
たとえば、属性名がfullNameで、属性値がAlice Smithで、一致の演算子がeqであるアカウントが存在するかどうかを確認します。
|
|
グローバルIDからユーザーを取得します。これにより、他の属性を取得できるユーザー・オブジェクトが戻されます。 |
例:
|
|
ユーザーが直属の部下を持っているかどうかを確認します。 ユーザーが1人以上の報告先を持っている場合はtrueを返し、それ以外の場合はfalseを返します。 |
|
アウトバウンド・データ変換の例
ここでは、Oracle Access Governanceでアウトバウンド・データ変換を適用する際のマッピング・ルールとユースケースの例をいくつか示します。
| ユースケース | サンプル・ルール |
|---|---|
|
固定文字列値 |
'SampleValue'
|
|
ユーザー属性 |
user.getName().getGivenName()
ノート
値をNULLにできるなどの操作を使用する前に、NULLチェックを実行する必要があります。 |
| 日付属性 |
new Number(new Date().getTime());
たとえば、日付を2024年1月31日に設定するには:
|
|
アプリケーション属性 |
application.getDisplayName()
ノート
値をNULLにできるなどの操作を使用する前に、NULLチェックを実行する必要があります。 |
|
リクエスト属性 |
requestAttributes.get('organizationName').get(0)
ノート
|
| 2つのユーザー属性の組合せに値を設定します |
または:
|
| 入力値がNULLの場合、値を別の属性に設定します(組織がNULLの場合、固定値に設定されます)。 |
user.getOrganization() != null && user.getOrganization().getDisplayName() != null ? user.getOrganization().getDisplayName() : 'DefaultOrganization'
|
インバウンド・データ変換およびアイデンティティ属性の例
次に、Oracle Access Governanceのインバウンド・データ変換を適用したり、コンポジット・アイデンティティ・プロファイルに変換を適用する際のマッピング・ルールとユースケースの例を示します。
ベスト・プラクティスとして、抽出された値を使用する前に、常にNULLチェック・イン・ルールを実行することをお薦めします。そうしないと、NULL参照で取込みサイクルが失敗する可能性があります。これは、認可ソースのuser属性オブジェクトとインバウンド変換の管理対象システムのaccount属性オブジェクトの両方に対して行う必要があります。
認可ソースのマッピング・ルールの例
アイデンティティ(ユーザー)オブジェクト属性の入力値または出力値とともに、いくつかのマッピング・ルール式を示します。
|
ターゲット属性 |
属性タイプ |
ターゲット属性データ型 |
マッピング・ルールの目的 |
マッピング・ルール式 |
値入力 |
値の出力 |
|---|---|---|---|---|---|---|
|
userName |
デフォルト |
文字列 |
userNameとdisplayNameを連結し、この値をuserName属性に設定します。 |
user.getUserName().concat('-',user.getDisplayName())
|
userName=mark.hill displayName= マーク・ヒル |
mark.hill- マーク・ヒル |
|
userName |
デフォルト |
文字列 |
userNameがNULLでない場合は、userNameをupperCaseに変換し、userName属性で設定します。 |
if(user.getUserName()!=null) {user.getUserName().toUpperCase() }
|
userName=mark.hill |
MARK.HILL |
|
jobDescription |
CUSTOM |
文字列 |
説明の値をLowerCaseし、カスタム属性jobDescriptionで設定します。 |
user.getDescription().toLowerCase()
|
説明= SoftwareDeveloper1 |
jobDescription = softwaredeveloper1 |
|
ステータス |
デフォルト |
ブール値 |
statusがnullの場合はtrueに設定し、それ以外の場合は値を代替します。 |
user.getStatus()==null ? true : !user.getStatus()
|
status = true | 偽 |
|
リスク |
デフォルト |
整数 |
リスクがnullの場合は20、それ以外の場合はリスクを15増やします |
user.getRisk() == null ? 20 : user.getRisk() + 15
|
リスク= 30 リスク= null |
45 20 |
|
説明 |
デフォルト |
文字列 |
long型のstartDateを取得し、日付に変換してから、説明属性の文字列として設定します。 |
new Date(user.getStartDate()).toISOString()
|
startDate = 1703442600000 |
2023-12-25T07:55:46.061Z |
|
provisionedOnDate |
デフォルト |
日付 |
validFromDate (long)を取得し、日付に変換してから、provisionedOnDateを翌月の1日に丸めて設定します。 |
const currentDate = new Date(user.getValidFromDate()); new Date(currentDate.getFullYear(), currentDate.getMonth() + 1, 1).getTime();
|
validFromDate = 1703442600000 |
provisionedOnDate = 1704047400000 |
|
provisionedFromDate |
デフォルト |
日付 |
入力型文字列。出力タイプの日付。 |
新しいDate(user.getValidFromDate())。toISOString() |
validFromDate = 1703442600000 入力= 2023-12-24T18:30:00.000Z |
provisionedFromDate = 1703422800000 |
管理対象システムのマッピング・ルールのサンプル
勘定科目オブジェクト属性の入力値または出力値とともに、いくつかのマッピング・ルール式を示します。
|
ターゲット属性 |
属性タイプ |
ターゲット属性データ型 |
マッピング・ルールの目的 |
マッピング・ルール式 |
値入力 |
値の出力 |
|---|---|---|---|---|---|---|
|
displayName |
デフォルト |
文字列 |
displayNameがnullでない場合は、大文字の値をdisplayNameに設定します。 |
if(account.getDisplayName()!=null) {account.getDisplayName().toUpperCase() }
|
displayName = Mark Hill |
MARK HILL |
|
primaryEmail |
デフォルト |
文字列 |
userLoginと@myexample.comを連結し、primaryEmailに設定します。 |
account.getUserLogin().concat('@myexample.com')
|
userLogin = mark.hill | mark.hill@myexample.com |
|
jobDescription |
CUSTOM |
文字列 |
説明の値をLowerCaseし、カスタム属性jobDescriptionに設定します。 |
if(account.getDescription()!=null) { account.getDescription().toLowerCase() }
|
説明= SoftwareDeveloper1 | jobDescription = softwaredeveloper1 |
|
ステータス |
デフォルト |
ブール値 |
例1: statusがnullの場合はtrueに設定し、それ以外の場合は値を代替します。 |
account.getStatus()==null ? true : !account.getStatus()
|
status = true |
偽 |
|
例2: statusをfalseに設定します。 |
false
|
status = null/true/false | 偽 | |||
|
リスク |
デフォルト |
整数 |
リスクがnullの場合は20に設定され、それ以外の場合はリスクを15増やします。 |
account.getRisk() == null ? 20 : account.getRisk() + 15
|
リスク= 30 リスク= null |
45 20 |
|
riskSummary |
デフォルト |
ロング |
riskSummaryがnullの場合は1234に設定され、それ以外の場合はリスクを70増やします。 |
account.getRiskSummary() == null ? 1234 : account.getRiskSummary() + 70
|
riskSummary = 30 riskSummary = NULL |
100 1234 |