Questa pagina si applica ad Apigee, ma non ad Apigee hybrid.
Visualizza la documentazione di
Apigee Edge.
Panoramica
Utilizza VerifyIAM per applicare i controlli di autorizzazione all'accesso API, in base a Google Cloud IAM. Questa è un'alternativa alle norme OAuthv2 e alle norme VerifyAPIKey. Per informazioni su come includere VerifyIAM in una soluzione di controllo dell'accesso basata su IAM, consulta Panoramica dell'autenticazione API basata su IAM.
Questa policy è una policy standard e può essere implementata in qualsiasi tipo di ambiente. Per informazioni sui tipi di criteri e sulla disponibilità per ogni tipo di ambiente, consulta Tipi di criteri.
Riferimento elemento
Questo riferimento mostra gli elementi e gli attributi del criterio VerifyIAM.
<VerifyIAM async="false" continueOnError="false" enabled="true" name="MyVerifyIAMPolicy"> <DisplayName>Custom label used in UI</DisplayName> <CredentialSource>flow_variable_name_containing_credential_value</CredentialSource> </VerifyIAM>
Attributi <VerifyIAM>
<VerifyIAM async="false" continueOnError="false" enabled="true" name="MyVerifyIAMPolicy">
La tabella seguente descrive gli attributi comuni a tutti gli elementi principali dei criteri:
Attributo | Descrizione | Predefinito | Presence |
---|---|---|---|
name |
Il nome interno del criterio. Il valore dell'attributo Se vuoi, utilizza l'elemento |
N/D | Obbligatorio |
continueOnError |
Imposta su Imposta su |
falso | Facoltativo |
enabled |
Imposta su Imposta su |
true | Facoltativo |
async |
Questo attributo è stato ritirato. |
falso | Deprecato |
Elemento <DisplayName>
Da utilizzare insieme all'attributo name
per etichettare il criterio nell'editor proxy dell'interfaccia utente di gestione con un nome diverso in linguaggio naturale.
<DisplayName>Policy Display Name</DisplayName>
Predefinito |
N/D Se ometti questo elemento, viene utilizzato il valore dell'attributo |
---|---|
Presence | Facoltativo |
Tipo | Stringa |
Elemento <CredentialSource>
<CredentialSource>flow_variable_name_containing_credential_value</CredentialSource>
Questo elemento specifica la variabile di flusso contenente il valore delle credenziali e presenta le seguenti caratteristiche:
- In genere, il client invia il valore in un parametro di query, un'intestazione HTTP o un parametro del modulo. La stringa deve specificare la variabile di flusso corrispondente nel formato
request.queryparam.token
. - Quando viene letto dal riferimento, è previsto un valore diretto. Ad esempio, "Bearer" non deve essere presente come prefisso.
- Se omesso, l'esecuzione del criterio presuppone che il valore si trovi nell'intestazione di autorizzazione e nel formato standard "Bearer xyz".
Predefinito | N/D |
---|---|
Presenza | Facoltativo |
Tipo | Variabile di flusso |
Esempio:
<VerifyIAM async="false" continueOnError="false" enabled="true" name="Verify-IAM-Permissions-1"> <DisplayName>VerifyIAM policy for flow 1</DisplayName> <CredentialSource>request.queryparam.token</CredentialSource> </VerifyIAM>
Riferimento agli errori
Questa sezione descrive i codici di errore e i messaggi di errore restituiti e le variabili di errore impostate da Apigee quando questo criterio attiva un errore. Queste informazioni sono importanti se stai sviluppando regole di errore per gestire gli errori. Per saperne di più, consulta Informazioni importanti sugli errori delle norme e Gestione degli errori.
Errori di runtime
Questi errori possono verificarsi durante l'esecuzione del criterio.
Codice guasto | Stato HTTP | Causa |
---|---|---|
steps.verifyiam.CredentialSourceRefUnresolved |
400 |
Impossibile risolvere la variabile di flusso fornita all'interno dell'origine delle credenziali. |
steps.verifyiam.CredentialValueNotProvided |
400 |
Autenticazione non trovata. Se non viene fornito il riferimento all'origine delle credenziali, viene esaminato il luogo predefinito, ad esempio l'intestazione di autorizzazione. |
steps.verifyiam.Forbidden |
403 |
Impossibile inoltrare la richiesta a causa di autorizzazioni insufficienti, ambiti di accesso mancanti o altri problemi correlati. |
steps.verifyiam.MiscellaneousAuthorizationConfigurationError |
500 |
Un problema con la richiesta di autenticazione a IAM. Il produttore dell'API deve correggere questo errore in base ai dettagli nella risposta all'errore. |
steps.verifyiam.Unauthorized |
401 |
Problema con le credenziali, ad esempio il valore non valido o scaduto. |
steps.verifyiam.UnexpectedAuthorizationInfrastructureError |
500 |
Errore interno. |
Errori di deployment
Questo criterio non restituisce errori di deployment specifici.
Variabili di errore
Queste variabili vengono impostate quando questo criterio attiva un errore in fase di esecuzione.
Variabili | Dove | Esempio |
---|---|---|
fault.name="fault_name" |
fault_name è il nome dell'errore, come indicato nella tabella Errori di runtime sopra. Il nome dell'errore è l'ultima parte del codice dell'errore. | fault.name="Unauthorized" |
verifyiam.policy_name.failed |
policy_name è il nome specificato dall'utente del criterio che ha generato l'errore. | verifyiam.Verify-IAMToken.failed = true |