Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The Active Directory users or groups of the users (who are trying to login to FlexDeploy), should be associated to the Enterprise Application. Otherwise, users will get the below error while logging in.

...

Example fdsso.config

...

for Azure Active Directory

Info

Change log

  • FlexDeploy 6.0.0.0 - The values for excludedPathMatcher.excludedPath, and logout.defaultUrl have changed

...

Code Block
callbackFilter.defaultUrl = /flexdeploy
saml2Config = org.pac4j.saml.config.SAML2Configuration
saml2Config.keystorePath = 
saml2Config.keystorePassword = KEYSTORE_PASSWORD
saml2Config.privateKeyPassword = PRIVATE_KEY_PASSWORD
saml2Config.identityProviderMetadataPath = METADATA_URL

# Adjust this based on your maximum session lifespan in Microsoft Settings. If too short, you will get the error: Authentication issue instant is too old or in the future
saml2Config.maximumAuthenticationLifetime = 76000 

saml2Config.serviceProviderEntityId = spn:APPLICATION_ID
saml2Config.serviceProviderMetadataPath = FLEXDEPLOY_HOME/sso/FlexDeployMetadata.xml
saml2Client = org.pac4j.saml.client.SAML2Client
saml2Client.configuration = $saml2Config
clients.callbackUrl = https://FLEXDEPLOY_HOST:FLEXDEPLOY_PORT/flexdeploy/callback
clients.clients=$saml2Client
isAuthenticatedAdmin = org.pac4j.core.authorization.authorizer.IsAuthenticatedAuthorizer
excludedPathMatcher = org.pac4j.core.matching.matcher.PathMatcher
excludedPathMatcher.excludedPath = /next/#/login
config.authorizers = admin:$isAuthenticatedAdmin
config.matchers = excludedPath:$excludedPathMatcher
ssoFilter = flexagon.fd.ui.security.FlexPac4jFilter
ssoFilter.config = $config
ssoFilter.clients = SAML2Client
ssoFilter.matchers = nocache
ssoFilter.authorizers = admin
logout = io.buji.pac4j.filter.LogoutFilter
logout.config = $config
logout.localLogout = true
logout.centralLogout = false
logout.defaultUrl = https://FLEXDEPLOY_HOST:FLEXDEPLOY_PORT/flexdeploy/next/#/home

Group Mapping with Azure SAML SSL

Azure SSO can map groups in to FlexDeploy starting in the 7.0 release. This document tries to explain how to set it up.

Setting up Azure to send in groups

Open the Enterprise Application in portal.azure.com.

Click the

Attributes and Claims tab.

Choose add a group claim.

Choose which groups to send in the group claim. Some of those options are only going to work if you are syncing on-prem to cloud. Each works a little differently. The Microsoft documentation might be helpful. The image here shows choosing to set up the groups as roles on the enterprise application, and the following screenshots use that approach, but it’s fine to choose any of them. If you choose another, the page SSO Realm Group Mapping would be the one you would want to read.

...

Creating Enterprise Application Roles

This is only needed if you chose the option “Groups assigned to the application” above. This approach is the most accurate, in that it won’t send in any groups that don’t make sense for FlexDeploy to receive, but it likely will be more work for your AD / infra team to manage than choosing existing groups instead.

Click Users and Groups and then click application registration to add roles.

...

That will take you to the app roles page, which wasn’t in the menu previously.

Click Create app role to add a new role.

The display name is used in Azure.

Click apply after each.

The Value is sent into FlexDeploy. Write down, copy to notepad, memorize these, or type them into Flexdeploy as you go. See the directions here for that part.

...

When you are done creating the roles, you need to assign users to them. Click Users and Groups (5) to get back there.

Assign users or groups to the new roles.

...

Setting up group mapping with the FlexDeploy SSO Realm

See Group Mapping with SSO Realm for the steps.