The Egnyte for Salesforce integration makes it easy to store, access, and share your business files from within the Salesforce web interface. You can add the Egnyte for Salesforce App to Account, Case, Contact, Lead, and Opportunity Page Layouts. You can also add Egnyte for Salesforce to custom object record pages. Follow the steps below to install the latest version.
Upgrading from version 1.x of Egnyte for Salesforce
3.X and 2.x versions of Egnyte for Salesforce are independent of 1.x versions.
To upgrade a 1.x installation, we recommend going through the steps in this article to install and
deploy the latest version of the Egnyte for Salesforce integration before uninstalling version 1.x. While it
is technically possible to have version 1.x and 3.x installed in the same Salesforce organization, Egnyte
recommends uninstalling or disabling the 1.x package after verifying that the latest version of the package
is properly installed and configured.
Upgrading any existing 2.x or 3.x installation of Egnyte for Salesforce simply involves opening the Egnyte for Salesforce AppExchange listing and choosing the Get it Now option to install the package.
The package must always be installed for all users in your organization (even if only a subset of those users will use the integration).
Prerequisites
Egnyte customers wishing to use the Egnyte for Salesforce integration;
1. Must be using SF Professional, Enterprise, or Unlimited editions with at least 2 free permission sets.
2. Customers must also purchase licenses for each user that will be using the integration within Salesforce.
3. Only a Salesforce system administrator may install Egnyte for Salesforce.
4. During installation, the linked Egnyte domain must be verified using an Egnyte admin account with Egnyte or AD authentication (i.e., an SSO provider may not be used), and Two Factor Authentication (TFA) disabled. Also note, Egnyte <-> SF integration is on 1:1 basis only.
Install and Deploy Egnyte for Salesforce
For testing Egnyte installation and Egnyte features we recommended to first install the Egnyte for Salesforce package in a sandbox environment. You don’t need to have an Egnyte domain to do this. You can easily use the trial Egnyte domain (which you can set up from the Egnyte Domain Configuration).
If you need to set up more Salesforce Licenses or want to convert the Trial Egnyte domain beyond 14 days
so you can test ongoing changes into the Sandbox environment, please contact your CSMs to request it.
Follow the steps below to get started.
Install the package
- Sign in to Salesforce as a System Administrator.
- Start the installation process from the Egnyte for Salesforce Appexchange listing:
https://appexchange.salesforce.com/listingDetail?listingId=a0N30000000q7EtEAI - To ensure all users in your organization have the required permissions for the package to work, select the option to Install for All Users.
All users don't need to be licensed Egnyte users, but this will ensure that all users have enough permissions assigned for the app to work as they create and modify Salesforce records.
- Click Install to complete the installation process.
Ensure that permissions are correctly granted
- Use this guide to assign the Egnyte User permission set to every user in your org.
- Pre-approve Egnyte for Salesforce by following the steps in another guide.
- Go to Setup/Profiles, and for each profile that you use, go to Connected App Access and ensure the checkbox Egnyte for Salesforce is checked.
- If you have access to custom profiles, go to Setup / Profiles, and edit every custom profile which you use so that it has at least the following Custom Object Permissions: for Egnyte Sync Configurations, Egnyte Folder Templates, and Egnyte Folder Paths at least View All; for Egnyte Sync Queue, at least Modify All and Create.
Ensure the following if you have a question regarding Guest/Community Users & Permissions:
The "Read/create/edit" permissions are general permissions for objects, whereas View all and Modify all are permissions for particular records. This means that by allowing Guest users to view all records of Egnyte for Salesforce related objects you actually make all those records available (and potentially editable) to users who don't even have to log in - it's not the recommended setup we will suggest.
In the case of guest users, our recommendations are to create for these users appropriate sharing
rules so these users will be able to see only those records that they require. To do this use this
Salesforce guide: https://help.salesforce.com/articleView?id=ls_guest_sharing_criteria.htm&type=5
Permissions on Egnyte side is not removed automatically. Example. when a user has access to
record in Salesforce and this access is revoked due to any reason, admin will need to go Egnyte
and revoke access to appropriate folders for that user.
One of the Example to illustrate this scenario for the community:
Integrate with your Egnyte domain
- Once the installation of the Egnyte for Salesforce package is complete, you can take steps to configure your Egnyte domain. While the Egnyte integration can be configured to work within Salesforce Lightning, these configuration steps must be done through Classic mode. Start by opening the Egnyte Domain Configuration tab.
- If you do not have an Egnyte Domain, you can click on the Egnyte Trial Domain button displayed below by the arrow and create an Egnyte trial domain first and then continue on the next steps. The Egnyte Trial Domain created, by default, comes with five pre-configured integration licenses so that you can start using the integration as soon as the installation and configuration are complete.
- If you do not have an Egnyte Domain, you can click on the Egnyte Trial Domain button displayed below by the arrow and create an Egnyte trial domain first and then continue on the next steps. The Egnyte Trial Domain created, by default, comes with five pre-configured integration licenses so that you can start using the integration as soon as the installation and configuration are complete.
- If you already have an active Egntye domain
- Egnyte Domain Configuration section. Click Edit to continue.
- Enter your Egnyte domain name in the Egnyte Domain field. Use the complete address without http:// or https://. For example, if your domain is acme enter acme.egnyte.com. You may leave the other settings as they are. Click Save.
- You will now see a login screen for your Egnyte domain. Use admin credentials to sign in to Egnyte. The admin account must use Egnyte or AD authentication and have Two Factor Authentication (TFA) disabled.
Using an admin account that authenticates with a Single Sign-On provider or uses TFA will not work (you can
temporarily disable TFA to run this step and re-enable it after completing the setup of the Salesforce integration).If you see a page not found an error on step 7, it might be due to some information being removed from
the login URL. This happens on Chrome and Internet Explorer due to caching that is performed by the browsers.
If this does happen, try to run step 7 using an Incognito window in Chrome or a different browser like Firefox or Safari.After you have successfully authenticated, you will be brought back to Salesforce and asked to click Continue to complete the setup of the integration.
If you don't see this screen, it's because you used an admin account that either had TFA enabled or was us
ing SSO. In this case, the integration will not complete successfully, and you will need to repeat step 7 with
an admin account that uses Egnyte or AD authentication and does not have TFA enabled.If you change the password on the Admin account that is used to complete setup, you will need to run
through steps 1-8 again with the account to re-generate a new access token for the integration. - Egnyte Domain Configuration section. Click Edit to continue.
- Copy the URL domain from the browser window (you will enter it in the Remote Site Settings configuration section). The URL will begin with https://efs (e.g. https://efs.na17.visual.force.com/.........). You do not need to copy any part of the URL after the domain name.
Note. The URL can only be copied when in Classic view.
- Click the Remote Site Setting button to open a new tab where you can add a Remote Setting to your Salesforce org. Set the Remote Site Name to EgnytePackage (or any unique name without spaces) and the Remote Site URL to the value copied from step 2. Ensure the Active checkbox is selected and click Save and New to enter another Remote Site setting. Note. this is step 1 of 2.
- You will now add your Egnyte domain name to the Remote Site settings - the same form displays again. Set the Remote Site Name to EgnyteDomain (or any unique name without spaces) and the Remote Site URL to your Egnyte domain URL. For example, if your domain name is acme.egnyte.com, you would enter https://acme.egnyte.com.
- Ensure the Active checkbox is selected and click Save.
- Test your connection by clicking on My Egnyte button.
Add the Egnyte for Salesforce App to Page Layouts
The steps described below apply to organizations where Salesforce Classic UI is used. For organizations where Lightning Experience is used, refer to the section on how to set up the integration for Salesforce Lightning in the Egnyte for Salesforce Administrator’s Guide.
- To add Egnyte to any object’s page layout, go to the Page Layouts configuration for that object in Salesforce (e.g., Setup > Build > Customize > Accounts > Page Layouts).
- Choose the Page Layout you want to modify and click Edit. You can now drag and add the Egnyte for Salesforce Canvas App into your Page Layout. It is recommended to place the canvas app into a single column section of the page.
- The recommended configuration for the Egnyte for the Salesforce canvas app is to have a height of at least 500px. We recommend 600px for the height if you are configuring the integration to give users Owner access (configured from the Default Permission section in the Egnyte Domain Configuration tab) so that users can view the full folder permission dialogue. The recommended width is 100% and the Show scrollbars option should be enabled.
- Once you have configured the Egnyte for Salesforce canvas app, click Save to save the page layout and open a record. You will see an embedded version of the Egnyte UI, in a widget on the record page, where you can upload and share files.
For Releases 2.6.1 and higher
Package 2.6.1 contains a security upgrade to stop Egnyte sessions from being automatically created when an admin impersonates a user in Salesforce. In version 2.6.1 and above, admins can set up the integration in such a way that session creation does not automatically happen when the canvas app loads, so an Egnyte session is not created when an admin impersonates a user.
To activate this feature, an additional step also needs to be performed to activate it to make sure it works. The process is shown below.
1. Install the Package.
2. Create a Visualforce Page (you will need to repeat steps 2-4 for each object you are enabling the integration for).
3. In the Visualforce page add the following markup (replace the part in blue with the API name of the object and the part in green with the desired height for the Egnyte window - a minimum of 600px is recommended):
<apex:page standardController="ObjectName">
<efs:egnyteload recordId="{!Id}" pageHeight="600px"/>
</apex:page>
4. Add the Visual Force page to the page layout for the respective object.
For Releases 2.6.3 and higher
Now you can also control and customize folder permissions at a Record level on the VF page using the below snippet.
<apex:page standardController="ObjectName">
<efs:egnyteload recordId="{!Id}" pageHeight="500px" permission="Full"/>
</apex:page>
Like
<apex:page standardController="Contact">
<efs:egnyteload recordId="{!Id}" pageHeight="500px" permission="viewer"/>
</apex:page>" pageHeight="500px" permission="Editor"/>
Here are the permission assign cases :
- If any permission (Among 'Viewer' , 'Editor' , 'Full' , 'Owner') is defined in VF Page then it will assign these permissions to the loaded record, overriding the default permissions in Egnyte Domain Configuration. Note. Permission names are case insensitive.
- If no permission is defined on the VF page (Or the permission parameter is empty) then it will use the default permission set in the Egnyte Domain Configuration.
- If an invalid value (like 'fdsfsdf') is provided as permission parameters in the VF page then default permission in Egnyte Domain Configuration will be used.
More Options to Configure Egnyte for Salesforce
For more information on how to configure Egnyte for Salesforce for your environment, refer to the Egnyte for Salesforce Administrator’s Guide.
For Custom Objects - Refer to this guide https://helpdesk.egnyte.com/hc/en-us/articles/208327348-Enabling-the-Salesforce-Integration-for-Custom-Objects#step1