For the complete documentation index, see llms.txt. This page is also available as Markdown.

Certificato client

L'autenticazione con certificato client garantisce che i computer client dispongano di un determinato certificato durante la connessione a PowerShell Universal. La verifica del certificato viene gestita durante la negoziazione HTTP, quindi interessa l'intero server web e non può essere configurata per singola route.

Per informazioni dettagliate sull'autenticazione con certificato client in ASP.NET Core 5.0, può consultare la documentazione Microsoft qui.

Abilitare l'autenticazione con certificato client

Sarà necessario abilitare l'hosting HTTPS e attivare l'autenticazione con certificato client. Innanzitutto, si assicuri di aver selezionato un certificato HTTP e di aver impostato ClientCertificateMode su RequireCertificate. Queste impostazioni possono essere definite all'interno del file appsettings.json.

"Kestrel": {
  "Endpoints": {
    "HTTPS": {
      "Url": "https://*:5000",
      "ClientCertificateMode": "RequireCertificate",
      "Certificate": {
        "Subject": "localhost",
        "Store": "My",
        "Location": "LocalMachine",
        "AllowInvalid": "true"
      }
    }
  },
  "RedirectToHttps": "false"
},

Successivamente, sarà necessario abilitare l'autenticazione con certificato client.

Autorizzazione

Può utilizzare il file roles.ps1 per valutare il certificato fornito dal client. Questo può essere usato per determinare quali ruoli riceverà l'utente durante la connessione a PSU.

Per valutare le proprietà disponibili durante l'autorizzazione, può serializzare la variabile $user fornita alle funzioni dei criteri dei ruoli.

Riceverà informazioni sul certificato all'interno dell'oggetto utente, simili a quelle riportate di seguito.

Può valutare le attestazioni utilizzando il metodo HasClaim. Di seguito è riportato un esempio di verifica dell'identificazione personale del certificato.

Ultimo aggiornamento

È stato utile?