2 votes

Google Cloud Storage permission AllUsers ne fonctionne pas

Je tente de créer un bucket avec des permissions de lecture/écriture pour les bucket/objets pour des utilisateurs particuliers et des permissions de lecture pour les objets uniquement pour AllUsers.

J'ai :

  • créé un bucket,
  • ajouté ceci à la liste d'acl par défaut:

        READ

via: gsutil setdefacl gs://bucket

  • ajouté un objet (test.png)

Maintenant j'essaie d'accéder à cela depuis navigateur avec l'url http[s]://storage.cloud.google.com/bucket/test.png mais cela me redirige vers la page de connexion au compte google. Lorsque je me connecte avec un autre compte google (pas celui que j'ai utilisé pour créer le projet/bucket/objet), qui n'a aucun droit explicite défini, ça affiche l'image.

gsutil getacl sur le nouvel objet montre que l'autorisation de LECTURE est en place pour AllUsers, mais cela fonctionne comme AllAuthenticatedUsers.

Des idées sur ce qu'il faut faire avec les permissions pour que ça fonctionne comme prévu ?

1voto

Mike Schwartz Points 5836

Lorsque vous dites que vous avez ajouté cette entrée à la liste de contrôle d'accès par défaut, vous voulez dire que vous l'avez ajoutée en tant qu'élément au sein de AccessControlList.Entries, n'est-ce pas? Il est quelque peu difficile de savoir ce qui s'est passé sans voir le texte complet de la liste de contrôle d'accès.

Mais aussi, étant donné que vous rendez les objets publics lisibles (autorisation de lecture accordée pour la portée AllUsers), vous n'avez pas besoin de portées supplémentaires dans la liste de contrôle d'accès par défaut de l'objet du bucket ; vous pourriez simplement faire :

gsutil setdefacl public-read gs://bucket

puis télécharger des objets dans le bucket.

Je comprends que vous voulez accorder des autorisations de lecture/écriture pour certains utilisateurs spécifiques, mais les autorisations d'écriture sont contrôlées par la liste de contrôle d'accès du bucket, et non par la liste de contrôle d'accès de l'objet (et donc non par la liste de contrôle d'accès par défaut sur l'objet du bucket).

Veuillez essayer ce qui précède et laissez-nous savoir si vous ne parvenez toujours pas à accéder aux objets via un navigateur sans vous authentifier au préalable.

Mike Schwartz, équipe de stockage Google Cloud

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X