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à.
Utilizzo di policy di endpoint VPC per API private in API Gateway
Per migliorare la sicurezza della tua API privata, puoi creare una policy per gli endpoint VPC. Una policy di endpoint VPC è una policy delle risorse IAM che è possibile allegare all'endpoint VPC. Per ulteriori informazioni, consulta Controllo dell'accesso ai servizi con endpoint VPC.
Potresti voler creare una policy per gli endpoint VPC per eseguire le seguenti attività.
Consenti solo a determinate organizzazioni o risorse di accedere al tuo endpoint VPC e richiamare la tua API.
Utilizza un'unica policy ed evita le policy basate sulla sessione o sui ruoli per controllare il traffico verso la tua API.
Rafforza il perimetro di sicurezza della tua applicazione durante la migrazione da locale a. AWS
Considerazioni sulla policy degli endpoint VPC
Di seguito sono riportate alcune considerazioni sulla politica degli endpoint VPC.
-
L'identità dell'invoker viene valutata in base al valore dell'intestazione
Authorization
. A seconda delauthorizationType
in uso, è possibile che si verifichi un errore403 IncompleteSignatureException
o403 InvalidSignatureException
. La tabella seguente mostra i valori dell'intestazioneAuthorization
per ogniauthorizationType
.authorizationType
L'intestazione
Authorization
viene valutata?Valori dell'intestazione
Authorization
consentitiNONE
con la policy predefinita di accesso completoNo Non passato NONE
con una policy di accesso personalizzataSì Deve essere un valore SigV4 valido IAM
Sì Deve essere un valore SigV4 valido CUSTOM
oCOGNITO_USER_POOLS
No Non passato Se una policy limita l'accesso a un principio IAM specifico, ad esempio
arn:aws:iam::account-id:role/developer
, devi impostare il metodoauthorizationType
dell'API su o.AWS_IAM
NONE
Per ulteriori istruzioni su come impostare il metodoauthorizationType
for a, consultaMetodi per le API REST in API Gateway.-
Le policy di endpoint VPC possono essere utilizzate insieme alle policy di risorse API Gateway. La politica delle risorse di API Gateway specifica quali principali possono accedere all'API. La policy dell'endpoint specifica chi può accedere al VPC e quali API possono essere richiamate dall'endpoint VPC. La tua API privata necessita di una politica delle risorse, ma non devi creare una policy personalizzata per gli endpoint VPC.
Esempi di policy di endpoint VPC
Puoi creare policy per gli endpoint Amazon Virtual Private Cloud per Amazon API Gateway in cui puoi specificare quanto segue.
-
Il principale che può eseguire azioni.
-
Le operazioni che possono essere eseguite.
-
Le risorse su cui è possibile eseguire le operazioni.
Per collegare la policy all'endpoint VPC, è necessario utilizzare la console VPC. Per ulteriori informazioni, consulta Controllo dell'accesso ai servizi con endpoint VPC.
Esempio 1: policy di endpoint VPC che concede l'accesso a due API
L'esempio di policy seguente concede l'accesso solo a due API specifiche tramite l'endpoint VPC a cui è collegata la policy.
{ "Statement": [ { "Principal": "*", "Action": [ "execute-api:Invoke" ], "Effect": "Allow", "Resource": [ "arn:aws:execute-api:
us-east-1
:123412341234
:a1b2c3d4e5
/*", "arn:aws:execute-api:us-east-1
:123412341234
:aaaaa11111
/*" ] } ] }
Esempio 2: policy di endpoint VPC che concede l'accesso a metodi GET
L'esempio di policy seguente concede agli utenti l'accesso ai metodi GET
per un'API specifica tramite l'endpoint VPC a cui è collegata l'API.
{ "Statement": [ { "Principal": "*", "Action": [ "execute-api:Invoke" ], "Effect": "Allow", "Resource": [ "arn:aws:execute-api:
us-east-1
:123412341234
:a1b2c3d4e5
/stageName
/GET/*" ] } ] }
Esempio 3: policy di endpoint VPC che concede a un utente specifico l'accesso a un'API specifica
L'esempio di policy seguente concede a un utente specifico l'accesso a un'API specifica tramite l'endpoint VPC a cui è collegata la policy.
In questo caso, poiché la policy limita l'accesso a specifici principi IAM, devi impostare il authorizationType
metodo su o. AWS_IAM
NONE
{ "Statement": [ { "Principal": { "AWS": [ "arn:aws:iam::123412341234:user/
MyUser
" ] }, "Action": [ "execute-api:Invoke" ], "Effect": "Allow", "Resource": [ "arn:aws:execute-api:us-east-1
:123412341234
:a1b2c3d4e5
/*" ] } ] }