# Account Name Uniqueness

**URL:** <https://community.sailpoint.com/discuss/t/account-name-uniqueness/34682>\
**Category:** Lifecycle & Governance\
**Tags:** connector\
**Created:** [September 18, 2024, 10:14am UTC](https://community.sailpoint.com/discuss/t/account-name-uniqueness/34682 "2024-09-18T10:14:41Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![ninou](https://avatars.discourse-cdn.com/v4/letter/n/e495f1/32.png) [@ninou](https://community.sailpoint.com/discuss/u/ninou)\
**Post date:** [September 18, 2024, 10:14am UTC](https://community.sailpoint.com/discuss/t/account-name-uniqueness/34682/1 "2024-09-18T10:14:41Z")

</div>

Hello all,

I have a connector to a source where I am aggregating 13,500 account.

Of these, only 500 are correlated.

When I use the username generator in the create account provisioning policy, does it take into account ALL the account names, or just the correlated ones ?

Thank you in advance

---

<div class="post-metadata">

**Author:** ![cristian\_grau](https://sea3.discourse-cdn.com/sailpoint2/discuss/user_avatar/community.sailpoint.com/cristian_grau/32/17423_2.png) [@cristian\_grau](https://community.sailpoint.com/discuss/u/cristian_grau)\
**Post date:** [September 18, 2024, 3:43pm UTC](https://community.sailpoint.com/discuss/t/account-name-uniqueness/34682/2 "2024-09-18T15:43:52Z")

</div>

Hello,

The generator actually queries the source for uniqueness so the answer to your question is that it takes into account ALL the account names.

Cheers

---

<div class="post-metadata">

**Author:** ![paul\_patti](https://sea3.discourse-cdn.com/sailpoint2/discuss/user_avatar/community.sailpoint.com/paul_patti/32/17860_2.png) [@paul\_patti](https://community.sailpoint.com/discuss/u/paul_patti)\
**Post date:** [September 18, 2024, 5:12pm UTC](https://community.sailpoint.com/discuss/t/account-name-uniqueness/34682/3 "2024-09-18T17:12:27Z")

</div>

@cristian_grau , thanks for replying! I always wondered if this looked at the Identity model account information or the actual source to determine this.

Made me want to go back to my protocol analysis (Sniffer) days and watch for wire activity. 🙂

Appreciate you sharing your helpful info!

---

<div class="post-metadata">

**Author:** ![ninou](https://avatars.discourse-cdn.com/v4/letter/n/e495f1/32.png) [@ninou](https://community.sailpoint.com/discuss/u/ninou)\
**Post date:** [September 18, 2024, 7:47pm UTC](https://community.sailpoint.com/discuss/t/account-name-uniqueness/34682/4 "2024-09-18T19:47:22Z")

</div>

Here is the code snippet of what I am using:

“name”:“Create User”,&nbsp; &nbsp;“description”:null,&nbsp; &nbsp;“usageType”:“CREATE”,&nbsp; &nbsp;“fields”: [&nbsp; &nbsp; &nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;“name”:“User Name”,&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;“transform”: {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;“type”:“usernameGenerator”,&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;“attributes”: {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;“sourceCheck”:false,&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;“patterns”: [&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;“$stringToUse${uniqueCounter}”&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;],&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;“stringToUse”: {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;“attributes”: {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;“id”:“TestAcctName”&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;“type”:“reference”&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;“attributes”: {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;“cloudMaxUniqueChecks”:“50”,&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;“cloudMaxSize”:“12”,&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;“cloudRequired”:“true”&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;“isRequired”:false,&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;“type”:“string”,&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;“isMultiValued”:false&nbsp; &nbsp; &nbsp; &nbsp; }

I am not sure this goes to the source to check.

I do not see an indication to this in the attributes section.

The best case is that it is checking against what is aggregated.

Bare in mind that this is not a cloud based rule.

It is a provisioning policy transform.

Many thanks for the prompt response.

---

<div class="post-metadata">

**Author:** ![cristian\_grau](https://sea3.discourse-cdn.com/sailpoint2/discuss/user_avatar/community.sailpoint.com/cristian_grau/32/17423_2.png) [@cristian\_grau](https://community.sailpoint.com/discuss/u/cristian_grau)\
**Post date:** [September 19, 2024, 3:13pm UTC](https://community.sailpoint.com/discuss/t/account-name-uniqueness/34682/5 "2024-09-19T15:13:28Z")

</div>

Sorry, I misunderstood. I though you were using the “Create Unique Account ID” generator. That leads to the question: why don’t you use the generator instead of the transform?

 ![Screenshot 2024-09-19 at 17.13.20.png](https://cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/sailpointsbx2/original/2X/4/469376a7079b029b5b9a724dcb9b08fe14ce6dcf.png)

---

<div class="post-metadata">

**Author:** ![cristian\_grau](https://sea3.discourse-cdn.com/sailpoint2/discuss/user_avatar/community.sailpoint.com/cristian_grau/32/17423_2.png) [@cristian\_grau](https://community.sailpoint.com/discuss/u/cristian_grau)\
**Post date:** [September 19, 2024, 3:51pm UTC](https://community.sailpoint.com/discuss/t/account-name-uniqueness/34682/6 "2024-09-19T15:51:30Z")

</div>

Reviewing your transform again I’ve seen you have sourceCheck set to false. From the documentation:

- **sourceCheck** &nbsp;- This boolean value (true/false) indicates whether the generator must check only the Identity Security Cloud database’s representation of accounts for uniqueness, or whether it must query the target system directly. If no value is provided, the attribute defaults to&nbsp;`false`.
  - `true`&nbsp;indicates the generator must check the target system directly. The generator only respects this setting if the system supports the&nbsp;`getObject`&nbsp;functionality. For systems that lack the ability to query for single account objects, the generator ignores this setting and defaults to&nbsp;`false`. The generator only checks the attribute identified in the account schema as the&nbsp;`accountID`.
  - `false`&nbsp;indicates the generator must check only the Identity Security Cloud database of accounts. The generator only checks the&nbsp;`accountID`.

---

<div class="post-metadata">

**Author:** ![ninou](https://avatars.discourse-cdn.com/v4/letter/n/e495f1/32.png) [@ninou](https://community.sailpoint.com/discuss/u/ninou)\
**Post date:** [September 20, 2024, 3:32pm UTC](https://community.sailpoint.com/discuss/t/account-name-uniqueness/34682/7 "2024-09-20T15:32:49Z")

</div>

Cristian, you are correct, but mine says ‘false’ because the connector does not implement the getObject option (as best I know).

As for the unique Account ID Generator - I think I cannot implement my logic there The logic is first name up to 10 letters and last name two letters. In case there is one with such an account name then first name up to 8 letters, two letters of last name and then a numerator of two digits. I do not see the Account Name Generator generating such a logic without a transform.

For the sake of argument, let’s say that the there is no check at the source. The question is, if there is any clarification whether the uniqueness is checked against all the accounts retrieved or just the correlated.

From the same documentation you mentioned, I tend to think it is against all account names, but it does not say so specifically andhttps://[www.baba-mail.co.il/content.aspx?emailid=30364](http://www.baba-mail.co.il/content.aspx?emailid=30364) I want to be 100% sure before I tell that to the customer.

Here is the updated code (this is the create user provisioning policy):

```auto
{<br>            "name": "User Name",<br>            "transform": {<br>                "type": "usernameGenerator",<br>                "attributes": {<br>                    "sourceCheck": true,<br>                    "stringToUse": {<br>                        "attributes": {<br>                            "id": "Strauss-TestSapAcctName"<br>                        },<br>                        "type": "reference"<br>                    },<br>                    "stringNoNumerator": {<br>                        "attributes": {<br>                            "id": "Strauss-SAP Acct Name No Numerator"<br>                        },<br>                        "type": "reference"<br>                    },<br>                    "patterns": [<br>                        "$stringNoNumerator",<br>                        "$stringToUse${uniqueCounter}"<br>                   ]<br>                }<br>            },<br>            "attributes": {<br>                "cloudMaxUniqueChecks": "50",<br>                "cloudMaxSize": "12",<br>                "cloudRequired": "true"<br>            },<br>            "isRequired": false,<br>            "type": "string",<br>            "isMultiValued": false<br>        }

```

---

<div class="post-metadata">

**Author:** ![cristian\_grau](https://sea3.discourse-cdn.com/sailpoint2/discuss/user_avatar/community.sailpoint.com/cristian_grau/32/17423_2.png) [@cristian\_grau](https://community.sailpoint.com/discuss/u/cristian_grau)\
**Post date:** [September 22, 2024, 12:22pm UTC](https://community.sailpoint.com/discuss/t/account-name-uniqueness/34682/8 "2024-09-22T12:22:37Z")

</div>

Hi,

I’ve created a delimited file source with 30 entries from “Amy.Cox” till “Amy.Cox29”. Only the first one is correlated with an existing identity.

I’ve setup the create provisioning policy to generate the next id using an usernameGenerator transform:

```auto
<span>{<br> "name": "id",<br> "transform": {<br> "type": "usernameGenerator",<br> "attributes": {<br> "sourceCheck": false,<br> "patterns": [<br> "Amy.Cox${uniqueCounter}"<br>]<br> }<br> },<br> "attributes": {<br> "cloudMaxUniqueChecks": "50",<br> "cloudMaxSize": "12",<br> "cloudRequired": "true"<br> }<br> "isRequired": false,<br> "type": "string", <br> "isMultiValued": false<br>}</span>

```

“Amy.Cox30” has been the generated id. It looks it considers the non-correlated values as well.
