Integrare l'accesso Single Sign-On di Microsoft Entra con Maverics Identity Orchestrator SAML Connessione or

Attenzione

Questo articolo fa riferimento a CentOS, una distribuzione Linux prossima allo stato EOL (End of Life, fine del ciclo di vita). Prendere in considerazione l'uso e il piano di conseguenza. Per altre informazioni, vedere le linee guida per la fine della vita di CentOS.

Maverics Identity Orchestrator di Strata offre un modo semplice per integrare applicazioni locali con Microsoft Entra ID per l'autenticazione e il controllo di accesso. Maverics Orchestrator è in grado di modernizzare l'autenticazione e l'autorizzazione per le app che attualmente si basano su intestazioni, cookie e altri metodi di autenticazione proprietari. Le istanze di Maverics Orchestrator possono essere distribuite in locale o nel cloud.

Questa esercitazione sull'accesso ibrido illustra come eseguire la migrazione di un'applicazione Web locale attualmente protetta da un prodotto legacy per la gestione degli accessi Web per usare Microsoft Entra ID per l'autenticazione e il controllo di accesso. I passaggi principali sono indicati di seguito.

  1. Configurare Maverics Orchestrator
  2. Proxy di un'applicazione
  3. Registrare un'applicazione aziendale in Microsoft Entra ID
  4. Eseguire l'autenticazione tramite Azure e autorizzare l'accesso all'applicazione
  5. Aggiungere intestazioni per l'accesso facile alle applicazioni
  6. Usare più applicazioni

Prerequisiti

  • Una sottoscrizione di Microsoft Entra. Se non si possiede una sottoscrizione, è possibile ottenere un account gratuito.
  • Sottoscrizione di Maverics Identity Orchestrator SAML Connector abilitata per l'accesso SSO. Per ottenere il software Maverics, contattare strata sales.
  • Almeno un'applicazione che usa l'autenticazione basata su intestazione. Gli esempi interagiscono con un'applicazione denominata Connessione ulum, ospitata in https://app.connectulum.com.
  • Un computer Linux per ospitare Maverics Orchestrator
    • Sistema operativo: RHEL 7.7 o versione successiva, CentOS 7+
    • Disco: >= 10 GB
    • Memoria: >= 4 GB
    • Porte: 22 (SSH/SCP), 443, 7474
    • Accesso radice per le attività di installazione/amministrazione
    • Uscita di rete dal server che ospita Maverics Identity Orchestrator all'applicazione protetta

Passaggio 1: Configurare Maverics Orchestrator

Installare Maverics

  1. Ottenere la versione più recente di Maverics RPM. Copiare il pacchetto nel sistema in cui si vuole installare il software Maverics.

  2. Installare il pacchetto Maverics, sostituendo maverics.rpm con il nome del file personale.

    sudo rpm -Uvf maverics.rpm

    Dopo l'installazione, Maverics verrà eseguito come servizio in systemd. Per verificare che il servizio sia in esecuzione, eseguire il comando seguente:

    sudo systemctl status maverics

  3. Per riavviare Orchestrator e seguire i log, è possibile eseguire il comando seguente:

    sudo service maverics restart; sudo journalctl --identifier=maverics -f

Dopo aver installato Maverics, il file predefinito maverics.yaml viene creato nella /etc/maverics directory . Prima di modificare la configurazione in modo da includere appgateways e connectors, il file di configurazione sarà simile al seguente:

# © Strata Identity Inc. 2020. All Rights Reserved. Patents Pending.

version: 0.1
listenAddress: ":7474"

Configurare DNS

IL DNS sarà utile in modo che non sia necessario ricordare l'INDIRIZZO IP del server Orchestrator.

Modificare il file host del computer del browser (il computer portatile) usando un ip ipotetico dell'agente di orchestrazione 12.34.56.78. Nei sistemi operativi basati su Linux, questo file si trova in /etc/hosts. In Windows si trova in C:\windows\system32\drivers\etc.

