Al configurar un sistema de autenticación basado en SAML para SaltStack Config, debe rellenar diversos campos de información. También es posible utilizar la API para configurar un sistema basado en SAML, pero esto no es recomendable.

Campos de información de SAML

Todos los campos de información de autenticación de SAML son obligatorios. Introduzca la información para la configuración de autenticación de SAML de la siguiente manera.

Nota:

Si necesita ayuda para configurar la conexión, póngase en contacto con el administrador.

Configuración básica

Campo

Descripción

Nombre

El nombre de la conexión de autenticación que utiliza SSE. Este nombre se mostrará en la barra lateral al iniciar sesión en el área de trabajo Autenticación y debe ser único si se desean establecer varias configuraciones. Este nombre no se puede cambiar después de la creación inicial.

Ejemplo: ACME SSO

URI base

La URL base que utiliza la organización en SaltStack Config, también conocida como dirección del servidor host. Esto lleva el formato de FQDN o dirección IP, como https://example.com. Esto no debe terminar con una barra diagonal.

Ejemplo: https://sse.example.com

Identificador de entidad

Un identificador único para este proveedor de servicio de SaltStack Config. Si bien la tradición de SAML es que esto sea una cadena tipo URL, se permite cualquier tipo de cadena. Debe ser único en comparación con las otras aplicaciones de SAML que utiliza la organización. Asegúrese de utilizar el mismo identificador al registrar SaltStack Config como una aplicación.

Ejemplo: https://sse.example.com/saml

Información de la organización

Campo

Descripción

Nombre de empresa

El nombre de la organización.

Nombre para mostrar

El nombre que se mostrará como el nombre de su organización.

Sitio web

La dirección URL del sitio web de la organización. Puede ser cualquier URL, ya que no tiene ninguna incidencia en la funcionalidad de SSO.

Clave privada

La clave privada que generó, también conocida como cert.pem. Esta clave debe tener el formato PEM. Para obtener más información, consulte Crear un certificado de proveedor de servicios.

Clave pública

Las claves públicas y los certificados que generó, también conocidos como cert.pub. Esta clave debe tener el formato PEM, cert.pub. Para obtener más información, consulte Crear un certificado de proveedor de servicios.

Contacto técnico

Campo

Descripción

Nombre

El nombre del empleado que es el principal responsable de la aplicación en la organización. El protocolo SAML requiere esta información que se transferirá al proveedor de SAML. SaltStack Config no utiliza esta información directamente.

Correo electrónico

La dirección de correo electrónico del contacto técnico.

Contacto de soporte

Campo

Descripción

Nombre

El nombre de un empleado al que se puede contactar si el contacto técnico principal de la aplicación no está disponible. El protocolo SAML requiere esta información que se transferirá al proveedor de SAML. SaltStack Config no utiliza esta información directamente.

Correo electrónico

La dirección de correo electrónico del contacto de soporte.

Información del proveedor

Campo

Descripción

Identificador de entidad

El identificador de entidad del proveedor de identidad (Identity Provider, IdP).

Ejemplo de un identificador de entidad de Azure AD: https://sts.windows.net/2f09bc14-a1f0-48ce-8280-0a09e775e40d/

Identificador de usuario

Una referencia a un atributo de SAML asignado que contendrá el identificador de usuario permanente.

Correo electrónico

Una referencia a un atributo de SAML asignado que contendrá la dirección de correo electrónico.

Nombre de usuario

Una referencia a un atributo de SAML asignado que contendrá el nombre de usuario.

URL

La dirección URL que se utiliza para acceder a los endpoints SAML del proveedor de identidad.

Certificado x509

El certificado con formato X.509 que contiene una clave pública integrada generada a través del sistema del proveedor de identidad. Esta clave debe tener el formato PEM.

Comprobaciones de seguridad

Campo

Descripción

Comprobación de instrucciones de atributos

Active esta casilla si desea que SaltStack Config verifique las instrucciones de atributos de SAML para los perfiles de usuario.

Configurar SAML desde la línea de comandos (CLI)

En esta guía, se recomienda configurar SAML mediante la interfaz de usuario SaltStack Config en lugar de la línea de comandos. Estas instrucciones se incluyen como referencia.

Para configurar la mayoría de los estándares de configuración mediante la CLI:

  1. Inicie sesión como usuario de RaaS:
    sudo su raas
  2. OPCIONAL: Este paso solo es necesario si se instaló manualmente SaltStack Config. En el servidor RaaS, instale el archivo .xml de OpenSSL que se incluye en los archivos del instalador. Utilice el siguiente comando:
    yum install xmlsec1-openssl
    Nota:

    RedHat no dispone de acceso fácil a xmlsec1 en ningún repositorio predeterminado. Una solución alternativa puede ser descargar los RPM de una máquina con CentOS y transferirlos a RedHat.

  3. Desplácese hasta el directorio en el que desea guardar el archivo de configuración. Se aceptan todas las rutas de directorio.
  4. Cree un archivo YAML con la información de configuración necesaria que requiera el proveedor de servicios de identidad. Para obtener ejemplos de aplicación de formato a estos archivos de configuración, consulte Archivos de configuración de muestra.
    Nota:

    Para obtener descripciones de los distintos campos, consulte Campos de información de SAML.

  5. Ejecute el archivo de configuración mediante los siguientes comandos:
    raas save_sso_config <filepath>

