IMPORTANT NOTE: As of September 15, 2021, idp-initiated SAML logins do not work from any idp/browser to Automate 2.
- Follow https://chef-software.ideas.aha.io/ideas/AUTO-I-59 for updates, to see if this has changed.
- This guide assumes you have the following set up:
- Azure AD
- Admin Rights to the Instance
- Chef Automate 2.0
- Azure AD
- Chef Automate | [2.x]
- In azure ad portal ([https://portal.azure.com]) under azure active directory and then under enterprise apps. Create a new Non-Gallery Application
- After naming it, click on single sign-on and select SAML
- In section 1 – Basic SAML Configuration, enter following:
- Identifier (Entity ID):
https://serverfqdn/dex/callback
- Reply URL (Assertion Consumer Service URL):
https://serverfqdn/dex/callback
- Identifier (Entity ID):
- In section 2: User Attributes and Claims, check the defaults that are there.
- Keep:
- Required Claim:
- Unique User Identifier (Name ID)
- Source attribute:
user.userprincipalname
- Additional Claims
- givenname
- Namespace:
http://schemas.xmlsoap.org/ws/2005/05/identity/claims
- Source attribute:
user:givenname
- Namespace:
- name
- Namespace:
http://schemas.xmlsoap.org/ws/2005/05/identity/claims
- Source attribute:
user:userprincipalname
- Namespace:
- surname
- Namespace:
http://schemas.xmlsoap.org/ws/2005/05/identity/claims
- Source attribute:
user:surname
- Namespace:
- givenname
- Add the following additional claims (may need to delete existing entries for emailaddress and username if they already exist).
- emailaddress
- Namespace: leave namespace blank
- Source attribute:
user.mail
- username
- Namespace: leave namespace blank
- Source attribute:
user.mail
- emailaddress
- Required Claim:
- Keep:
- In section 3 – SAML Signing certificate.
- Download the certificate (Base64).
- Note the following values from Section 4:
- Login URL.
- Azure AD Identifier.
- Logout URL.
- SSH to your A2 instance.
- Create a file called
saml.toml
where we will put in configuration information. - In the
saml.toml
file, add the following information in the example format listed:ca_contents
: this is the X.509 Certificate from step 5 above. Copy this and paste as the value for ca_contents. Use three double quotes to indicate a multiline string. (ex:"""
)sso_url
: This is the value for Identity Provider Single Sign-On URL using the Login URL value from step 6 above.email_attr
: The value for this should beemailaddress
username_attr
: The value for this should beusername
entity_issuer
: This should be the URL for your automate server plus/dex/callback
. (ex:https://serverfqdn/dex/callback
)- Save and close the file.
- Run
chef-automate config patch saml.toml
to apply the changes to Chef Automate without restarting all of the services.