Tipo di criteri di mapping di attestazioni

Un oggetto criteri rappresenta un set di regole applicate a singole applicazioni o a tutte le applicazioni di un'organizzazione. Ogni tipo di criterio ha una struttura univoca, con un set di proprietà che vengono quindi applicate agli oggetti a cui sono assegnati.

Un criterio di mapping delle attestazioni è un tipo di oggetto criteri che modifica le attestazioni incluse nei token. Per altre informazioni, vedere Personalizzare le attestazioni rilasciate nel token SAML per le applicazioni aziendali.

Set di attestazioni

La tabella seguente elenca i set di attestazioni che definiscono come e quando vengono usati nei token.

Set di attestazioni Descrizione
Set di attestazioni core Presente in ogni token indipendentemente dai criteri. Queste attestazioni sono anche considerate limitate e non possono essere modificate.
Set di attestazioni di base Include le attestazioni incluse per impostazione predefinita per i token oltre al set di attestazioni di base. È possibile omettere o modificare le attestazioni di base usando i criteri di mapping delle attestazioni.
Set di attestazioni con restrizioni Non è possibile modificare usando un criterio. L'origine dati non può essere modificata e non viene applicata alcuna trasformazione durante la generazione di queste attestazioni.

Set di attestazioni limitate al token JSON Web (JWT)

Le attestazioni seguenti si trovano nel set di attestazioni con restrizioni per un token JWT.

  • .
  • _claim_names
  • _claim_sources
  • aai
  • access_token
  • account_type
  • acct
  • acr
  • acrs
  • actor
  • actortoken
  • ageGroup
  • aio
  • altsecid
  • amr
  • app_chain
  • app_displayname
  • app_res
  • appctx
  • appctxsender
  • appid
  • appidacr
  • assertion
  • at_hash
  • aud
  • auth_data
  • auth_time
  • authorization_code
  • azp
  • azpacr
  • bk_claim
  • bk_enclave
  • bk_pub
  • brk_client_id
  • brk_redirect_uri
  • c_hash
  • ca_enf
  • ca_policy_result
  • capolids
  • capolids_latebind
  • cc
  • cert_token_use
  • child_client_id
  • child_redirect_uri
  • client_id
  • client_ip
  • cloud_graph_host_name
  • cloud_instance_host_name
  • cloud_instance_name
  • CloudAssignedMdmId
  • cnf
  • code
  • controls
  • controls_auds
  • credential_keys
  • csr
  • csr_type
  • ctry
  • deviceid
  • dns_names
  • domain_dns_name
  • domain_netbios_name
  • e_exp
  • email
  • endpoint
  • enfpolids
  • exp
  • expires_on
  • extn. as prefix
  • fido_auth_data
  • fido_ver
  • fwd
  • fwd_appidacr
  • grant_type
  • graph
  • group_sids
  • groups
  • hasgroups
  • hash_alg
  • haswids
  • home_oid
  • home_puid
  • home_tid
  • iat
  • identityprovider
  • idp
  • idtyp
  • in_corp
  • instance
  • inviteTicket
  • ipaddr
  • isbrowserhostedapp
  • iss
  • isViral
  • jwk
  • key_id
  • key_type
  • login_hint
  • mam_compliance_url
  • mam_enrollment_url
  • mam_terms_of_use_url
  • mdm_compliance_url
  • mdm_enrollment_url
  • mdm_terms_of_use_url
  • msgraph_host
  • msproxy
  • nameid
  • nbf
  • netbios_name
  • nickname
  • nonce
  • oid
  • on_prem_id
  • onprem_sam_account_name
  • onprem_sid
  • openid2_id
  • origin_header
  • password
  • platf
  • polids
  • pop_jwk
  • preferred_username
  • previous_refresh_token
  • primary_sid
  • prov_data
  • puid
  • pwd_exp
  • pwd_url
  • rdp_bt
  • redirect_uri
  • refresh_token
  • refresh_token_issued_on
  • refreshtoken
  • request_nonce
  • resource
  • rh
  • role
  • roles
  • rp_id
  • rt_type
  • scope
  • scp
  • secaud
  • sid
  • sid
  • signature
  • signin_state
  • source_anchor
  • src1
  • src2
  • sub
  • target_deviceid
  • tbid
  • tbidv2
  • tenant_ctry
  • tenant_display_name
  • tenant_id
  • tenant_region_scope
  • tenant_region_sub_scope
  • thumbnail_photo
  • tid
  • tokenAutologonEnabled
  • trustedfordelegation
  • ttr
  • unique_name
  • upn
  • user_agent
  • user_setting_sync_url
  • username
  • uti
  • ver
  • verified_primary_email
  • verified_secondary_email
  • vnet
  • vsm_binding_key
  • wamcompat_client_info
  • wamcompat_id_token
  • wamcompat_scopes
  • wids
  • win_ver
  • x5c_ca
  • xcb2b_rclient
  • xcb2b_rcloud
  • xcb2b_rtenant
  • ztdid

