Project Oxygen & Ideo-LabIDEO LAB Dashboard 2026

🛂 Storage Systems — Chapitre 33 : Contrôle d’accès

Chapitre dense sur la sécurité d’accès au stockage : IAM, ACL, RBAC, AD/LDAP, Zero Trust Storage, least privilege, PAM, MFA, comptes de service, bucket policies, NAS permissions, SAN zoning/masking, Kubernetes storage access, accès KMS, accès backup/restore, classification, accès conditionnel, audit, exposition publique, segmentation, policy-as-code, revues périodiques, runbooks et checklist production.

IAMACLRBACAD / LDAPZero Trust StorageLeast privilege
33.1

IAM

Identités, rôles, policies, comptes de service, permissions conditionnelles et séparation administration/usage.

IAMRolesPolicies
33.2

ACL

Contrôle d’accès fichier, objet, bucket, volume, LUN, share, posix ACL, NTFS ACL et héritage.

ACLFileObject
33.3

RBAC

Kubernetes, cloud, enterprise : accès par rôles, groupes, bindings, scopes, namespaces et projets.

RBACKubernetesCloud
33.4

AD / LDAP

NAS et enterprise : Active Directory, LDAP, Kerberos, groupes, UID/GID, trusts et identity mapping.

ADLDAPKerberos
33.5

Zero Trust Storage

Principe d’accès minimal : never trust, always verify, segmentation, MFA, context-aware access et audit permanent.

Zero TrustLeast privilegeMFA
33.6

Least privilege

Droits minimaux, deny by default, séparation lecture/écriture/admin, just-in-time access et réduction blast radius.

Least privilegeDeny by defaultJIT
33.7

PAM et comptes privilégiés

Privileged Access Management : coffre, rotation mots de passe, session recording, break-glass, approbation et traçabilité.

PAMAdminBreak-glass
33.8

MFA et accès sensibles

MFA pour consoles storage, cloud, KMS, backup, admin NAS, bastion et opérations destructives.

MFASensitive opsBastion
33.9

Comptes de service

Service accounts, workload identity, access keys, tokens, rotation, scopes et suppression des secrets statiques.

Service accountsTokensWorkload ID
33.10

Bucket policies et object storage

Policies S3/Blob/GCS, public access block, conditions, prefixes, object lock, cross-account et presigned URLs.

BucketS3 policiesPublic block
33.11

NAS shares et permissions

SMB/NFS permissions, export rules, root squash, NTFS ACL, POSIX ACL, inheritance et accès invités.

NASSMBNFS
33.12

LUN masking et zoning

SAN : initiators, targets, WWPN, zoning FC, iSCSI ACL, host groups et multipathing sécurisé.

SANZoningMasking
33.13

Accès stockage Kubernetes

StorageClass, PV/PVC, RBAC, CSI secrets, namespace isolation, volume snapshots et protection multi-tenant.

K8sPVCCSI
33.14

Accès aux clés KMS

Qui peut encrypt, decrypt, rotate, disable, destroy : séparation KMS/storage et logs d’usage clés.

KMSDecryptKey policy
33.15

Accès backup et restauration

Droits backup/restore séparés, immutabilité, opérateurs backup, restore approval et protection contre ransomware.

BackupRestoreApproval
33.16

Classification et labels

Classifier données : public/interne/confidentiel/secret, labels, tags, owners, legal basis et rétention.

ClassificationLabelsOwners
33.17

Accès conditionnel

Conditions : réseau, pays, device posture, heure, MFA, risk score, IP allowlist et accès adaptatif.

ConditionalContextRisk
33.18

Audit d’accès

Logs d’accès fichiers, objets, buckets, clés, admins, exports, restores, SIEM, alertes et investigation.

AuditSIEMAccess logs
33.19

Exposition publique accidentelle

Buckets publics, shares ouverts, snapshots partagés, liens presigned, ACL héritées et erreurs de configuration.

Public exposureBucketsShares
33.20

Segmentation et chemins d’administration

Réseaux d’admin, bastions, private endpoints, management plane, data plane, firewall et jump hosts.

SegmentationBastionPrivate endpoint
33.21

IAM as Code et policy review

Terraform, Open Policy Agent, policy linting, drift detection, pull requests, simulation et approbation.