12.34.56.78 sonar.maverics.com
12.34.56.78 connectulum.maverics.com

Per verificare che DNS sia configurato come previsto, è possibile effettuare una richiesta all'endpoint di stato di Orchestrator. Dal browser richiedere http://sonar.maverics.com:7474/status.

Configurare TLS

La comunicazione tramite canali sicuri per comunicare con l'agente di orchestrazione è fondamentale per mantenere la sicurezza. È possibile aggiungere una coppia di certificati/chiavi nella tls sezione per ottenere questo risultato.

Per generare un certificato autofirmato e una chiave per il server Orchestrator, eseguire il comando seguente dall'interno della /etc/maverics directory:

openssl req -new -newkey rsa:4096 -x509 -sha256 -days 365 -nodes -out maverics.crt -keyout maverics.key

Nota

Per gli ambienti di produzione, è probabile che si voglia usare un certificato firmato da una CA nota per evitare avvisi nel browser. Encrypt è un'opzione valida e gratuita se si sta cercando una CA attendibile.

A questo punto, usare il certificato e la chiave appena generati per Orchestrator. Il file di configurazione dovrebbe ora contenere questo codice:

version: 0.1
listenAddress: ":443"

tls:
  maverics:
    certFile: /etc/maverics/maverics.crt
    keyFile: /etc/maverics/maverics.key

Per verificare che TLS sia configurato come previsto, riavviare il servizio Maverics ed effettuare una richiesta all'endpoint di stato.

Passaggio 2: Proxy di un'applicazione

Configurare quindi il proxy di base in Orchestrator usando appgateways. Questo passaggio consente di verificare che Orchestrator disponga della connettività necessaria all'applicazione protetta.

Il file di configurazione dovrebbe ora contenere questo codice:

version: 0.1
listenAddress: ":443"

tls:
  maverics:
    certFile: /etc/maverics/maverics.crt
    keyFile: /etc/maverics/maverics.key

appgateways:
  - name: sonar
    location: /
    # Replace https://app.sonarsystems.com with the address of your protected application
    upstream: https://app.sonarsystems.com

Per verificare che il proxy funzioni come previsto, riavviare il servizio Maverics e effettuare una richiesta all'applicazione tramite il proxy Maverics. Facoltativamente, è possibile effettuare una richiesta a risorse dell'applicazione specifiche.

Passaggio 3: Registrare un'applicazione aziendale in Microsoft Entra ID

Creare ora una nuova applicazione aziendale in Microsoft Entra ID che verrà usata per l'autenticazione degli utenti finali.

Nota

Quando si usano funzionalità di Microsoft Entra come l'accesso condizionale, è importante creare un'applicazione aziendale per ogni applicazione locale. Ciò consente l'accesso condizionale per app, la valutazione dei rischi per app, le autorizzazioni assegnate per app e così via. In genere, un'applicazione aziendale in Microsoft Entra ID esegue il mapping a un connettore di Azure in Maverics.

Per registrare un'applicazione aziendale in Microsoft Entra ID:

  1. Nel tenant di Microsoft Entra passare ad Applicazioni aziendali e quindi selezionare Nuova applicazione. Nella raccolta Microsoft Entra cercare Maverics Identity Orchestrator SAML Connessione or e quindi selezionarlo.

  2. Nel riquadro Proprietà di Maverics Identity Orchestrator SAML Connessione or impostare Assegnazione utente obbligatoria? su No per consentire all'applicazione di funzionare per tutti gli utenti nella directory.

  3. Nel riquadro Panoramica di Maverics Identity Orchestrator SAML Connector selezionare Configura l'accesso Single Sign-On e quindi selezionare SAML.

  4. Nel riquadro SAML-based sign on (Accesso basato su SAML) di Maverics Identity Orchestrator SAML Connector modificare Configurazione SAML di base selezionando il pulsante Modifica (icona a forma di matita).

    Screenshot del pulsante Modifica per

  5. Immettere un ID entità di https://sonar.maverics.com. L'ID entità deve essere univoco tra le app nel tenant e può essere un valore arbitrario. Questo valore verrà usato quando si definisce il campo per il samlEntityID connettore di Azure nella sezione successiva.

  6. Immettere un URL di risposta di https://sonar.maverics.com/acs. Questo valore verrà usato quando si definisce il campo per il samlConsumerServiceURL connettore di Azure nella sezione successiva.

  7. Immettere un URL di accesso di https://sonar.maverics.com/. Questo campo non verrà usato da Maverics, ma è necessario in Microsoft Entra ID per consentire agli utenti di accedere all'applicazione tramite il portale di Microsoft Entra App personali.

  8. Seleziona Salva.

  9. Nella sezione Certificato di firma SAML selezionare il pulsante Copia per copiare il valore dell'URL dei metadati di federazione dell'app e quindi salvarlo nel computer.

    Screenshot del pulsante Copia per

