Configure SSO Authentication with SAML :: Kloudfuse Docs

Configure SSO Authentication with SAML

Set up SAML in Customer Environment

  1. Set up your SAML based on the steps in BoxyHQ documentation.

Choose your IdP:

  1. Use these values in the Service provider details section:
  1. Generate and save the Metadata (XML file).

  2. Share the metadata with Kloudfuse support.

Set up SAML in Kloudfuse

To set up SAML in Kloudfuse, you must:

Set up Metadata Secret

  1. 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
  1. Save the kfuse.xml file in the customer’s terminal.

  2. Create the generic kfuse-xml secret in the customer’s cluster and namespace by running the following command:

    kubectl create secret generic kfuse-xml --from-file=kfuse.xml
    
If the secret kfuse-xml already exists, or if you are re-creating it, see Troubleshooting.

Set up the Environment

In the custom-values.yaml file, complete these steps:

  1. In the global section:

    1. Set the dnsName tag to the customer’s domain name.
    2. Enable the kfuse-saml service.
  2. In the kfuse-auth section:

    1. Set the saml-provider-name to the customer’s SAML provider name.
    2. Set existingSecret to kfuse-auth-saml.

When you enable the ‘kfuse-saml’ flag, Kloudfuse automatically creates this secret.

  1. Perform a general upgrade using the custom-values.yaml.

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"

Troubleshooting

  1. Open an interactive shell into kfuse-configdb-0 pod.
   kubectl exec -it kfuse-configdb-0 -- bash
  1. Log in to PostgreSQL:
   psql into the postgres using command -

Enter your password when prompted. 3. Check if samldb database exists using the following command:

   \l
  1. Delete and recreate the database samldb:
   DROP DATABASE samldb;
   CREATE DATABASE samldb;