Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Documentation for Salesforce DLS #2056

Merged
merged 6 commits into from
Feb 8, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 44 additions & 0 deletions docs/document-level-security/SALESFORCE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
### Setting up the Salesforce connector

See the [Developer guide](../../docs/DEVELOPING.md) for setting up connectors.

## Document level security

Document level security (DLS) enables you to restrict access to documents based on a user'­s permissions. This feature is available by default for the Salesforce connector.
Salesforce connector DLS supports for both standard & custom objects.

Refer to [document level security](https://www.elastic.co/guide/en/enterprise-search/master/dls.html) for more information.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this link to /current/ ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I took the reference from already merged connector DLS documentation. Do we need to update this link?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We're on main here so master in the main docs makes sense


Salesforce allows users to set permissions in different ways i.e. via Profiles, Permission sets and Permission set Groups.

For guidance, refer to these [video tutorials](https://howtovideos.hubs.vidyard.com/watch/B1bQnMFg2VyZq7V6zXQjPg#:~:text=This%20is%20a%20must%20watch,records%20in%20your%20Salesforce%20organization) about setting Salesforce permissions.

To ingest any standard or custom objects, users must ensure that at least `Read` permission is granted to that object. This can be granted using any of the following methods for setting permissions.

### Set Permissions using Profiles

Refer to the [official documentation](https://help.salesforce.com/s/articleView?id=sf.admin_userprofiles.htm&type=5) for setting permissions via Profiles.

### Set Permissions using Permissions Set

Refer to the [official documentation](https://help.salesforce.com/s/articleView?id=sf.perm_sets_overview.htm&language=en_US&type=5) for setting permissions via Permissions Sets.

### Set Permissions using Permissions Set group

Refer to the [official documentation](https://help.salesforce.com/s/articleView?id=sf.perm_set_groups.htm&type=5) for setting permissions via Permissions Set Groups.

### Set Profiles, Permission Set and Permission Set Groups to the User

1. Go to `Administration` under the `Users` section.
2. Select `Users` and choose the user to set the permissions to.
3. Set the `Profile`, `Permission Set`or `Permission Set Groups` created in the earlier steps.

**Note:** Refer to [DLS in Search Applications](https://www.elastic.co/guide/en/enterprise-search/master/dls-e2e-guide.html) to learn how to ingest data with DLS enabled, when building a search application.

#### Additional Configuration

##### `Enable document level security`

Toggle to enable [document level security (DLS)](https://www.elastic.co/guide/en/enterprise-search/master/dls.html). When enabled:
- Full syncs will fetch access control lists for each document and store them in the `_allow_access_control` field.
- Access control syncs will fetch users' access control lists and store them in a separate index.
Loading