Je commence avec serveur sans serveur sur AWS et j'utilise AWS Cognito pour l'authentification et l'autorisation de l'utilisateur. Pour ce que j'ai vu sur la documentation et les exemples, vous pouvez créer des groupes pour permettre à certains utilisateurs d'utiliser un point de terminaison Api Gateway, en attachant un rôle et une stratégie à ce groupe. J'essaye ceci, et puis ai fait un client simple et essaye avec deux utilisateurs différents, et tous les deux sont capables d'obtenir un code de statut de 200 au lieu de l'un d'entre eux obtenant qu'il soit non autorisé. Pour créer le rôle, je suis allé à IAM, créer un rôle, un rôle pour l'accès du fournisseur d'identité, accorder l'accès aux fournisseurs d'identité Web, puis j'ai choisi Amazon Cognito et choisi mon pool d'utilisateurs de Cognito. relation de confiance:Groupes AWS Cognito et AWS Api Gateway
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Federated": "cognito-identity.amazonaws.com"
},
"Action": "sts:AssumeRoleWithWebIdentity",
"Condition": {
"StringEquals": {
"cognito-identity.amazonaws.com:aud": "us-east-1_8TAUVKbGP"
}
}
}
]
}
Politique:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"execute-api:Invoke"
],
"Resource": [
"my-arn-resourse-from-api-gateway"
]
}
]
}
Je de ce rôle à mon groupe admin et ajouter un utilisateur à ce groupe, ce qui devrait permettre l'accès à qu'API ressource passerelle en attachant que la politique à l'utilisateur quand il se connecte. Mais quand j'essaye avec un utilisateur qui n'est pas dans ce groupe ça marche toujours. En passant, sur ma ressource Api Gateway dans la requête je mets pour autorisation mon pool cognito.
Merci beaucoup!
Merci! Je vais essayer et vous dire comment ça se passe! –