Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Comprendere le dichiarazioni relative ai token
Quando si chiama l'GetWebIdentityTokenAPI, AWS Security Token Service restituisce un JSON Web Token (JWT) firmato che contiene una serie di attestazioni che rappresentano l'identità del principale IAM. Questi token sono conformi alla RFC 7519. https://datatracker.ietf.org/doc/html/rfc7519
Il JWT include dichiarazioni standard OpenID Connect (OIDC) come subject («sub»), audience («aud»), issuer («iss») per facilitare l'interoperabilità tra diversi servizi esterni. AWS STS compila il token con dichiarazioni AWS specifiche sull'identità (come l'ID AWS account e i tag Principal) e dichiarazioni relative al contesto della sessione (come gli ARN delle istanze EC2), se applicabili. Puoi anche aggiungere attestazioni personalizzate al token passandole come tag di richiesta all'API. GetWebIdentityToken Le attestazioni AWS specifiche dell'identità, le attestazioni relative al contesto di sessione e le attestazioni personalizzate sono annidate nello spazio dei nomi "https://sts.amazonaws.com/" del token.
Fai riferimento al token di esempio riportato di seguito per un elenco delle attestazioni incluse nel token. Tieni presente che tutte queste affermazioni potrebbero non essere presenti in un token contemporaneamente.
{ "iss": "https://abc123-def456-ghi789-jkl012.tokens.sts.global.api.aws", "aud": "https://api.example.com", "sub": "arn:aws:iam::123456789012:role/DataProcessingRole", "iat": 1700000000, "exp": 1700000900, "jti": "xyz123-def456-ghi789-jkl012", "https://sts.amazonaws.com/": { "aws_account": "123456789012", "source_region": "us-east-1", "org_id": "o-abc1234567", "ou_path": "o-a1b2c3d4e5/r-ab12/ou-ab12-11111111/ou-ab12-22222222/", "principal_tags": { "environment": "production", "team": "data-engineering", "cost-center": "engineering" }, "lambda_source_function_arn": "arn:aws:lambda:us-east-1:123456789012:function:process-data", "request_tags": { "job-id": "job-2024-001", "priority": "high", "data-classification": "sensitive" } } }
Reclami standard
I claim OIDC standard presenti nei token facilitano l'interoperabilità con un'ampia gamma di servizi esterni. Queste affermazioni possono essere convalidate utilizzando la maggior parte delle librerie JWT.
| Richiedi | Nome | Description | Valore di esempio |
|---|---|---|---|
| è | Emittente | L'URL dell'emittente specifico dell'account. I servizi esterni convalidano questa dichiarazione per assicurarsi che corrisponda all'emittente attendibile. | https://abc123-def456-ghi789-jkl012.tokens.sts.global.api.aws |
| aud | Destinatari | Il destinatario previsto del token specificato nella GetWebIdentityToken richiesta. | https://api.example.com |
| sub | Subject | L'ARN del principale IAM che ha richiesto il token. | arn:aws:iam: :123456789012: role/DataProcessingRole |
| iat | Emesso in | NumericDate valore che identifica l'ora in cui il JWT è stato emesso. | 1700000000 |
| exp | Scadenza | NumericDate valore che identifica l'ora di scadenza entro la quale il JWT NON DEVE essere accettato per l'elaborazione. | 1700000900 |
| kit | JWT È | Identificatore univoco per questa istanza di token. | xyz123-def456-ghi789-jkl012 |
Reclami personalizzati
Oltre alle dichiarazioni OIDC standard, AWS STS aggiunge affermazioni sull'identità e sul contesto della sessione, se applicabili. Puoi anche aggiungere i tuoi claim al token passandoli come tag di richiesta. Le attestazioni personalizzate sono annidate nel https://sts.amazonaws.com/ namespace.
AWS rivendicazioni di identità
Queste dichiarazioni forniscono informazioni dettagliate sull' AWS account, sulla struttura organizzativa e sul responsabile IAM.
| Richiedi | Description | Maps to Condition Key | Valore di esempio |
|---|---|---|---|
| aws_account | L'ID del tuo account AWS | era: PrincipalAccount | 123456789012 |
| source_region | La AWS regione in cui è stato richiesto il token | era: RequestedRegion | us-east-1 |
| org_id | L'ID della tua AWS organizzazione (se il tuo account fa parte di un'organizzazione) | aws: PrincipalOrg ID | o-abc1234567 |
| ou_path | Il percorso della tua unità organizzativa (se applicabile) | era: PrincipalOrgPaths | o- a1b2c3d4e5/r - ab12/ou -ab12- -ab12/ 11111111/ou |
| tag_principali | Tag allegati alla sessione con ruolo principale o presunto di IAM. Quando viene richiesto un token in cui il responsabile IAM richiedente ha sia tag principali che tag di sessione, i tag di sessione saranno presenti nel JWT. | era:/PrincipalTag<tag-key> | {"environment»: «produzione», «team»: «ingegneria dei dati», «cost-center» :"ingegneria "} |
Dichiarazioni relative al contesto della sessione
Queste dichiarazioni forniscono informazioni sull'ambiente di calcolo e sulla sessione da cui ha avuto origine la richiesta del token. AWS STS include automaticamente queste affermazioni, se applicabili, in base al contesto della sessione del principale richiedente.
| Richiedi | Description | Si associa a Condition Key | Valore di esempio |
|---|---|---|---|
| original_session_exp | Quando scadranno le credenziali della sessione di ruolo originale (per i ruoli assunti) | N/A | 2024-01-15 T10:00:00Z |
| fornitore_federato | Il nome del provider di identità per le sessioni federate | era: FederatedProvider | arn:aws:iam: :111122223333:oidc- provider/your_oidc_provider |
| identity_store_user_id | ID utente IAM Identity Center | archivio di identità: UserId | utente abc123def456 |
| identity_store_arn | ARN dell'archivio di identità di Identity Center | archivio di identità: IdentityStoreArn | arn:aws:identitystore: :123456789012: -abc1234567 identitystore/d |
| ec2_source_instance_arn | ARN dell'istanza EC2 richiedente | ec2: SourceInstanceArn | arn:aws:ec2:us-east- 1:123456789012: -abc123def456 instance/i |
| ec2_instance_source_vpc | ID VPC in cui sono state fornite le credenziali del ruolo EC2 | era: Ec2InstanceSourceVpc | vpc-abc123def456 |
| ec2_instance_source_private_ipv4 | Indirizzo IPv4 privato dell'istanza EC2 | era: Ec2InstanceSourcePrivateIPv4 | 10.0.1.25 |
| ec2_role_delivery | Versione del servizio di metadati dell'istanza | ec2: RoleDelivery | 2 |
| identità_origine | Identità di origine impostata dal principale | era: SourceIdentity | utente amministratore |
| lambda_source_function_arn | ARN della funzione Lambda chiamante | lambda: SourceFunctionArn | arn:aws:lambda:us-east- 1:123456789012:funzione:my-function |
| glue_credential_issuing_service | AWS Identificatore del servizio Glue per i lavori Glue | colla: CredentialIssuingService | colla.amazonaws.com |
Richiedi tag
Puoi aggiungere attestazioni personalizzate ai token specificando i tag nella richiesta GetWebIdentityToken API. Queste attestazioni vengono visualizzate nel campo request_tags del token e consentono di trasmettere informazioni specifiche che i servizi esterni possono utilizzare per decisioni di autorizzazione dettagliate. Puoi specificare fino a 50 tag per richiesta.
Richiesta di esempio:
response = sts_client.get_web_identity_token( Audience=['https://api.example.com'], SigningAlgorithm='ES384', Tags=[ {'Key': 'team', 'Value': 'data-engineering'}, {'Key': 'cost-center', 'Value': 'analytics'}, {'Key': 'environment', 'Value': 'production'} ] )
Dichiarazioni risultanti in token:
{ "request_tags": { "team": "data-engineering", "cost-center": "analytics", "environment": "production" } }