Newer Version Available
UserAccessPolicy (Beta)
Parent Type
File Suffix and Directory Location
UserAccessPolicy components have the suffix .useraccesspolicy and are stored in the useraccesspolicies folder.
Version
UserAccessPolicy components are available in API version 57.0 and later.
Special Access Rules
Fields
| Field Name | Description |
|---|---|
| booleanFilter |
|
| description |
|
| isProtected |
|
| masterLabel |
|
| status |
|
| triggerType |
|
| userAccessPolicyActions |
|
| userAccessPolicyFilters |
|
UserAccessPolicyAction
Represents an action applied by a user access policy.
| Field Name | Description |
|---|---|
| action |
|
| target |
|
| type |
|
UserAccessPolicyFilter
Represents a user criteria filter for a user access policy.
| Field Name | Description |
|---|---|
| columnName |
|
| operation |
|
| sortOrder |
|
| target |
|
| type |
|
| value |
|
Declarative Metadata Sample Definition
The following is an example of a UserAccessPolicy component.
1<?xml version="1.0" encoding="UTF-8"?>
2<UserAccessPolicy xmlns="http://soap.sforce.com/2006/04/metadata">
3 <booleanFilter>1 AND 2</booleanFilter>
4 <description>Policy to assign Sales Rep PSG to active Sales Reps.</description>
5 <masterLabel>Sales Rep Migration</masterLabel>
6 <status>Active</status>
7 <triggerType>CreateAndUpdate</triggerType>
8 <userAccessPolicyActions>
9 <action>Grant</action>
10 <target>SalesRepPSG</target>
11 <type>PermissionSetGroup</type>
12 </userAccessPolicyActions>
13 <userAccessPolicyFilters>
14 <operation>equals</operation>
15 <sortOrder>1</sortOrder>
16 <target>SalesRepCustomProfile</target>
17 <type>Profile</type>
18 </userAccessPolicyFilters>
19 <userAccessPolicyFilters>
20 <columnName>IsActive</columnName>
21 <operation>equals</operation>
22 <sortOrder>2</sortOrder>
23 <target>User</target>
24 <type>User</type>
25 <value>true</value>
26 </userAccessPolicyFilters>
27</UserAccessPolicy>To reference multiple profiles or roles, in UserAccessPolicyFilter, set the operator field to in. Then, reference the resources’ developer names in the target field, separated by commas.
1<?xml version="1.0" encoding="UTF-8"?>
2<UserAccessPolicy xmlns="http://soap.sforce.com/2006/04/metadata">
3 <booleanFilter>1</booleanFilter>
4 <description>Policy to remove AMER Sales group from employees with one of two roles</description>
5 <masterLabel>Remove AMER Sales Group</masterLabel>
6 <status>Active</status>
7 <userAccessPolicyActions>
8 <action>Revoke</action>
9 <target>AMERSalesPublicGroup</target>
10 <type>Group</type>
11 </userAccessPolicyActions>
12 <userAccessPolicyFilters>
13 <operation>in</operation>
14 <sortOrder>1</sortOrder>
15 <target>SalesOps,InsideSalesRep</target>
16 <type>UserRole</type>
17 </userAccessPolicyFilters>
18</UserAccessPolicy>The following is an example package.xml that references the previous definition.
1<?xml version="1.0" encoding="UTF-8"?>
2<Package xmlns="http://soap.sforce.com/2006/04/metadata">
3 <types>
4 <members>*</members>
5 <name>UserAccessPolicy</name>
6 </types>
7 <version>58.0</version>
8</Package>Wildcard Support in the Manifest File
This metadata type supports the wildcard character * (asterisk) in the package.xml manifest file. For information about using the manifest file, see Deploying and Retrieving Metadata with the Zip File.