Skip to main content
SnapCenter software
La versione in lingua italiana fornita proviene da una traduzione automatica. Per eventuali incoerenze, fare riferimento alla versione in lingua inglese.

Gestire l'autenticazione a più fattori (MFA) utilizzando REST API, PowerShell e SCCLI

L'accesso MFA è supportato da browser, REST API, PowerShell e SCCLI. L'MFA è supportato tramite un gestore di identità AD FS. È possibile abilitare MFA, disabilitare MFA e configurare MFA da GUI, REST API, PowerShell e SCCLI.

Imposta AD FS come OAuth/OIDC

Configurare AD FS utilizzando la procedura guidata GUI di Windows

  1. Passare a Dashboard di Server Manager > Strumenti > Gestione ADFS.

  2. Passare a ADFS > Gruppi di applicazioni.

    1. Fare clic con il tasto destro del mouse su Gruppi di applicazioni.

    2. Selezionare Aggiungi gruppo di applicazioni e immettere Nome applicazione.

    3. Selezionare Applicazione server.

    4. Fare clic su Avanti.

  3. Copia Identificatore cliente.

    Questo è l'ID cliente. .. Aggiungere l'URL di callback (URL del server SnapCenter ) nell'URL di reindirizzamento. .. Fare clic su Avanti.

  4. Seleziona Genera segreto condiviso.

    Copia il valore segreto. Questo è il segreto del cliente. .. Fare clic su Avanti.

  5. Nella pagina Riepilogo, fare clic su Avanti.

    1. Nella pagina Completa, fare clic su Chiudi.

  6. Fare clic con il pulsante destro del mouse sul Gruppo applicazioni appena aggiunto e selezionare Proprietà.

  7. Selezionare Aggiungi applicazione da Proprietà app.

  8. Fare clic su Aggiungi applicazione.

    Selezionare Web API e fare clic su Avanti.

  9. Nella pagina Configura API Web, immettere l'URL del server SnapCenter e l'identificatore client creati nel passaggio precedente nella sezione Identificatore.

    1. Fare clic su Aggiungi.

    2. Fare clic su Avanti.

  10. Nella pagina Scegli criterio di controllo degli accessi, seleziona il criterio di controllo in base alle tue esigenze (ad esempio, Consenti a tutti e richiedi MFA) e fai clic su Avanti.

  11. Nella pagina Configura autorizzazione applicazione, per impostazione predefinita openid è selezionato come ambito, fare clic su Avanti.

  12. Nella pagina Riepilogo, fare clic su Avanti.

    Nella pagina Completa, fare clic su Chiudi.

  13. Nella pagina Proprietà applicazione di esempio, fare clic su OK.

  14. Token JWT emesso da un server di autorizzazione (AD FS) e destinato a essere utilizzato dalla risorsa.

    La rivendicazione "aud" o audience di questo token deve corrispondere all'identificatore della risorsa o dell'API Web.

  15. Modifica la WebAPI selezionata e verifica che l'URL di callback (URL del server SnapCenter ) e l'identificatore client siano stati aggiunti correttamente.

    Configurare OpenID Connect per fornire un nome utente come claim.

  16. Aprire lo strumento Gestione AD FS che si trova nel menu Strumenti in alto a destra di Server Manager.

    1. Selezionare la cartella Gruppi di applicazioni dalla barra laterale sinistra.

    2. Selezionare l'API Web e fare clic su MODIFICA.

    3. Vai alla scheda Regole di trasformazione dell'emissione

  17. Fare clic su Aggiungi regola.

    1. Selezionare Invia attributi LDAP come claim nel menu a discesa Modello regola claim.

    2. Fare clic su Avanti.

  18. Inserisci il nome della Regola di rivendicazione.

    1. Selezionare Active Directory nel menu a discesa Archivio attributi.

    2. Selezionare User-Principal-Name nel menu a discesa LDAP Attribute e UPN nel menu a discesa O*outgoing Claim Type*.

    3. Fare clic su Fine.

Creare un gruppo di applicazioni utilizzando i comandi di PowerShell

