Risoluzione dei problemi relativi alla federazione delle identità per i carichi di lavoro

In questa pagina vengono riportate le soluzioni per gli errori comuni relativi alla federazione dell'identità del carico di lavoro.

L'API Google Cloud non accetta le credenziali emesse da SecurityTokenService

Se riscontri questo errore, potresti tentare di accedere direttamente a un'API di Google Cloud utilizzando una credenziale emessa da SecurityTokenService anziché scambiarla prima con una credenziale dell'account di servizio.

{
  "error": {
    "code": 401,
    "message": "Request had invalid authentication credentials. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.",
    "status": "UNAUTHENTICATED",
  }
}

Per risolvere questo errore, scambia le credenziali fornite da SecurityTokenService con un token dell'account di servizio chiamando GenerateAccessToken. Per ulteriori informazioni, consulta la pagina relativa all'acquisizione di credenziali di breve durata con federazione delle identità.

Autorizzare un provider di identità da utilizzare con la federazione delle identità per i carichi di lavoro

Se tenti di configurare un provider di identità non consentito come provider di pool di identità del carico di lavoro, si verifica il seguente errore:

FAILED_PRECONDITION: Precondition check failed.
- '@type': type.googleapis.com/google.rpc.PreconditionFailure
  violations:
  - description: "Org Policy violated for value: '{PROVIDER}'."
    subject: orgpolicy:projects/{PROJECT}/locations/global/workloadIdentityPools/{POOL}
    type: constraints/iam.workloadIdentityPoolProviders

Per risolvere questo problema, segui le istruzioni in Limita la configurazione del provider di identità per autorizzare il provider di identità e utilizzarlo per la federazione delle identità per i carichi di lavoro.