Quando si configura un sistema di autenticazione basato su SAML per SaltStack Config, è necessario compilare vari campi di informazioni. È inoltre possibile utilizzare l'API per configurare un sistema basato su SAML, ma non è consigliato.

Campi delle informazioni SAML

Tutti i campi delle informazioni di autenticazione SAML sono obbligatori. Immettere le informazioni per la configurazione dell'autenticazione SAML come indicato di seguito.

Nota:

Per assistenza durante la configurazione della connessione, contattare l'amministratore.

Di base

Campo

Descrizione

Nome

Il nome della connessione di autenticazione utilizzata da SSE. Questo nome verrà visualizzato nella barra laterale quando si è connessi all'area di lavoro Autenticazione e deve essere univoco se si impostano più configurazioni. Questo nome non può essere modificato dopo la creazione iniziale.

Esempio: Acme SSO

URI di base

L'URL di base utilizzato dall'organizzazione in SaltStack Config, noto anche come indirizzo del server host. È formattato come nome di dominio completo o indirizzo IP, ad esempio https://example.com. Non deve terminare con un carattere barra.

Esempio: https://sse.example.com

ID entità

Un ID univoco per questo provider di servizi SaltStack Config. Sebbene tradizionalmente SAML sia una stringa simile a un URL, è consentito qualsiasi tipo di stringa. Deve essere univoco rispetto alle altre applicazioni SAML utilizzate nell'organizzazione. Assicurarsi di utilizzare lo stesso ID durante la registrazione di SaltStack Config come applicazione.

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

Informazioni sull'organizzazione

Campo

Descrizione

Nome società

Il nome dell'organizzazione.

Nome visualizzato

Il nome da visualizzare come nome dell'organizzazione.

Sito Web

URL del sito Web dell'organizzazione. Questo URL può essere qualsiasi cosa e non influenza la funzionalità SSO.

Chiave privata

La chiave privata generata, nota anche come cert.pem. La chiave deve essere in formato PEM.

Chiave pubblica

Le chiavi pubbliche e i certificati generati, noti anche come cert.pub. La chiave deve essere in formato PEM.

Contatto tecnico

Campo

Descrizione

Nome

Il nome del dipendente responsabile principalmente dell'applicazione nell'organizzazione. Queste informazioni sono richieste dal protocollo SAML e verranno trasmesse al provider SAML. SaltStack Config non usa direttamente queste informazioni.

Email

Indirizzo email del contatto tecnico.

Contatto assistenza

Campo

Descrizione

Nome

Il nome di un dipendente che può essere contattato se il contatto tecnico principale dell'applicazione non è disponibile. Queste informazioni sono richieste dal protocollo SAML e verranno trasmesse al provider SAML. SaltStack Config non usa direttamente queste informazioni.

Email

L'indirizzo email del contatto assistenza.

Informazioni sul provider

Campo

Descrizione

ID entità

ID entità del provider di identità.

Esempio di un ID entità di Azure AD: https://sts.windows.net/2f09bc14-a1f0-48ce-8280-0a09e775e40d/

ID utente

Un riferimento a un attributo SAML mappato che conterrà l'ID utente permanente.

Email

Un riferimento a un attributo SAML mappato che conterrà l'indirizzo email.

Nome utente

Un riferimento a un attributo SAML mappato che conterrà il nome utente.

URL

URL utilizzato per accedere agli endpoint SAML del provider di identità.

Certificato x509

Il certificato in formato X.509 con una chiave pubblica incorporata generata tramite il sistema del provider di identità. Questa chiave deve essere in formato PEM.

Controlli di sicurezza

Campo

Descrizione

Controllo istruzioni attributo

Selezionare questa casella se si desidera che SaltStack Config controlli le istruzioni degli attributi SAML per i profili utente.

Configurazione di SAML dalla riga di comando (CLI)

Questa guida consiglia vivamente di configurare SAML utilizzando l'interfaccia utente di SaltStack Config anziché la riga di comando. Queste istruzioni sono incluse come riferimento.

Per configurare la maggior parte degli standard di configurazione utilizzando la CLI:

  1. Accesso come utente RaaS:
    sudo su raas
  2. FACOLTATIVO: questo passaggio è necessario solo se SaltStack Config è stato installato manualmente. Nel server RaaS, installare il file .xml di OpenSSL incluso nei file del programma di installazione. Usare il comando seguente:
    yum install xmlsec1-openssl
    Nota:

    xmlsec1 non è immediatamente disponibile in tutti i repository predefiniti di RedHat. Una possibile soluzione consiste nello scaricare gli RPM da una macchina CentOS e trasferirli a RedHat.

  3. Passare alla directory in cui si intende salvare il file di configurazione. Qualsiasi percorso della directory è accettabile.
  4. Creare un file YAML con le informazioni di configurazione necessarie richieste dal provider di servizi di identità. Per esempi sulla formattazione di questi file di configurazione, vedere File di configurazione di esempio.
    Nota:

    Per le descrizioni dei vari campi, vedere Campi delle informazioni SAML.

  5. Eseguire il file di configurazione utilizzando i seguenti comandi:
    raas save_sso_config <filepath>

File di configurazione di esempio

File di configurazione SAML di esempio per Google

Sostituire il testo del segnaposto nell'esempio seguente con le informazioni fornite dal provider di identità:

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

File di configurazione SAML di esempio per Okta

Sostituire il testo del segnaposto nell'esempio seguente con le informazioni fornite dal provider di identità:

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

File di configurazione OIDC di esempio per Google

Sostituire il testo del segnaposto nell'esempio seguente con le informazioni fornite dal provider di identità:

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

Aggiornamento di una configurazione SSO dalla riga di comando (CLI)

Per aggiornare uno standard di configurazione dalla CLI:

  1. Accesso come utente RaaS:
    sudo su raas
  2. Passare alla directory in cui è stato archiviato il file di configurazione. Aggiornare il file di configurazione secondo necessità.
  3. Salvare il file di configurazione utilizzando il seguenti comando:
    raas save_sso_config <filepath>

Eliminazione di una configurazione SSO dalla riga di comando (CLI)

Se è disponibile l'accesso all'interfaccia utente di SaltStack Config, è consigliabile eliminare una configurazione SSO mediante l'interfaccia utente. Tuttavia, è possibile eliminare una configurazione SSO utilizzando l'API (RaaS), se necessario.

Per eliminare una configurazione SSO, è necessario trovare lo slug assegnato alla configurazione che si desidera eliminare. Lo slug è una rappresentazione del nome della configurazione separata da un segno di trattino - con tutte le lettere minuscole. Ad esempio, lo slug potrebbe essere name-of-your-organization. Per SAML con Google, lo slug è google.

  1. Nell'API (RaaS), generare un elenco di back-end SSO utilizzando il comando seguente:
    client.api.settings.get_sso_backends()
  2. Nell'elenco di back-end SSO, trovare lo slug per la configurazione che si desidera eliminare. Immettere quindi il comando seguente, sostituendo il testo del segnaposto con lo slug di configurazione:
    client.api.settings.delete_sso_config('slug-for-your-configuration')