Nota

Qualsiasi attestazione che inizia con xms_ è limitata.

Set di attestazioni con restrizioni SAML

Nella tabella seguente sono elencate le attestazioni SAML incluse nel set di attestazioni con restrizioni.

Tipo di attestazione con restrizioni (URI):

  • http://schemas.microsoft.com/2012/01/devicecontext/claims/ismanaged
  • http://schemas.microsoft.com/2014/02/devicecontext/claims/isknown
  • http://schemas.microsoft.com/2014/03/psso
  • http://schemas.microsoft.com/2014/09/devicecontext/claims/iscompliant
  • http://schemas.microsoft.com/claims/authnmethodsreferences
  • http://schemas.microsoft.com/claims/groups.link
  • http://schemas.microsoft.com/identity/claims/accesstoken
  • http://schemas.microsoft.com/identity/claims/acct
  • http://schemas.microsoft.com/identity/claims/agegroup
  • http://schemas.microsoft.com/identity/claims/aio
  • http://schemas.microsoft.com/identity/claims/identityprovider
  • http://schemas.microsoft.com/identity/claims/objectidentifier
  • http://schemas.microsoft.com/identity/claims/openid2_id
  • http://schemas.microsoft.com/identity/claims/puid
  • http://schemas.microsoft.com/identity/claims/scope
  • http://schemas.microsoft.com/identity/claims/tenantid
  • http://schemas.microsoft.com/identity/claims/xms_et
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationinstant
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/confirmationkey
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/denyonlyprimarygroupsid
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/denyonlyprimarysid
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/denyonlywindowsdevicegroup
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/expiration
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/expired
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/groups
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/ispersistent
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/role
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/role
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/samlissuername
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/wids
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsdeviceclaim
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsdevicegroup
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsfqbnversion
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/windowssubauthority
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsuserclaim
  • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/authentication
  • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/authorizationdecision
  • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/denyonlysid
  • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/privatepersonalidentifier
  • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/spn
  • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn
  • http://schemas.xmlsoap.org/ws/2009/09/identity/claims/actor

Queste attestazioni sono limitate per impostazione predefinita, ma non sono limitate se si dispone di una chiave di firma personalizzata. Evitare di impostare acceptMappedClaims nel manifesto dell'app.

  • http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/primarysid
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/primarygroupsid
  • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/sid
  • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/x500distinguishedname

Queste attestazioni sono limitate per impostazione predefinita, ma non sono limitate se si dispone di una chiave di firma personalizzata:

  • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn
  • http://schemas.microsoft.com/ws/2008/06/identity/claims/role

Proprietà di criteri di mapping di attestazioni

Per controllare le attestazioni incluse e da dove provengono i dati, usare le proprietà di un criterio di mapping delle attestazioni. Senza un criterio, il sistema rilascia token con le attestazioni seguenti:

  • Set di attestazioni di base.
  • Set di attestazioni di base.
  • Eventuali attestazioni facoltative che l'applicazione ha scelto di ricevere.

Nota

Le attestazioni del set di attestazioni core sono presenti in ogni token, indipendentemente dall'impostazione di questa proprietà.

Stringa Tipo di dati Riepilogo
IncludeBasicClaimSet Booleano (true o false) Determina se il set di attestazioni di base è incluso nei token interessati da questo criterio. Se impostata su True, tutte le attestazioni nel set di attestazioni di base verranno generate nei token interessati dal criterio. Se impostato su False, le attestazioni nel set di attestazioni di base non si trovano nei token, a meno che non vengano aggiunte singolarmente nella proprietà dello schema delle attestazioni dello stesso criterio.
ClaimsSchema BLOB JSON con una o più voci dello schema di attestazioni Definisce le attestazioni presenti nei token interessati dai criteri, oltre al set di attestazioni di base e al set di attestazioni di base. Per ogni voce di schema di attestazioni definita in questa proprietà sono necessarie alcune informazioni. Specificare da dove provengono i dati (coppia Valore, Origine/ID o Coppia Source/ExtensionID) e Tipo di attestazione, generato come (JWTClaimType o SamlClaimType).