Passaggio 4: Eseguire l'autenticazione tramite Azure e autorizzare l'accesso all'applicazione

Successivamente, inserire l'applicazione aziendale appena creata per l'uso configurando il connettore di Azure in Maverics. Questa connectors configurazione associata al idps blocco consente a Orchestrator di autenticare gli utenti.

Il file di configurazione dovrebbe ora contenere il codice seguente. Assicurarsi di sostituire METADATA_URL con il valore dell'URL dei metadati di federazione dell'app del passaggio precedente.

version: 0.1
listenAddress: ":443"

tls:
  maverics:
    certFile: /etc/maverics/maverics.crt
    keyFile: /etc/maverics/maverics.key

idps:
  - name: azureSonarApp

appgateways:
  - name: sonar
    location: /
    # Replace https://app.sonarsystems.com with the address of your protected application
    upstream: https://app.sonarsystems.com

    policies:
      - resource: /
        allowIf:
          - equal: ["{{azureSonarApp.authenticated}}", "true"]

connectors:
  - name: azureSonarApp
    type: azure
    authType: saml
    # Replace METADATA_URL with the App Federation Metadata URL
    samlMetadataURL: METADATA_URL
    samlConsumerServiceURL: https://sonar.maverics.com/acs
    samlEntityID: https://sonar.maverics.com

Per verificare che l'autenticazione funzioni come previsto, riavviare il servizio Maverics e effettuare una richiesta a una risorsa dell'applicazione tramite il proxy Maverics. È necessario essere reindirizzati ad Azure per l'autenticazione prima di accedere alla risorsa.

Passaggio 5: Aggiungere intestazioni per l'accesso facile alle applicazioni

Non si inviano ancora intestazioni all'applicazione upstream. headers Aggiungere ora alla richiesta mentre passa attraverso il proxy Maverics per consentire all'applicazione upstream di identificare l'utente.

Il file di configurazione dovrebbe ora contenere questo codice:

version: 0.1
listenAddress: ":443"

tls:
  maverics:
    certFile: /etc/maverics/maverics.crt
    keyFile: /etc/maverics/maverics.key

idps:
  - name: azureSonarApp

appgateways:
  - name: sonar
    location: /
    # Replace https://app.sonarsystems.com with the address of your protected application
    upstream: https://app.sonarsystems.com

    policies:
      - resource: /
        allowIf:
          - equal: ["{{azureSonarApp.authenticated}}", "true"]

    headers:
      email: azureSonarApp.name
      firstname: azureSonarApp.givenname
      lastname: azureSonarApp.surname

connectors:
  - name: azureSonarApp
    type: azure
    authType: saml
    # Replace METADATA_URL with the App Federation Metadata URL
    samlMetadataURL: METADATA_URL
    samlConsumerServiceURL: https://sonar.maverics.com/acs
    samlEntityID: https://sonar.maverics.com

Per verificare che l'autenticazione funzioni come previsto, effettuare una richiesta a una risorsa dell'applicazione tramite il proxy Maverics. L'applicazione protetta dovrebbe ora ricevere intestazioni nella richiesta.

