Registrazione applicativa SAML 2.0
La registrazione applicativa SAML 2.0 di FoxIDs ti consente di collegare un'applicazione basata su SAML 2.0.
SAML 2.0 e uno standard di autenticazione e autorizzazione basato su XML che consente un single sign-on (SSO) sicuro tra un identity provider (IdP) e un service provider (SP). FoxIDs supporta sia SP-initiated login sia IdP-initiated login.
La tua applicazione diventa una SAML 2.0 Relying Party (RP) e FoxIDs agisce come SAML 2.0 Identity Provider (IdP).
FoxIDs supporta i binding SAML 2.0 redirect e post.
FoxIDs inoltra anche un login hint dall'URL della richiesta SAML Authn usando il parametro query login_hint oppure LoginHint quando la richiesta non include un NameID. Questo consente a relying party come Microsoft Entra ID e Okta di precompilare l'identificatore utente nell'esperienza di login di FoxIDs.
Una registrazione applicativa espone metadata SAML 2.0, consentendo alla tua applicazione di individuare l'Identity Provider (IdP) SAML 2.0.
FoxIDs supporta i profili SAML 2.0 di login, logout e single logout. Il profilo Artifact non e supportato.
I metadata SAML 2.0 generati da FoxIDs contengono informazioni di logout e single logout solo se il logout e configurato nella registrazione applicativa SAML 2.0.
FoxIDs supporta certificati RSA ed ECDSA come certificati di validazione della firma SAML. La validazione della firma puo accettare piu algoritmi consentiti, rendendo possibile considerare attendibili relying parties che firmano SAML requests con certificati RSA o ECDSA, mantenendo RSA-SHA-1 legacy disabilitato per impostazione predefinita.
Guide pratiche:
- Connetti AD FS
- Connetti Amazon IAM Identity Center
- Connetti Google Workspace
- Connetti Microsoft Entra ID
- Connetti Context Handler test IdP (broker di identita danese)
Configurazione
Come configurare la tua applicazione come SAML 2.0 Relying Party (RP).
Endpoint metadata
- Metadata IdP:
https://foxids.com/tenant-x/environment-y/application-saml-pr1(*)/saml/idpmetadata(sostituiscitenant-x,environment-yeapplication-saml-pr1con i tuoi valori). - Endpoint alternativo singolo: l'endpoint Authn restituisce anche i metadata IdP quando viene chiamato con
GETe senzaSAMLRequest. Questo consente ai partner che richiedono un solo URL sia per il download dei metadata sia per le richieste Authn di usare lo stesso indirizzo, ad esempiohttps://foxids.com/tenant-x/environment-y/application-saml-pr1(*)/saml/authn. Quando lo stesso endpoint riceve una SAML AuthnRequest tramite redirect o post binding, esegue il normale flusso di login.
Una registrazione applicativa puo supportare il login tramite piu metodi di autenticazione aggiungendo il nome del metodo di autenticazione all'URL.
Ad esempio, https://foxids.com/tenant-x/environment-y/application-saml-pr1(login)/saml/idpmetadata oppure /saml/authn indirizza il metodo login. Puoi anche usare la notazione predefinita * per abilitare il login con tutti i metodi di autenticazione.
La schermata seguente mostra la configurazione di una registrazione applicativa SAML 2.0 di FoxIDs in FoxIDs Control Client. Qui la configurazione viene creata a partire dai metadata dell'applicazione. I claim emessi sono limitati all'insieme configurato e puoi usare la notazione * per emettere tutti i claim.
Ulteriori opzioni di configurazione diventano disponibili facendo clic su Show advanced.

Puoi modificare la raccolta di claim SAML 2.0 e implementare claim task con trasformazioni e attivita dei claim. Se crei un nuovo claim, aggiungi il claim o
*alla listaIssue claimsper emettere il claim alla tua applicazione.
Sicurezza e interoperabilita
Le impostazioni avanzate di sicurezza SAML sono disponibili facendo clic su Show advanced nella registrazione applicativa SAML 2.0.
- Signature algorithm controlla l'algoritmo usato da FoxIDs quando firma SAML responses o assertions. RSA-SHA-256 e il valore predefinito.
- Signature validation algorithms e una allowlist per SAML requests e messaggi di logout firmati in ingresso dalla relying party. L'allowlist predefinita include gli algoritmi supportati RSA-SHA-256/384/512 ed ECDSA-SHA-256/384/512 ed esclude RSA-SHA-1.
- I certificati di validazione della firma SAML supportano certificati RSA ed ECDSA, quindi una relying party puo usare entrambi i tipi di certificato quando firma SAML requests e messaggi di logout.
- Encrypt authn response cifra l'assertion nella SAML authentication response. Quando e abilitato, deve essere indicato il relying party encryption certificate e, se richiesto per interoperabilita, possono essere selezionati Encryption algorithm e Key encryption algorithm.
Gli algoritmi di data encryption supportati sono AES-128-CBC, AES-192-CBC, AES-256-CBC, AES-128-GCM, AES-192-GCM e AES-256-GCM. AES-256-CBC e il valore predefinito.
Gli algoritmi di key encryption supportati sono RSA 1.5, RSA-OAEP e XML Encryption 1.1 RSA-OAEP. RSA-OAEP e il valore predefinito. Usa RSA 1.5 solo quando una relying party legacy lo richiede.
Richiedere l'autenticazione multifattore (MFA)
La SAML 2.0 Relying Party (RP) puo richiedere MFA includendo urn:foxids:mfa in RequestedAuthnContext.AuthnContextClassRef. Puoi combinarlo con valori piu specifici come urn:foxids:link. Consulta richiedere MFA dalle applicazioni.
Puoi trovare codice di esempio in AspNetCoreSamlSample e nel relativo file SamlController.cs. La proprieta AuthnContextClassRef puo essere impostata nel metodo Login in SamlController.cs:
public IActionResult Login(string returnUrl = null)
{
var binding = new Saml2RedirectBinding();
binding.SetRelayStateQuery(new Dictionary<string, string>
{
{ relayStateReturnUrl, returnUrl ?? Url.Content("~/") }
});
var saml2AuthnRequest = new Saml2AuthnRequest(saml2Config)
{
// To require MFA
RequestedAuthnContext = new RequestedAuthnContext
{
Comparison = AuthnContextComparisonTypes.Exact,
AuthnContextClassRef = new string[] { "urn:foxids:mfa" },
}
};
return binding.Bind(saml2AuthnRequest).ToActionResult();
}