アイデンティティおよびアカウントの属性をカスタマイズおよび変換するためのデータ・ルール・リファレンス

アイデンティティおよびアカウント属性をカスタマイズまたは変換するルールを追加できます。これらのルールは、JavaScriptで記述されます。

オブジェクト

アウトバウンド・データ変換の属性値は、次のオブジェクトから導出できます。
オブジェクト(アウトバウンド)

オブジェクト名

目的

requestAttributes

プロビジョニング要求属性オブジェクト。これらの属性は、プロビジョニングがポリシー・ベース、アクセス・バンドル・リクエスト、ロール・ベースまたは直接メソッド経由の場合に使用できます。

requestAttributes.get('name')

ユーザー

ユーザーオブジェクト。任意のメンバーにアクセスするには、これに必要なgetterを使用します。

user.getName().getGivenName(), user.getUserName()

アプリケーション

リソース・オブジェクト任意のメンバーにアクセスするには、これに必要なgetterを使用します。

application.getDisplayName()

インバウンド・データ変換の属性値は、次のオブジェクトから導出できます。
オブジェクト(インバウンド)

オブジェクト名

目的

ユーザー

ユーザーオブジェクト。アイデンティティのソースのすべてのメンバーにアクセスするには、これに必要な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メールのリスト

emails = user.getEmails()
email = user.getEmails() != null ? 
user.getEmails().get(0) : null

pendingVerificationData

文字列

email.getPendingVerificationData()

プライマリ

ブール値

email.getPrimary()

セカンダリ

ブール値

email.getSecondary()

タイプ

文字列

email.getType()

文字列

email.getValue()

検証済

ブール値

email.getVerified()

アドレス

住所リスト

addresses = user.getAddresses();
address = user.getAddresses() != null? 
user.getAddresses().get(0) : null

文字列

address.getCountry()

フォーマット済

文字列

address.getFormatted()

ローカリティ

文字列

address.getLocality()

postalCode

文字列

address.getPostalCode()

プライマリ

ブール値

address.isPrimary()

地域

文字列

address.getRegion()

streetAddress

文字列

address.getStreetAddress()

タイプ

文字列

address.getType()

phoneNumbers

PhoneNumberのリスト

phoneNumbers = user.getPhoneNumbers();
phoneNumber = user.getPhoneNumbers() != null? 
user.getPhoneNumbers().get(0) : null;

表示

文字列

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()

アドレス

住所リスト

addresses = user.getAddresses();

文字列

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のリスト

phoneNumbers = user.getPhoneNumbers();

表示

文字列

user.getPhoneNumbers()[0].getDisplay()

プライマリ

ブール値

user.getPhoneNumbers()[0].isPrimary()

タイプ

文字列

user.getPhoneNumbers()[0].getType()

文字列

user.getPhoneNumbers()[0].getValue()

ブール値

user.getPhoneNumbers()[0].isVerified()

写真

写真のリスト

photos = user.getPhotos();

表示

文字列

user.getPhotos()[0].getDisplay()

プライマリ

ブール値

user.getPhotos()[0].isPrimary()

タイプ

文字列

user.getPhotos()[0].getType()

文字列

user.getPhotos()[0].getValue()

ims

imsのリスト

ims = user.getIms();

表示

文字列

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'] }

アウトバウンド・データ変換のための変換ユーティリティ

アカウントの存在確認、ユーザーの取得、参照の使用など、変換タスクに役立つユーティリティが多数用意されています。

変換ユーティリティ
ユースケース ユーティリティメソッド

ユーザーのカスタム属性をフェッチします。

transformationUtil.getUserIdentityCustomAttributeValue(agcs_tenant_id, user.getId(), 'CUSTOM_ATTRIBUTE_NAME')

ターゲット参照コードおよびデコード値を取得します。

transformationUtil.getLookupCode(agcs_tenant_id, agcs_target_id, 'countries', user.getAddresses().get(0).getCountry())

transformationUtil.getLookupDecode(agcs_tenant_id, agcs_target_id, 'countries', user.getAddresses().get(0).getCountry())

グローバル参照コードおよびデコード値を取得します。

transformationUtil.getGlobalLookupCode(agcs_tenant_id, 'countries', user.getAddresses().get(0).getCountry())

transformationUtil.getGlobalLookupDecode(agcs_tenant_id, 'countries', user.getAddresses().get(0).getCountry())

別の属性値でフィルタされた管理対象オブジェクトから属性の値を取得します。

このユーティリティでは、一致する属性のOracle Access Governance名および値を、値を返す属性のOracle Access Governance名とともに指定することで、目的の属性の値を取得できます。一致するオブジェクトが複数ある場合、または一致がない場合はnullになります。

transformationUtil.getAttributeValueFromManagedObject(agcs_tenant_id, agcs_target_id, matchAttributeName, matchAttributeValue, returnAttributeName)

たとえば、次の例では、一致する属性名としてfullNameを指定し、その値としてAlice Smithを指定することで、一致した管理対象オブジェクトからorganizationNameの値を取得できます。

transformationUtil.getAttributeValueFromManagedObject(agcs_tenant_id, agcs_target_id, 'fullName', 'Alice Smith', 'organizationName')

指定された属性名と値のアカウントが存在するかどうかを確認します。

transformationUtil.isAccountExists(agcs_tenant_id, agcs_target_id, matchAttributeName, matchAttributeValue, operator)

たとえば、属性名がfullNameで、属性値がAlice Smithで、一致の演算子がeqであるアカウントが存在するかどうかを確認します。

transformationUtil.isAccountExists(agcs_tenant_id, agcs_target_id, 'fullName', 'Alice Smith', 'eq')

グローバルIDからユーザーを取得します。これにより、他の属性を取得できるユーザー・オブジェクトが戻されます。

transformationUtil.getUser(agcs_tenant_id, 'global_identity_id')

例:

let user = transformationUtil.getUser(agcs_tenant_id, 'global_identity_id');
if(user != null ) {
  let username = user.getUserName();
}

ユーザーが直属の部下を持っているかどうかを確認します。

ユーザーが1人以上の報告先を持っている場合はtrueを返し、それ以外の場合はfalseを返します。

transformationUtil.hasDirectReportees(agcs_tenant_id,'global_identity_id')

アウトバウンド・データ変換の例

ここでは、Oracle Access Governanceでアウトバウンド・データ変換を適用する際のマッピング・ルールとユースケースの例をいくつか示します。

サンプルのマッピング・ルール
ユースケース サンプル・ルール

固定文字列値

'SampleValue'

ユーザー属性

user.getName().getGivenName()
ノート

値をNULLにできるなどの操作を使用する前に、NULLチェックを実行する必要があります。
日付属性 new Number(new Date().getTime());

たとえば、日付を2024年1月31日に設定するには:

new Number(new Date(2024,00,31).getTime());

アプリケーション属性

application.getDisplayName()
ノート

値をNULLにできるなどの操作を使用する前に、NULLチェックを実行する必要があります。

リクエスト属性

requestAttributes.get('organizationName').get(0)
ノート

  • 値をNULLにできるなどの操作を使用する前に、NULLチェックを実行する必要があります。
  • 'requestAttributes.get(attrName)'は常に配列を返すため、特定の値をフェッチするためにget(i)を実行する必要があります。
2つのユーザー属性の組合せに値を設定します
user.getName().getGivenName() + ' ' + user.getName().getFamilyName()
または:
[ user.getName().getGivenName(),user.getName().getMiddleName() , user.getName().getFamilyName()].join(' ')
入力値が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