You can configure Okta as your identity provider (IDP) for enterprise logins in Portal for ArcGIS. The configuration process involves two main steps: registering your enterprise IDP with Portal for ArcGIS and registering Portal for ArcGIS with the enterprise IDP.
Required information
Portal for ArcGIS requires certain attribute information to be received from the IDP when a user logs in using enterprise logins. The NameID attribute is mandatory and must be sent by your IDP in the SAML response to make the federation with Portal for ArcGIS work. Since Portal for ArcGIS uses the value of NameID to uniquely identify a named user, it is recommended that you use a constant value that uniquely identifies the user. When a user from the IDP logs in, a new user with the user name NameID will be created by Portal for ArcGIS in its user store. The allowed characters for the value sent by NameID are alphanumeric, _ (underscore), . (dot), and @ (at sign). Any other characters will be escaped to contain underscores in the user name created by Portal for ArcGIS.
Portal for ArcGIS supports inflow of the givenName and email address attributes of the enterprise login from the enterprise IDP. When a user signs in using an enterprise login, and if Portal for ArcGIS receives attributes with the names givenname and email or mail (in any case), Portal for ArcGIS populates the full name and the email address of the user account with the values received from the IDP. It's recommended that you pass in the email address from the enterprise IDP so the user can receive notifications.
Register Okta as the enterprise IDP with Portal for ArcGIS
- Sign in to the portal website as an administrator of your organization and click Organization > Edit Settings > Security.
- In the Enterprise Logins via SAML section, select the One Identity Provider option, click the Set Enterprise Login button, and enter your organization's name in the window that appears (for example, City of Redlands). When users access the portal website, this text displays as part of the SAML sign in option (for example, Using your City of Redlands account).
Note:
You can only register one enterprise IDP, or one federation of IDPs, for your portal.
- Choose whether your users will be able to join the organization Automatically or After you add the accounts to the portal. Selecting the first option enables users to sign in to the organization with their enterprise login without any intervention from an administrator. Their account is registered with the organization automatically the first time they sign in. The second option requires the administrator to register the necessary accounts with the organization using a command line utility or sample Python script. Once the accounts have been registered, users will be able to sign in to the organization.
Tip:
It's recommended that you designate at least one enterprise account as an administrator of your portal and demote or delete the initial administrator account. It is also recommended that you disable the Create an account button and sign-up page (signup.html) in the portal website so people cannot create their own accounts. For full instructions, see Configuring a SAML-compliant identity provider with your portal.
- Provide metadata information for the IDP using one of the options below:
- File—Download or obtain a copy of the federation metadata file from Okta and upload the file to Portal for ArcGIS using the File option.
Note:
If this is the first time you are registering a service provider with Okta, you will need to get the metadata file after registering Portal for ArcGIS with Okta. - Parameters—Choose this option if the URL or federation metadata file is not accessible. Enter the values manually and supply the requested parameters: the login URL and the certificate, encoded in the BASE 64 format. Contact your Okta administrator to obtain these.
- File—Download or obtain a copy of the federation metadata file from Okta and upload the file to Portal for ArcGIS using the File option.
- Configure the advanced settings as applicable:
- Encrypt Assertion—Select this option to encrypt the Okta SAML assertion responses.
- Enable Signed Request—Select this option to have Portal for ArcGIS sign the SAML authentication request sent to Okta.
- Propagate logout to Identity Provider—Select this option to have Portal for ArcGIS use a logout URL to sign out the user from Okta. Enter the URL to use in the Logout URL setting. If the IDP requires the logout URL to be signed, Enable Signed Request needs to be checked.
- Update profiles on sign in—Select this option to have Portal for ArcGIS update users' givenName and email address attributes if they have changed since they last logged in.
- Enable SAML based group membership—Select this option to allow organization members to link specified SAML-based enterprise groups to Portal for ArcGIS groups during the group creation process.
- Logout URL—The IDP URL is used to sign out the currently signed in user.
- Entity ID—Update this value to use a new entity ID to uniquely identify your portal to Okta.
The Encrypt Assertion and Enable Signed Request settings use the certificate samlcert in the portal keystore. To use a new certificate, delete the samlcert certificate, create a new certificate with the same alias (samlcert) following the steps in Import a certificate into the portal, and restart the portal.
- When finished, click Update Identity Provider.
- Click Get Service Provider to download the portal's metadata file. Information in this file will be used to register the portal as the trusted service provider with Okta.
Register Portal for ArcGIS as the trusted service provider with Okta
- Log in to your Okta organization as a member with administrative privileges.
- On the Applications tab, click the Add Application button.
- Click Create New App and select the SAML 2.0 option. Click Create.
- In General Settings, enter an App Name for your portal deployment and click Next.
- On the Configure SAML tab, do the following:
- Enter the value for Single sign on URL, for example, https://portalhostname.domain.com/portalcontext/sharing/rest/oauth2/saml/signin. This value can be copied from the service provider metadata file downloaded from your portal.
- Enter the value for the Audience URI. The default value is set to portalhostname.domain.com.portalcontext. This value can be copied from the service provider metadata file downloaded from your portal.
- Leave the Name ID format as Unspecified.
- Under Advanced Settings, change the Assertion Signature option to Unsigned.
- In the Attribute Statements section, add these attribute statements:
givenName set to user.firstName + " " + user.lastName
email set to user.email
- Click Next and click Finish.
- You will now see the Sign On section of your newly created SAML application. To get the Okta IDP metadata, click the Sign On tab and click the Identity Provider metadata link.
- Right-click the People tab and configure which Okta authenticated users will have access to in your portal.