Politiques de Buckets
Les politiques de gestion des Buckets fournissent à des Object Users spécifiques, ou à tous les Object Users, des autorisations conditionnelles et granulaires pour des actions spécifiques.
Les conditions des politiques peuvent être utilisées pour attribuer des autorisations à une série d'objets qui correspondent à la condition souhaitée et peuvent être utilisées pour attribuer automatiquement des autorisations aux objets nouvellement téléchargés.
La manière dont l'accès aux ressources est gérée lors de l'utilisation du protocole S3 est décrite dans https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html et vous pouvez utiliser ces informations comme base pour comprendre et utiliser les politiques de gestion des Buckets fournit par le service de Stockage d'Objet de cegedim.cloud.
Cette section fournit des informations de base sur l'utilisation des politiques de gestion des Buckets.
Gérer les politiques de gestion des Buckets
Les politiques de gestion des Buckets peuvent être gérées en utilisant le client aws s3api (d'autres outils ou SDK fonctionnent aussi):
get-bucket-policy
put-bucket-policy
delete-bucket-policy
Nous utilisons les utilitaires aws s3 et aws s3api issues du client S3 AWSCLIv2 sur Linux. ${S3_ENDPOINT}
& ${S3_PROFILE}
sont des variables d'environnement.
Créer une politique de gestion de Bucket
Créez un fichier et insérez votre politique de gestion au format JSON :
L’élément Principal spécifie les Access Key des Object Users qui sont autorisés ou non, à effectuer les actions sur les différentes ressources spécifiées.
Vous pouvez spécifier un wildcard '*
' pour indiquer tous les Object Users.
Attention, utiliser le wildcard '*
' dans une politique de gestion de Buckets, signifie que tout le monde peut accéder aux ressources spécifiées et effectuer les actions spécifiées
Appliquez la politique des gestions sur le Bucket: bucket-test
Afficher la politique de gestion sur un Bucket
Supprimer une politique de gestion sur un Bucket
Exemples de politique de gestion d'un bucket
Accorder des permissions à un Object User
Accorder des permissions en lecture seule à un Object User
Accorder les autorisations d’accès à tous les utilisateurs (accès public)
Le service de Stockage d'Objet de cegedim.cloud est directement accessible depuis Internet.
Si vous accordez un accès public à votre Bucket ou à un sous-ensemble de votre Bucket, tout le monde peut obtenir vos objets.
Pour plus d'informations, consulter Gérer l'accès à un Bucket.
Accès à un Bucket via un navigateur Web
Avec l'accès public, le contenu du Bucket peut être consulté directement à l'aide d'un navigateur web.
L'URL pour accéder à un Bucket public suit ce format : https://<objectstore_name>.storage-[eb4|et1].cegedim.cloud/<bucket_name>
Par exemple : https://cos-cegedimit-myit.storage-eb4.cegedim.cloud/mybucket
Accorder les autorisations d’accès à tous les utilisateurs (accès public) pour les objets sous un préfixe spécifique
Le service de Stockage d'Objet de cegedim.cloud est directement accessible depuis Internet.
Si vous accordez un accès public à votre Bucket ou à un sous-ensemble de votre Bucket, tout le monde peut obtenir vos objets.
Avec la politique suivante, tous les objets du Bucket my-bucket
et sous le préfixe public/
sont accessibles publiquement, sans authentification :
Opérations et conditions des politiques supportées
Opérations supportées
Permissions pour les opérations sur les objets
Permissions | Opérations S3 |
---|---|
|
|
|
|
| Objet Objet PUT Terminer un téléchargement "mulitpart" |
|
|
|
|
|
|
|
|
|
|
|
|
| Liste des ''parts" dans un téléchargement "mulitpart" |
| Terminer le téléchargement "mulitpart" |
Permissions pour les opérations sur les Buckets
Permissions | Opérations S3 |
---|---|
|
|
|
|
|
|
|
|
|
|
Permissions pour les opérations sur les sous-ressources d'un Bucket
Permissions | Opérations S3 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Conditions supportées
L'élément "condition" est utilisé pour spécifier les conditions qui déterminent quand une règle s'applique.
Les tableaux suivants référencent les conditions qui sont supportées par le service de Stockage Objet de cegedim.cloud et qui peuvent être utilisées dans les expressions de condition.
Conditions génériques supportées
Condition | Description | Opérateurs applicables |
---|---|---|
| Utilisé pour vérifier les conditions basées sur la date et l'heure | Opérateur de date |
| Utilisé pour vérifier les conditions basées sur la date et l'heure en utilisant le format EPOCH (voir Opérateurs de condition de date). | Opérateur de date |
| Utilisé pour vérifier le type de principal (utilisateur, compte, utilisateur fédéré, etc.) pour la requête en cours. | Opérateur de chaîne de caractères |
| Utilisé pour vérifier l'adresse IP source. | Opérateur de chaîne caractères |
| Utilisé pour vérifier "UserAgent" du demandeur. | Opérateur de chaîne caractères |
| Utilisé pour vérifier le nom d'utilisateur du demandeur. | Opérateur de chaîne caractères |
Conditions spécifiques supportées pour les opérations sur les objets
Nom de la clé | Description | Autorisations applicables |
---|---|---|
| Condition pour exiger des autorisations d'accès spécifiques lorsque l'utilisateur télécharge un objet. | s3:PutObject s3:PutObjectAcl s3:PutObjectVersionAcl |
(pour les permissions explicites), où la permission peut être : lecture, écriture, lecture-acp, écriture-acp, contrôle total | Le propriétaire du Bucket peut ajouter des conditions en utilisant ces clés pour exiger certaines permissions. | s3:PutObject s3:PutObjectAcl s3:PutObjectVersionAcl |
| Oblige l'utilisateur à spécifier cet en-tête dans la requête. | s3:PutObject s3:PutObjectAcl |
| Restreindre l'utilisateur à l'accès aux données uniquement pour une version spécifique de l'objet. | s3:PutObject s3:PutObjectAcl s3:DeleteObjectVersion |
Conditions spécifiques prises en charge pour les opérations sur les Buckets
Nom de la clé | Description | Autorisations applicables |
---|---|---|
| Définir une condition pour exiger des autorisations d'accès spécifiques lorsque l'utilisateur télécharge un objet. | s3:CreateBucket s3:PutBucketAcl |
(pour les permissions explicites), où la permission peut être : lecture, écriture, lecture-acp, écriture-acp, contrôle total | Le propriétaire du Bucket peut ajouter des conditions en utilisant ces clés pour exiger certaines permissions. | s3:CreateBucket s3:PutBucketAcl |
| Oblige l'utilisateur à spécifier cet en-tête dans la requête. | s3:PutObject s3:PutObjectAcl |
| Exiger que l'utilisateur spécifie le paramètre de délimitation dans la requête Get Bucket (List Objects). | s3:PutObject s3:PutObjectAcl s3:DeleteObjectVersion |
| Limitez le nombre de clés que Object Storage Service renvoie en réponse à la requête Get Bucket (List Objects) en demandant à l'utilisateur de spécifier le paramètre max-keys. | s3:ListBucket s3:ListBucketVersions |
Last updated