È possibile modificare le chiavi di intestazione se l'applicazione prevede intestazioni diverse. Tutte le attestazioni restituite dall'ID Microsoft Entra come parte del flusso SAML sono disponibili per l'uso nelle intestazioni. Ad esempio, è possibile includere un'altra intestazione di secondary_email: azureSonarApp.email, dove azureSonarApp è il nome del connettore e email è un'attestazione restituita da Microsoft Entra ID.

Passaggio 6: Usare più applicazioni

Si esaminerà ora cosa è necessario per eseguire il proxy a più applicazioni che si trovano in host diversi. Per ottenere questo passaggio, configurare un altro gateway app, un'altra applicazione aziendale in Microsoft Entra ID e un altro connettore.

Il file di configurazione dovrebbe ora contenere questo codice:

version: 0.1
listenAddress: ":443"

tls:
  maverics:
    certFile: /etc/maverics/maverics.crt
    keyFile: /etc/maverics/maverics.key

idps:
  - name: azureSonarApp
  - name: azureConnectulumApp

appgateways:
  - name: sonar
    host: sonar.maverics.com
    location: /
    # Replace https://app.sonarsystems.com with the address of your protected application
    upstream: https://app.sonarsystems.com

    policies:
      - resource: /
        allowIf:
          - equal: ["{{azureSonarApp.authenticated}}", "true"]

    headers:
      email: azureSonarApp.name
      firstname: azureSonarApp.givenname
      lastname: azureSonarApp.surname

  - name: connectulum
    host: connectulum.maverics.com
    location: /
    # Replace https://app.connectulum.com with the address of your protected application
    upstream: https://app.connectulum.com

    policies:
      - resource: /
        allowIf:
          - equal: ["{{azureConnectulumApp.authenticated}}", "true"]

    headers:
      email: azureConnectulumApp.name
      firstname: azureConnectulumApp.givenname
      lastname: azureConnectulumApp.surname

connectors:
  - name: azureSonarApp
    type: azure
    authType: saml
    # Replace METADATA_URL with the App Federation Metadata URL
    samlMetadataURL: METADATA_URL
    samlConsumerServiceURL: https://sonar.maverics.com/acs
    samlEntityID: https://sonar.maverics.com

  - name: azureConnectulumApp
    type: azure
    authType: saml
    # Replace METADATA_URL with the App Federation Metadata URL
    samlMetadataURL: METADATA_URL
    samlConsumerServiceURL: https://connectulum.maverics.com/acs
    samlEntityID: https://connectulum.maverics.com

È possibile che il codice aggiunga un host campo alle definizioni del gateway app. Il host campo consente a Maverics Orchestrator di distinguere l'host upstream da cui eseguire il proxy del traffico.

Per verificare che il gateway app appena aggiunto funzioni come previsto, effettuare una richiesta a https://connectulum.maverics.com.

Scenari avanzati

Migrazione delle identità

Non è possibile mantenere lo strumento di gestione degli accessi Web di fine vita, ma non è possibile eseguire la migrazione degli utenti senza reimpostazioni di massa delle password? Maverics Orchestrator supporta la migrazione delle identità tramite migrationgateways.

Gateway server Web

Non si vuole rielaborare la rete e il traffico proxy attraverso Maverics Orchestrator? Non è un problema. Maverics Orchestrator può essere associato a gateway server Web (moduli) per offrire le stesse soluzioni senza proxy.

Conclusa

A questo punto, è stato installato Maverics Orchestrator, è stata creata e configurata un'applicazione aziendale in Microsoft Entra ID e si è configurato Orchestrator per il proxy a un'applicazione protetta, richiedendo l'autenticazione e l'applicazione dei criteri. Per altre informazioni su come usare Maverics Orchestrator per i casi d'uso di gestione delle identità distribuite, contattare Strata.

Passaggi successivi