Elementi di voci dello schema di attestazioni

  • Valore : definisce un valore statico come dati da generare nell'attestazione.
  • SAMLNameForm : definisce il valore per l'attributo NameFormat per questa attestazione. Se presente, i valori consentiti sono:
    • urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified
    • urn:oasis:names:tc:SAML:2.0:attrname-format:uri
    • urn:oasis:names:tc:SAML:2.0:attrname-format:basic
  • Coppia di origine/ID : definisce la posizione di origine dei dati nell'attestazione.
  • Coppia Source/ExtensionID : definisce l'attributo di estensione della directory da cui provengono i dati nell'attestazione. Per altre informazioni, vedere Uso degli attributi di estensione della directory nelle attestazioni.
  • Tipo di attestazione: gli elementi JwtClaimType e SamlClaimType definiscono l'attestazione a cui fa riferimento questa voce dello schema attestazione.
    • JwtClaimType deve contenere il nome dell'attestazione da generare in JWT.
    • SamlClaimType deve contenere l'URI dell'attestazione da generare nei token SAML.

Impostare l'elemento Source su uno dei valori della tabella seguente.

Valore di origine Dati nell'attestazione
user Proprietà dell'oggetto User.
application Proprietà nell'entità servizio dell'applicazione (client).
resource Proprietà nell'entità servizio della risorsa.
audience Proprietà dell'entità servizio che rappresenta il gruppo di destinatari del token (l'entità servizio client o risorsa).
company Proprietà nell'oggetto Company del tenant della risorsa.
transformation Trasformazione delle attestazioni. Quando si usa questa attestazione, l'elemento TransformationID deve essere incluso nella definizione dell'attestazione. L'elemento TransformationID deve corrispondere all'elemento ID della voce di trasformazione nella proprietà ClaimsTransformation che definisce la modalità di generazione dei dati per l'attestazione.

L'elemento ID identifica la proprietà nell'origine che fornisce il valore per l'attestazione. Nella tabella seguente sono elencati i valori dell'elemento ID per ogni valore di Source.

Origine ID Descrizione
user surname Nome della famiglia dell'utente.
user givenname Nome (di battesimo) dell'utente.
user displayname Nome visualizzato dell'utente.
user objectid L'ID dell'oggetto dell'utente.
user mail Indirizzo di posta elettronica dell'utente.
user userprincipalname Nome dell'entità utente dell'utente.
user department Reparto dell'utente.
user onpremisessamaccountname Nome dell'account SAM locale dell'utente.
user netbiosname Nome NetBios dell'utente.
user dnsdomainname Nome di dominio DNS dell'utente.
user onpremisesecurityidentifier Identificatore di sicurezza locale dell'utente.
user companyname Nome dell'organizzazione dell'utente.
user streetaddress Indirizzo dell'utente.
user postalcode Codice postale dell'utente.
user preferredlanguage Lingua preferita dell'utente.
user onpremisesuserprincipalname UPN locale dell'utente. Quando si usa un ID alternativo, l'attributo userPrincipalName locale viene sincronizzato con l'attributo onPremisesUserPrincipalName . Questo attributo è disponibile solo quando è configurato l'ID alternativo.
user mailnickname Nome alternativo di posta elettronica dell'utente.
user extensionattribute1 Attributo di estensione 1.
user extensionattribute2 Attributo di estensione 2.
user extensionattribute3 Attributo di estensione 3.
user extensionattribute4 Attributo di estensione 4.
user extensionattribute5 Attributo di estensione 5.
user extensionattribute6 Attributo di estensione 6.
user extensionattribute7 Attributo di estensione 7.
user extensionattribute8 Attributo di estensione 8.
user extensionattribute9 Attributo di estensione 9.
user extensionattribute10 Attributo di estensione 10.
user extensionattribute11 Attributo di estensione 11.
user extensionattribute12 Attributo di estensione 12.
user extensionattribute13 Attributo di estensione 13.
user extensionattribute14 Attributo di estensione 14.
user extensionattribute15 Attributo di estensione 15.
user othermail L'altro messaggio di posta elettronica dell'utente.
user country Paese/area geografica dell'utente.
user city Città dell'utente.
user state Regione dell'utente.
user jobtitle Titolo del lavoro dell'utente.
user employeeid ID dipendente dell'utente.
user facsimiletelephonenumber Numero di telefono facsimile dell'utente.
user assignedroles Elenco dei ruoli dell'app assegnati all'utente.
user accountEnabled Indica se l'account utente è abilitato.
user consentprovidedforminor Indica se il consenso è stato fornito per un minore.
user createddatetime Data e ora di creazione dell'account utente.
user creationtype Indica come è stata creata l'account utente.
user lastpasswordchangedatetime Data e ora dell'ultima modifica della password.
user mobilephone Telefono cellulare dell'utente.
user officelocation Posizione dell'ufficio dell'utente.
user onpremisesdomainname Nome di dominio locale dell'utente.
user onpremisesimmutableid ID non modificabile locale dell'utente.
user onpremisessyncenabled Indica se la sincronizzazione locale è abilitata.
user preferreddatalocation Definisce la posizione dei dati preferita dell'utente.
user proxyaddresses Indirizzi proxy dell'utente.
user usertype Tipo di account utente.
user telephonenumber Telefoni aziendali o di ufficio dell'utente.
application, resource, audience displayname Nome visualizzato dell'oggetto .
application, resource, audience objectid ID dell'oggetto .
application, resource, audience tags Tag dell'entità servizio dell'oggetto.
company tenantcountry Paese/area geografica del tenant.

