2

Avec Cloudformation, pouvez-vous définir le groupe Utilisateurs authentifiés comme ayant mis/supprimé le contrôle d'accès lors de la création d'un compartiment S3?Seau ACL S3 non stocké avec Cloudformation

+0

Voulez-vous réellement accorder des droits de mise/suppression pour votre compartiment à ** tous ** les utilisateurs Amazon S3 ou uniquement les utilisateurs de votre (vos) propre (s) compte (s)? –

+0

@Steffan - Merci pour votre réponse. Il ressemblait à l'ACL en conserve ce dont j'avais vraiment besoin était un AuthenticatedWrite (ce qui est assez ennuyeux est disponible via la console Web Amazon). Je suppose que ce que je cherche vraiment est un moyen de répliquer AuthenticatedWrite à travers des stratégies de seau. – nsfyn55

+0

Donc, vous voulez vraiment faire cela, intéressant (je me demande toujours quel pourrait être le cas d'utilisation pour limiter l'accès en écriture aux millions d'utilisateurs de S3 anonymes de facto par rapport à l'utilisation anonyme en tout cas ...) - ce serait facile, si les stratégies de compartiment permettaient de spécifier un caractère générique pour l'espace de noms/le fragment de compte dans _Principal_, c'est-à-dire quelque chose comme 'arn: aws: iam :: *: root'; cela ne semble pas possible cependant, au moins, il n'est pas documenté (vous pouvez essayer bien sûr). –

Répondre

5

Ce n'est pas possible avec la formation initiale et respectivement limitée Access Control Lists (ACL) de Amazon S3, où seuls les Canned ACLs prédéfinis sont disponibles pour une utilisation avec le AWS resource types soutenu par AWS CloudFormation à son tour, voir la propriété AccessControl de la ressource AWS::S3::Bucket:

Une ACL standard qui accorde des autorisations prédéfinies sur le compartiment. La valeur par défaut est . Pour plus d'informations sur les ACL standardisées, voir Canned ACLs in the Amazon S3 documentation.

Valeurs valides pour AccessControl: Privé | PublicRead | PublicReadWrite | AuthenticatedRead | BucketOwnerLire | BucketOwnerFullControl

En supposant que vous ne voulez pas donner put/supprimer l'accès à tous S3 utilisateurs en fait (que le groupe utilisateurs authentifiées implique en fait à la grande surprise du développeur pas au courant S3), mais seulement à la utilisateurs de votre propre compte (ou d'un ensemble bien connu de) compte (s) comme d'habitude pour la plupart des cas d'utilisation, vous pouvez atteindre votre objectif en utilisant S3 Bucket Policies à la place.

Le Example Cases for Amazon S3 Bucket Policies fournir une politique d'exemple pour autorisations d'octroi aux comptes multiples avec Ajouté Restrictions, qui accorde PutObject et autorisations PutObjectAcl à plusieurs comptes et exige que la figure publique lire acl conserve - du décapage au demandés défini et le transformer en un extrait de modèle de CloudFormation rapporterait ce qui suit à peu près (vous aurez besoin d'ajuster le principal à votre compte (s) bien sûr):

"Resources" : { 
    "S3Bucket" : { 
    "Type" : "AWS::S3::Bucket" 
    }, 
    "BucketPolicy" : { 
    "Type" : "AWS::S3::BucketPolicy", 
    "Properties" : { 
     "PolicyDocument": { 
     "Id"   : "Grant access to all account users", 
     "Statement" : [{ 
      "Sid"  : "PutObjectAccess", 
      "Action"  : ["s3:PutObject"], 
      "Effect"  : "Allow", 
      "Resource" : { "Fn::Join" : ["", ["arn:aws:s3:::", {"Ref" : "S3Bucket"} ]]}, 
      "Principal" : { "AWS": ["arn:aws:iam::111122223333:root","arn:aws:iam::444455556666:root"] } 
     }] 
     }, 
     "Bucket" : {"Ref" : "S3Bucket"} 
    } 
    }, 
}, 

S'il vous plaît être conscient de la p les différences de Using ACLs and Bucket Policies Together dans le cas.

+0

Cela a été utile, merci, mais votre lien "particularités" ci-dessus est mort. Pouvez-vous résumer les problèmes ou trouver où ils ont évolué? – telent

+0

@telent - le contenu semble avoir disparu lors d'une restructuration importante de toute la section. Je dois reformuler cela plus tard, mais pour l'instant le contenu précédent est toujours disponible dans les documents de la région AWS China (Beijing), voir [Utilisation des ACL et des stratégies de seau ensemble] (http://docs.amazonaws.cn/en_us/ AmazonS3/latest/dev/UsingACLsandBucketPoliciesTogether.html) au moins. –