IaCOPAPolicy review
33.22

Revue périodique des accès

Access recertification, droits orphelins, comptes inactifs, groupes obsolètes, owner review et SoD.

RecertificationSoDReview
33.23

Runbooks contrôle d’accès

Créer, modifier, révoquer, auditer, répondre incident, désactiver token, isoler bucket, restaurer accès.

RunbookAccess opsIncident
33.24

Checklist production accès

GO/NO-GO : IAM/RBAC, MFA, logs, public block, least privilege, KMS separated, review, break-glass.

ChecklistProd-readyGO/NO-GO
33.1 IAM
Définition opérationnelle

Identités, rôles, policies, comptes de service, permissions conditionnelles et séparation administration/usage.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.2 ACL
Définition opérationnelle

Contrôle d’accès fichier, objet, bucket, volume, LUN, share, posix ACL, NTFS ACL et héritage.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.3 RBAC
Définition opérationnelle

Kubernetes, cloud, enterprise : accès par rôles, groupes, bindings, scopes, namespaces et projets.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.4 AD / LDAP
Définition opérationnelle

NAS et enterprise : Active Directory, LDAP, Kerberos, groupes, UID/GID, trusts et identity mapping.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.5 Zero Trust Storage
Définition opérationnelle

Principe d’accès minimal : never trust, always verify, segmentation, MFA, context-aware access et audit permanent.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.6 Least privilege
Définition opérationnelle

Droits minimaux, deny by default, séparation lecture/écriture/admin, just-in-time access et réduction blast radius.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.7 PAM et comptes privilégiés
Définition opérationnelle

Privileged Access Management : coffre, rotation mots de passe, session recording, break-glass, approbation et traçabilité.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.8 MFA et accès sensibles
Définition opérationnelle

MFA pour consoles storage, cloud, KMS, backup, admin NAS, bastion et opérations destructives.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.9 Comptes de service
Définition opérationnelle

Service accounts, workload identity, access keys, tokens, rotation, scopes et suppression des secrets statiques.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.10 Bucket policies et object storage
Définition opérationnelle

Policies S3/Blob/GCS, public access block, conditions, prefixes, object lock, cross-account et presigned URLs.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.11 NAS shares et permissions
Définition opérationnelle

SMB/NFS permissions, export rules, root squash, NTFS ACL, POSIX ACL, inheritance et accès invités.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.12 LUN masking et zoning
Définition opérationnelle

SAN : initiators, targets, WWPN, zoning FC, iSCSI ACL, host groups et multipathing sécurisé.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.13 Accès stockage Kubernetes
Définition opérationnelle

StorageClass, PV/PVC, RBAC, CSI secrets, namespace isolation, volume snapshots et protection multi-tenant.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.14 Accès aux clés KMS
Définition opérationnelle

Qui peut encrypt, decrypt, rotate, disable, destroy : séparation KMS/storage et logs d’usage clés.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.15 Accès backup et restauration
Définition opérationnelle

Droits backup/restore séparés, immutabilité, opérateurs backup, restore approval et protection contre ransomware.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.16 Classification et labels
Définition opérationnelle

Classifier données : public/interne/confidentiel/secret, labels, tags, owners, legal basis et rétention.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.17 Accès conditionnel
Définition opérationnelle

Conditions : réseau, pays, device posture, heure, MFA, risk score, IP allowlist et accès adaptatif.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.18 Audit d’accès
Définition opérationnelle

Logs d’accès fichiers, objets, buckets, clés, admins, exports, restores, SIEM, alertes et investigation.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.19 Exposition publique accidentelle
Définition opérationnelle

Buckets publics, shares ouverts, snapshots partagés, liens presigned, ACL héritées et erreurs de configuration.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.20 Segmentation et chemins d’administration
Définition opérationnelle

Réseaux d’admin, bastions, private endpoints, management plane, data plane, firewall et jump hosts.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.21 IAM as Code et policy review
Définition opérationnelle

Terraform, Open Policy Agent, policy linting, drift detection, pull requests, simulation et approbation.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.22 Revue périodique des accès
Définition opérationnelle

Access recertification, droits orphelins, comptes inactifs, groupes obsolètes, owner review et SoD.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.23 Runbooks contrôle d’accès
Définition opérationnelle