Le uniche origini attestazioni multivalore disponibili in un oggetto utente sono attributi di estensione multivalore sincronizzati da Active Directory Connessione. Altre proprietà, ad esempio othermails e tags, sono multivalore, ma viene generato un solo valore quando viene selezionato come origine.

I nomi e gli URI delle attestazioni nel set di attestazioni con restrizioni non possono essere usati per gli elementi del tipo di attestazione.

Filtro gruppo

  • String - GroupFilter
  • Tipo di dati: - BLOB JSON
  • Riepilogo : usare questa proprietà per applicare un filtro ai gruppi dell'utente da includere nell'attestazione di gruppo. Questa proprietà può essere un mezzo utile per ridurre le dimensioni del token.
  • MatchOn: identifica l'attributo del gruppo in cui applicare il filtro. Impostare la proprietà MatchOn su uno dei valori seguenti:
    • displayname - Nome visualizzato del gruppo.
    • samaccountname - Nome dell'account SAM locale.
  • Type : definisce il tipo di filtro applicato all'attributo selezionato dalla proprietà MatchOn . Impostare la proprietà Type su uno dei valori seguenti:
    • prefix- Includi gruppi in cui la proprietà MatchOn inizia con la proprietà Value fornita.
    • suffixIncludi gruppi in cui la proprietà MatchOn termina con la proprietà Value fornita.
    • contains- Includere gruppi in cui la proprietà MatchOn contiene con la proprietà Value fornita.

Trasformazione delle attestazioni

  • String - ClaimsTransformation
  • Tipo di dati - BLOB JSON, con una o più voci di trasformazione
  • Riepilogo : usare questa proprietà per applicare trasformazioni comuni ai dati di origine per generare i dati di output per le attestazioni specificate nello schema delle attestazioni.
  • ID : fa riferimento alla voce di trasformazione nella voce Schema delle attestazioni TransformationID. Questo valore deve essere univoco per ogni voce di trasformazione all'interno di questo criterio.
  • TransformationMethod : identifica l'operazione eseguita per generare i dati per l'attestazione.

In base al metodo scelto è previsto un set di input e output. Definire gli input e gli output usando gli elementi InputClaims, InputParameters e OutputClaims.

