Style | ||
---|---|---|
| ||
The criteria for this process is defined by four database scalar functions that can be customized as needed. These functions are as follows.
...
This function specifies which accounts can be joined to People. To be joined, accounts must meet the criteria specified by the function AS WELL AS the filter specified in the AccountInboxing_GetJoinAndProvisionFilter function. The default logic for this function states that all inventoried accounts are eligible for joining. If the value of AllowJoin was set to 0, no accounts would be eligible.
Code Block | ||||
---|---|---|---|---|
| ||||
DECLARE @JoinFilter NVARCHAR(MAX) = N'A.AllowJoin = 1' |
This function can be customized to filter or exclude accounts from being targets for joining to People. For example, if you wanted only those accounts in a specific account store to be eligible targets for joining, you could alter the function in the following way:
Code Block | ||||
---|---|---|---|---|
| ||||
DECLARE @JoinFilter NVARCHAR(MAX) = N'A.AllowJoin = 1' AND A.AccountStoreID = 1002 |
...
This function specifies the accounts from which Persons can be provisioned. To be provisioned, accounts must meet the criteria specified the function AS WELL AS the filter specified in the AccountInboxing_GetJoinAndProvisionFilter function. The default logic for this function states that Persons can be provisioned from an accounts store when AllowPersonProvisioning is set to true on the account store from which the account originates.
Code Block | ||||
---|---|---|---|---|
| ||||
DECLARE @ProvisionFilter NVARCHAR(MAX) = N'A.AllowProvision = 1 AND EXISTS(SELECT 1 FROM AccountStore S WHERE A.AccountStoreID = S.AccountStoreID AND S.AllowPersonProvisioning = 1)' |
...
This function can be customized to filter or exclude accounts within an eligible account store from being targets for provisioning new Persons. For example, if you wanted only those accounts with a Department value of Sales to be eligible targets for provisioning new Persons, you could alter the function in the following way:
Code Block | ||||
---|---|---|---|---|
| ||||
DECLARE @ProvisionFilter NVARCHAR(MAX) = N'A.AllowProvision = 1 AND EXISTS(SELECT 1 FROM AccountStore S WHERE A.AccountStoreID = S.AccountStoreID AND S.AllowPersonProvisioning = 1 AND A.Department = N''Sales'')' |
...
- The account is not currently owned by a Person (The account's PersonID field IS NULL)
- The account is active (The account's Disabled and Deleted fields are 0)
- The account is not an Active Directory contact account or a non-personal account (The AccountTypeID field is not equal to 2 and the AccountUsageTypeIDequals 1.
- The account has valid FirstName and LastName values (The length of each field is greater than 0)
Code Block | ||||
---|---|---|---|---|
| ||||
DECLARE @JoinAndProvisionFilter NVARCHAR(MAX) = N'A.PersonID IS NULL AND A.Disabled = 0 AND A.Deleted = 0 AND A.AccountTypeID <> 2 AND A.AccountUsageTypeID = 1 AND LEN(A.FirstName) > 0 AND LEN(A.LastName) > 0' |
...
This function should be customized in situations where the same filter would be applied to accounts that are both join and provision targets. For example, if you wanted only those accounts with an EmployeeType of Contractor to be targets for joining or provisioning, you could alter the function in the following way:
Code Block | ||||
---|---|---|---|---|
| ||||
DECLARE @JoinAndProvisionFilter NVARCHAR(MAX) = N'A.PersonID IS NULL AND A.Disabled = 0 AND A.Deleted = 0 AND A.AccountTypeID <> 2 AND A.AccountUsageTypeID = 1 AND LEN(A.FirstName) > 0 AND LEN(A.LastName) > 0 AND A.EmployeeType = ''Contractor'' |
...
- EmployeeID
- DateOfBirth
- PersonalEmail
- Email
...
background: #f0f8ff | class | fas fa-
---|
Info |
EmpowerID provides several functions that allow you to preview the outcome of the above the Join and Provision functions before enabling those features. To do so, you can run any of the previewing functions in the EmpowerID Identity Warehouse. These functions are as follows.
|
...