Archivos de configuración de muestra

Archivo de configuración de SAML de muestra para Google

Reemplace el texto de marcador de posición de la siguiente muestra por la información que proporciona su proveedor de identidad:

name: Google
backend: social_core.backends.saml.SAMLAuth
settings:
  base_uri: https://example.com
  saml_sp_entity_id: raas
  saml_org_info:
    en-US:
    name: Name of Your Organization
    displayname: Display Name for Your Organization
    url: https://example.com
  saml_technical_contact:
    givenName: Name of Your Technical Contact
    emailAddress: email@my_technical_contact.com
  saml_support_contact:
    givenName: Name of Your Support Contact
    emailAddress: email@my_support_contact.com
  saml_enabled_idps:
    saml:
      entity_id: https://accounts.google.com/o/your_organization_id
      attr_user_permanent_id: Your organization's permanent ID
      attr_email: email@my_email_with_identity_provider.com
      attr_username: Your organization's username for the IdP
      url: https://accounts.google.com/o/saml2/your_organization_id
      x509cert: |
        -----BEGIN CERTIFICATE-----
        Insert certificate block of text here
        -----END CERTIFICATE-----
      saml_sp_private_key: |
        -----BEGIN PRIVATE KEY-----
        Insert private key block of text here
        -----END PRIVATE KEY-----
      saml_sp_public_cert: |
        -----BEGIN CERTIFICATE-----
        Insert certificate block of text here
        -----END CERTIFICATE-----

Archivo de configuración de SAML de muestra para Okta

Reemplace el texto de marcador de posición de la siguiente muestra por la información que proporciona su proveedor de identidad:

name: Okta
backend: social_core.backends.saml.SAMLAuth
settings:
  base_uri: https://example.com
  saml_sp_entity_id: https://example.com/auth/complete/saml
  saml_org_info:
    en-US:
    name: Name of Your Organization
    displayname: Display Name for Your Organization
    url: https://example.com
 saml_technical_contact:
   givenName: Name of Your Technical Contact
   emailAddress: email@my_technical_contact.com
saml_support_contact:
  givenName: Name of Your Support Contact
  emailAddress: email@my_support_contact.com
saml_security_config:
  wantAttributeStatement: False
saml_enabled_idps:
  okta:
    entity_id: https://www.okta.com/your_organization_id
    attr_user_permanent_id: Your organization's permanent ID
    attr_email: email@my_email_with_identity_provider.com
    attr_username: Your organization's username for the IdP
    url: https://example.okta.com/app/your_organization_id
    x509cert: |
      -----BEGIN CERTIFICATE-----
      Insert certificate block of text here
      -----END CERTIFICATE-----
    saml_sp_private_key: |
      -----BEGIN PRIVATE KEY-----
      Insert private key block of text here
      -----END PRIVATE KEY-----
    saml_sp_public_cert: |
      -----BEGIN CERTIFICATE-----
      Insert certificate block of text here
      -----END CERTIFICATE-----

Archivo de configuración de OIDC de muestra para Google

Reemplace el texto de marcador de posición de la siguiente muestra por la información que proporciona su proveedor de identidad:

name: Name of Your Organization
backend: social_core.backends.google_openidconnect.GoogleOpenIdConnect
settings:
  base_uri: example.com
  google_openidconnect_key: your_id.apps.googleusercontent.com
  google_openidconnect_secret: your_secret

Actualizar una configuración de SSO desde la línea de comandos (CLI)

Para actualizar un estándar de configuración desde la CLI:

  1. Inicie sesión como usuario de RaaS:
    sudo su raas
  2. Desplácese hasta el directorio en el que almacenó el archivo de configuración. Actualice el archivo de configuración según sea necesario.
  3. Guarde el archivo de configuración con el siguiente comando:
    raas save_sso_config <filepath>

Eliminar una configuración de SSO desde la línea de comandos (CLI)

Si se dispone de acceso a la interfaz de usuario de SaltStack Config, se recomienda eliminar la configuración de SSO mediante la interfaz de usuario. Sin embargo, es posible eliminar una configuración de SSO mediante la API (RaaS) si es necesario.

Para eliminar una configuración de SSO, debe encontrar la indicación asignada a la configuración que desea eliminar. La indicación es una representación del nombre de la configuración separada por un guión - con todas letras en minúscula. Por ejemplo, la indicación puede ser nombre-de-su-organización. Para SAML con Google, la indicación es google.

  1. En la API de (RaaS), genere una lista de los back-end de SSO mediante el siguiente comando:
    client.api.settings.get_sso_backends()
  2. En la lista de back-end de SSO, busque la indicación de la configuración que desea eliminar. A continuación, introduzca el siguiente comando y sustituya el texto de marcador de posición por la indicación de la configuración:
    client.api.settings.delete_sso_config('slug-for-your-configuration')