Controllo degli accessi alle API WebSocket con l'autorizzazione IAM
L'autorizzazione IAM nelle API WebSocket è simile a quella per le API REST, con le seguenti eccezioni:
-
L'azione
execute-api
supportaManageConnections
oltre alle azioni esistenti (Invoke
,InvalidateCache
).ManageConnections
controlla l'accesso all'API @connections. -
Gli instradamenti WebSocket utilizzano un formato ARN differente:
arn:aws:execute-api:
region
:account-id
:api-id
/stage-name
/route-key
-
L'API
@connections
usa lo stesso formato ARN delle API REST:arn:aws:execute-api:
region
:account-id
:api-id
/stage-name
/POST/@connections
Importante
Quando usi l'autorizzazione IAM è necessario firmare le richieste con Signature Version 4 (SigV4).
Puoi, ad esempio, configurare la seguente policy per il client. Questo esempio consente a chiunque di inviare un messaggio (Invoke
) per tutti gli instradamenti ad eccezione di un instradamento segreto nella fase prod
e impedisce l'invio di un messaggio da qualunque utente ai client connessi (ManageConnections
) in tutte le fasi.