Créer, modifier, révoquer, auditer, répondre incident, désactiver token, isoler bucket, restaurer accès.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.
33.24 Checklist production accès
Définition opérationnelle

GO/NO-GO : IAM/RBAC, MFA, logs, public block, least privilege, KMS separated, review, break-glass.

Point clé : le contrôle d’accès storage doit gérer identité, autorisation, contexte, journalisation et révocation. Le chiffrement seul ne protège pas si les identités ont trop de droits.
Chaîne d’accès
IdentityPolicy / ACLResourceConditionAudit
ModelRBAC

Rôles et groupes.

RuleDeny

Deny by default.

ControlMFA

Accès sensibles.

ProofLogs

Traçabilité SIEM.

Composants
ComposantRôle / explication
Identity providerAD, LDAP, Entra ID, IAM cloud, OIDC, SAML, Kerberos, workload identity.
PrincipalUtilisateur, groupe, rôle, service account, machine identity, application ou workload Kubernetes.
Policy / ACLRègles qui autorisent, refusent ou conditionnent l’accès aux ressources storage.
Resource scopeBucket, prefix, objet, share, dossier, volume, LUN, namespace, KMS key, backup set.
ConditionMFA, IP, réseau privé, device, heure, tag, classification, owner, approval, risk score.
Audit trailLogs d’accès, modifications permissions, opérations admin, exports, restores et suppressions.
Cas d’usage
  • Sécuriser buckets S3, Azure Blob ou GCS
  • Limiter accès NAS SMB/NFS par groupes AD
  • Séparer admin storage, backup, KMS et restore
  • Protéger snapshots, volumes, LUNs et exports
  • Isoler namespaces Kubernetes et PVC
  • Prévenir ransomware, fuite publique et erreur humaine
ClassificationOwnerGroup / RolePolicyReviewRevoke
Avantages
  • Réduit blast radius en cas de compromission
  • Rend les accès auditables et révisables
  • Protège données sensibles et backups
  • Facilite conformité et séparation des rôles
  • Permet automatisation via policy-as-code
Risques / limites
  • Droits hérités incontrôlés
  • Comptes de service non rotatés
  • Buckets ou shares publics par erreur
  • Admins trop puissants contournant chiffrement
  • Logs absents ou non surveillés
Matrice de décision contrôle d’accès
QuestionDécision à prendre
Qui accède ?Humain, service account, workload, admin, prestataire, application, cluster ou pipeline CI/CD.
À quoi ?Bucket, prefix, share, dossier, LUN, snapshot, backup, clé KMS, namespace, export ou console admin.
Pourquoi ?Lecture, écriture, suppression, restore, purge, partage, chiffrement, rotation de clé ou administration.
Avec quelles conditions ?MFA, réseau privé, device conforme, horaire, approbation, ticket, owner, classification, pays.
Comment prouver ?Logs SIEM, access reviews, diffs IaC, tickets, alertes sur actions destructives et accès publics.
Comment révoquer ?Désactiver principal, token, clé API, groupe AD, role binding, ACL, bucket policy et sessions actives.
Règle pratique : pas d’accès direct permanent à des données critiques sans owner, justification, durée, MFA et logs.
Runbook contrôle d’accès
  1. Classer la donnée et identifier owner, criticité et base d’accès.
  2. Créer groupe ou rôle dédié, éviter droits individuels permanents.
  3. Appliquer least privilege : lecture, écriture, suppression et admin séparés.
  4. Ajouter conditions : MFA, réseau privé, tags, approbation ou durée limitée.
  5. Activer logs d’accès, alertes public exposure et modifications policies.
  6. Tester accès positif/négatif et tentative d’action destructive.
  7. Programmer recertification et révocation automatique des droits expirés.
# Examples: access control checks
aws s3api get-public-access-block --bucket my-bucket
aws s3api get-bucket-policy --bucket my-bucket
aws iam get-policy-version --policy-arn arn:aws:iam::123:policy/storage-read --version-id v1
kubectl auth can-i get pvc -n prod --as system:serviceaccount:prod:app
getfacl /srv/share/project
smbstatus
net rpc rights list accounts -U admin
NO-GO : bucket public non justifié, absence de MFA admin, comptes de service avec clés statiques non rotatées, logs désactivés, ou droits delete/restore non séparés.