Configure SSO Authentication with SAML
Set up SAML in Customer Environment
- 
Set up your SAML based on the steps in BoxyHQ documentation. Choose your IdP: 
- 
Use these values in the Service provider details section: - 
ACS URL https://<your kloudfuse domain name>/api/oauth/saml
- 
Entity ID https://<your kloudfuse domain name>/samlresponse
 
- 
- 
Generate and save the Metadata (XML file). This is necessary to configure the Kloudfuse connection with your SAML provider. 
- 
Share the metadata with Kloudfuse support. 
Set up SAML in Kloudfuse
To set up SAML in Kloudfuse, you must:
Set up Metadata Secret
- 
Rename the Metadata XML file that the customer shares to kfuse.xml.Alternatively, if the customer shared a URL, run the following command: curl {metadata xml file url} > kfuse.xml
- 
Save the kfuse.xmlfile in the customer’s terminal.
- 
Create the generic kfuse-xmlsecret in the customer’s cluster and namespace by running the following command:kubectl create secret generic kfuse-xml --from-file=kfuse.xmlIf the secret kfuse-xmlalready exists, or if you are re-creating it, see Troubleshooting.
Set up the Environment
In the custom-values.yaml file, complete these steps:
- 
In the globalsection:- 
Set the dnsNametag to the customer’s domain name.
- 
Enable the kfuse-samlservice.
 
- 
- 
In the kfuse-authsection:- 
Set the saml-provider-nameto the customer’s SAML provider name.
- 
Set existingSecrettokfuse-auth-saml.When you enable the ‘kfuse-saml’ flag, Kloudfuse automatically creates this secret. 
 
- 
- 
Perform a general upgrade using the custom-values.yaml.See Upgrade Kloudfuse and Upgrade validation. Example Configuration for SAML with Okta:global: dnsName: <your kloudfuse domain name> kfuse-saml: enabled: true kfuse-auth: oauth2-proxy: config: saml-provider-name: "Okta" existingSecret: "kfuse-auth-saml"yaml
Troubleshooting
- 
Open an interactive shell into kfuse-configdb-0pod.kubectl exec -it kfuse-configdb-0 -- bash
- 
Log in to PostgreSQL: psql into the postgres using command -Enter your password when prompted. 
- 
Check if samldbdatabase exists using the following command:\l
- 
Delete and recreate the database samldb:DROP DATABASE samldb; CREATE DATABASE samldb;postgresql