È possibile creare il gruppo di applicazioni, l'API Web e aggiungere l'ambito e le attestazioni utilizzando i comandi di PowerShell. Questi comandi sono disponibili in formato script automatizzato. Per maggiori informazioni vedere <link all'articolo della Knowledge Base>.

  1. Creare il nuovo gruppo di applicazioni in AD FS utilizzando il seguente comando.

    New-AdfsApplicationGroup -Name $ClientRoleIdentifier -ApplicationGroupIdentifier $ClientRoleIdentifier

    `ClientRoleIdentifier`nome del tuo gruppo di applicazioni

    `redirectURL`URL valido per il reindirizzamento dopo l'autorizzazione

  2. Creare l'applicazione server AD FS e generare il segreto client.

    Add-AdfsServerApplication -Name "$ClientRoleIdentifier - Server app" -ApplicationGroupIdentifier $ClientRoleIdentifier -RedirectUri $redirectURL -Identifier $identifier -GenerateClientSecret

  3. Creare l'applicazione ADFS Web API e configurare il nome del criterio che deve utilizzare.

    $identifier = (New-Guid).Guid

    Add-AdfsWebApiApplication -ApplicationGroupIdentifier $ClientRoleIdentifier -Name "App Web API"

    -Identifier $identifier -AccessControlPolicyName "Permit everyone"

  4. Ottieni l'ID client e il segreto client dall'output dei seguenti comandi perché vengono mostrati solo una volta.

    "client_id = $identifier"

    "client_secret: "$($ADFSApp.ClientSecret)

  5. Concedere all'applicazione AD FS le autorizzazioni allatclaims e openid.

    Grant-AdfsApplicationPermission -ClientRoleIdentifier $identifier -ServerRoleIdentifier $identifier -ScopeNames @('openid')

    $transformrule = @"

    @RuleTemplate = "LdapClaims"

    @RuleName = "AD User properties and Groups"

    c:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname", Issuer ==

    "AD AUTHORITY"]

    ⇒ issue(store = "Active Directory", types = ("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn"), query = ";userPrincipalName;{0}", param = c.Value);

    "@

  6. Scrivere il file delle regole di trasformazione.

    $transformrule |Out-File -FilePath .\issueancetransformrules.tmp -force -Encoding ascii $relativePath = Get-Item .\issueancetransformrules.tmp

  7. Assegna un nome all'applicazione Web API e definisci le sue regole di trasformazione del rilascio utilizzando un file esterno.

    Set-AdfsWebApiApplication -Name "$ClientRoleIdentifier - Web API" -TargetIdentifier

    $identifier -Identifier $identifier,$redirectURL -IssuanceTransformRulesFile

    $relativePath

Aggiorna il tempo di scadenza del token di accesso

È possibile aggiornare la scadenza del token di accesso utilizzando il comando PowerShell.

Informazioni su questo compito

  • Un token di accesso può essere utilizzato solo per una combinazione specifica di utente, client e risorsa. I token di accesso non possono essere revocati e sono validi fino alla loro scadenza.

  • Per impostazione predefinita, il tempo di scadenza di un token di accesso è di 60 minuti. Questo tempo di scadenza minimo è sufficiente e proporzionato. È necessario fornire un valore sufficiente per evitare lavori critici per l'azienda in corso.

Fare un passo

Per aggiornare la scadenza del token di accesso per un gruppo di applicazioni WebApi, utilizzare il seguente comando nel server AD FS.

+ Set-AdfsWebApiApplication -TokenLifetime 3600 -TargetName "<Web API>"

Ottieni il token portatore da AD FS

Dovresti compilare i parametri menzionati di seguito in qualsiasi client REST (come Postman) e ti verrà chiesto di inserire le credenziali utente. Inoltre, dovresti inserire l'autenticazione a due fattori (qualcosa che hai e qualcosa che sei) per ottenere il token portatore.

+ La validità del token portatore è configurabile dal server AD FS per applicazione e il periodo di validità predefinito è di 60 minuti.

Campo

Valore

Tipo di sovvenzione

Codice di autorizzazione

URL di richiamata

Se non si dispone di un URL di callback, immettere l'URL di base dell'applicazione.

URL di autorizzazione

[nome-dominio-adfs]/adfs/oauth2/authorize

URL del token di accesso

[nome-dominio-adfs]/adfs/oauth2/token

ID cliente

Inserisci l'ID client AD FS

Segreto del cliente

Inserisci il segreto del client AD FS

Ambito

OpenID

Autenticazione del client

Invia come intestazione AUTH di base

Risorsa

Nella scheda Opzioni avanzate, aggiungi il campo Risorsa con lo stesso valore dell'URL di callback, che viene fornito come valore "aud" nel token JWT.