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.
-
-
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.k 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