TransformationMethod Input previsto Output previsto Descrizione
Join. string1, string2, separator attestazione di output Esegue il join di stringhe di input dividendole con un separatore. Ad esempio, stringa1:foo@bar.com , stringa2:sandbox , separatore:. restituisce l'attestazione di output:foo@bar.com.sandbox.
ExtractMailPrefix Indirizzo di posta elettronica o UPN stringa estratta Attributi di estensione da 1 a 15 o altre estensioni di directory, che archiviano un valore upN o indirizzo di posta elettronica per l'utente. Ad esempio, johndoe@contoso.com. Estrae la parte locale di un indirizzo di posta elettronica. Ad esempio, mail:foo@bar.com restituisce l'attestazione di output:foo. Se non è presente alcun segno @, viene restituita la stringa di input originale.
ToLowercase() stringa stringa di output Converte i caratteri dell'attributo selezionato in minuscole.
ToUppercase() stringa stringa di output Converte i caratteri dell'attributo selezionato in maiuscole.
RegexReplace() La trasformazione RegexReplace() accetta come parametri di input:
- Parametro 1: un attributo utente come input regex
- Opzione per considerare attendibile l'origine come multivalore
- Modello regex
- Modello di sostituzione. Il modello di sostituzione può contenere un formato di testo statico insieme a un riferimento che punta ai gruppi di output regex e a più parametri di input.
  • InputClaims : consente di passare i dati da una voce dello schema di attestazione a una trasformazione. Ha tre attributi: ClaimTypeReferenceId, TransformationClaimType e TreatAsMultiValue.
    • ClaimTypeReferenceId : aggiunto con l'elemento ID della voce dello schema di attestazione per trovare l'attestazione di input appropriata.
    • TransformationClaimType Assegna un nome univoco a questo input. Questo nome deve corrispondere a uno degli input previsti per il metodo di trasformazione.
    • TreatAsMultiValue è un flag booleano che indica se la trasformazione deve essere applicata a tutti i valori o solo alla prima. Per impostazione predefinita, le trasformazioni vengono applicate solo al primo elemento in un'attestazione multivalore. L'impostazione di questo valore su true garantisce che venga applicata a tutti. ProxyAddresses e gruppi sono due esempi per le attestazioni di input che probabilmente si vuole considerare come un'attestazione multivalore.
  • InputParameters : passa un valore costante a una trasformazione. Include due attributi: Value e ID.
    • Value è il valore costante effettivo da passare.
    • ID viene usato per assegnare un nome univoco all'input. Il nome deve corrispondere a uno degli input previsti per il metodo di trasformazione.
  • OutputClaims : contiene i dati generati da una trasformazione e lo collega a una voce dello schema di attestazione. Include due attributi: ClaimTypeReferenceId e TransformationClaimType.
    • ClaimTypeReferenceId viene unito in join all'elemento ID della voce dello schema di attestazioni per individuare l'attestazione di output appropriata.
    • TransformationClaimType viene usato per assegnare un nome univoco all'output. Il nome deve corrispondere a uno degli output previsti per il metodo di trasformazione.

Eccezioni e restrizioni

SAML NameID e UPN : gli attributi da cui vengono originati i valori NameID e UPN e le trasformazioni delle attestazioni consentite sono limitate.

Origine ID Descrizione
user mail Indirizzo di posta elettronica dell'utente.
user userprincipalname Nome dell'entità utente dell'utente.
user onpremisessamaccountname Nome account Sam locale
user employeeid ID dipendente dell'utente.
user telephonenumber Telefoni aziendali o di ufficio dell'utente.
user extensionattribute1 Attributo di estensione 1.
user extensionattribute2 Attributo di estensione 2.
user extensionattribute3 Attributo di estensione 3.
user extensionattribute4 Attributo di estensione 4.
user extensionattribute5 Attributo di estensione 5.
user extensionattribute6 Attributo di estensione 6.
user extensionattribute7 Attributo di estensione 7.
user extensionattribute8 Attributo di estensione 8.
user extensionattribute9 Attributo di estensione 9.
user extensionattribute10 Attributo di estensione 10.
user extensionattribute11 Attributo di estensione 11.
user extensionattribute12 Attributo di estensione 12.
user extensionattribute13 Attributo di estensione 13.
user extensionattribute14 Attributo di estensione 14.
User extensionattribute15 Attributo di estensione 15.

I metodi di trasformazione elencati nella tabella seguente sono consentiti per SAML NameID.

TransformationMethod Restrizioni
ExtractMailPrefix None
Join. Il suffisso da aggiungere deve essere un dominio verificato del tenant delle risorse.

Autorità emittente con ID applicazione

  • String - issuerWithApplicationId
  • Tipo di dati - Boolean (True o False)
    • Se impostato su True, l'ID applicazione viene aggiunto all'attestazione dell'autorità emittente nei token interessati dai criteri.
    • Se impostato su False, l'ID applicazione non viene aggiunto all'attestazione dell'autorità emittente nei token interessati dai criteri. (predefinito)
  • Riepilogo : consente di includere l'ID applicazione nell'attestazione dell'autorità emittente. Assicura che più istanze della stessa applicazione abbiano un valore di attestazione univoco per ogni istanza. Questa impostazione viene ignorata se una chiave di firma personalizzata non è configurata per l'applicazione.

Override del gruppo di destinatari

  • String - audienceOverride
  • Tipo di dati - String
  • Riepilogo : consente di eseguire l'override dell'attestazione del gruppo di destinatari inviata all'applicazione. Il valore specificato deve essere un URI assoluto valido. Questa impostazione viene ignorata se non è configurata alcuna chiave di firma personalizzata per l'applicazione.

Passaggi successivi