SlideShare une entreprise Scribd logo
1  sur  37
Azure Policy
Un outil très puissant pour votre gouvernance
Instant publicitaire
Lead Cloud Solution Architect chez Société Générale
Microsoft MVP Azure depuis 2012
Quelques blogs : https://woivre.fr & https://woivre.com
LinkedIn : https://linkedin.com/in/wilfriedwoivre
X : https://x.com/wilfriedwoivre
Agenda
• Introduction à Azure Policy
• Les différents effets
• L’intégration à Microsoft Defender for Cloud
• Les pièges à éviter
• C’est quoi la propriété mode
• Les APIs Azure évoluent, comment vivre avec
Introduction à Azure Policy
Rapide résumé
• Aide à appliquer des normes et des standards
• Convention de nommage
• Réglementation
• Sécurité
• Aide pour un passage à l’échelle
• Fourni un tableau de bord de la conformité
• Basé sur les APIs Azure
• Pas un outil type Sentinel pour Terraform
Propulsé par Microsoft
• Et oui, ce n’est pas un énième produit créé par Microsoft et non
suivis
• Sick to serverlesslibrary.net, blueprints, …
• Beaucoup de policies déjà inclues dans Azure, c’est à vous les
configurer et des les appliquer
• Built In policy definition: 2261 à ce jour
• Built in policy initiative definition: 124
Built In : https://github.com/Azure/azure-policy
Community Policy : https://github.com/Azure/Community-
Policy
Bonne nouvelle, ce n’est pas du YAML
A quoi cela ressemble ?
Les nombreux effets
12 effets à ce jour
AddToNetworkGroup
• Lié à l’usage spécifique de Azure Virtual Network Manager
• Dédié au mode Microsoft.Network.Data
Exemple:
Ajoute un virtual network à un network group en function de sa
convention de nommage
Append
• Ajoute un champ au payload de la ressource
• Uniquement lors des actions */write
• avant qu’elle soit traité par le Resource Provider
• Pas d’intelligence dans l’action, vérifié bien que le champ
n’existe pas dans votre condition
Exemple:
Ajout de la propriété minimalTlsVersion à 1.2 sur eventhub
Audit
• Pour le mode Indexed ou All, uniquement pour des buts de
compliance base sur les payload des resources Azure
• Pour le mode Microsoft.Kubernetes.Data il est possible d’aller
plus loin en prenant en compte des sources extérieurs, et
d’affiner notre scope au sein de notre cluster Kubernetes
Exemple:
Auditer que tous nos EventHubs sont en minimalTLSVersion à
1.2
AuditIfNotExists
• Permet de vérifier l’existence d’une inner resource
Exemple:
L’existence des Diagnostics Settings, une extension de Virtual
Machines
Deny
• Pour le mode Indexed ou All, uniquement pour des buts de
compliance base sur les payload des resources Azure
• Pour le mode Microsoft.Kubernetes.Data il est possible d’aller
plus loin en prenant en compte des sources extérieurs, et
d’affiner notre scope au sein de notre cluster Kubernetes
Exemple:
Refuser la création ou la mise à jour des EventHubs qui ne sont
pas en minimumTLSVersion à 1.2
DenyAction
• Permet de refuser l’action de suppression sur une inner
resource
Exemple:
Suppression des Diagnostics Settings, des extensions de Virtual
Machines
DeployIfNotExists
• Permet de lancer un ARM Template automatiquement
• Complexe à gérer entre le if de la policy et l’existence condition
qui évite les déploiement à outrance
Exemple:
Mise en place de diagnosticsSettings, configuration de SQL
Database
Disabled
• Utile si vous voulez paramétrer les effets des policy dans des
initiatives.
• A ne pas trop en abuser pour éviter le “bruit” d’avoir un trop
grand nombre de policy “Compliant” alors qu’elles sont en
Disabled
Manual
• Utile pour des éléments de compliance, où de règle non
verifiable dans Azure directement
• Nécessite une attestation sur l’honneur de la bonne application
de la policy
Exemple:
Si on souhaite avoir un backup onpremise pour chaque base
disponible dans Azure, on peut y ajouter une policy en mode
manual, et les responsables des applications peuvent attester de
la présence du backup
Modify
• Permet de remplacer une propriété du payload par une autre.
• Très pratique quand vous ne voulez pas vous êmbêter avec les valeurs
par défaut de terraform ou des blades Azure
• Pas disponible pour toutes les propriétés
Exemple:
Remplacer à chaque fois tous les ACLs d’un storage sans prendre
en compte l’existant
Mutate
• Uniquement pour Kubernetes
• Permet de modifier une propriété par une autre, n’est pas
disponible pour toutes les propriétés
Bref
Une execution ordonnée
• Disabled
• Append & Modify
• Deny
• Audit
• Manual
• AuditIfNotExists
• denyAction
Intégrons nos Azure Policy dans Defender
for cloud
Une option payante : Regulatory
Compliance
• Contient beaucoup de standard que vous pouvez activer et
configurer
• A l’unique condition que vous y preniez du temps
• Vous permet d’avoir des vues uniques par standard du marché
tel que
• CIS Benchmark
• SOC 2 Type 2
• NIST
The legacy way
• Basé sur les initiatives
• Cela prend du temps à s’activer
• +/- 5 min pour assigner la policy via les settings de Defender for Cloud
• +/- 6h pour voir l’onglet apparaître dans Regulatory Compliance
The new way
• Ne prend plus en compte les policy / initiatives personnalisée
• Peut être bientôt si les dieux des roadmaps nous entendent….
• Possible de se créer un standard / recommendation par rapport
aux policies builtins
• Création d’une initiative basé sur notre sélection
Démo
Les pièges à éviter
La propriété mode
• Resource Manager mode
• all : Supporte tous les types de ressources, les souscriptions, et les
ressource group
• Indexed : Uniquement les ressources qui supportent les propriétés tags &
location. Mais pas les ressource group
• Resource Provider Mode
• Microsoft.Kubernetes.Data
• Microsoft.KeyVault.Data
• Microsoft.Network.Data
• Microsoft.ManagedHSM.Data
• Microsoft.DataFactory.Data
• Microsoft.MachineLearningServices.v2.Data
L’enfer des versions d’API
• Après plus de 10 ans d’existence les APIs Azure ont évoluées
• Chaque ressource provider est responsable de ses APIs
• Des nouvelles fonctionnalités toutes les semaines
Et si on regarde EventHub
2024-01-01 Disponible en 2017-04-01
id oui
identity.principalId non
identity.tenantId non
identity.type non
identity.userAssignedIdentities non
location oui
name oui
properties.alternateName non
properties.clusterArmId non
properties.createdAt oui
properties.disableLocalAuth non
properties.encryption.keySource non
properties.encryption.keyVaultProperties non
properties.encryption.requireInfrastructureEncryption non
properties.isAutoInflateEnabled oui
properties.kafkaEnabled oui
properties.maximumThroughputUnits oui
properties.metricId oui
properties.minimumTlsVersion non
properties.privateEndpointConnections non
properties.provisioningState oui
properties.publicNetworkAccess non
properties.serviceBusEndpoint oui
properties.status non
properties.updatedAt oui
properties.zoneRedundant non
sku oui
systemData non
tags oui
type oui
Policy Deny + Append
Let’s go
Policy Modify
Let’s go
Démo
Questions ?
J’ai peut être une réponse 

Contenu connexe

Similaire à Azure Policy: Un outil pour la gouvernance

Démonstration : Comment la plateforme Denodo permet d'accélérer l'analyse de ...
Démonstration : Comment la plateforme Denodo permet d'accélérer l'analyse de ...Démonstration : Comment la plateforme Denodo permet d'accélérer l'analyse de ...
Démonstration : Comment la plateforme Denodo permet d'accélérer l'analyse de ...Denodo
 
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...Publicis Sapient Engineering
 
Déploiement de Modèles Machine Learning avec Kubernetes
Déploiement de Modèles Machine Learning avec KubernetesDéploiement de Modèles Machine Learning avec Kubernetes
Déploiement de Modèles Machine Learning avec KubernetesIbrahima Mbodji
 
ReBuild 2019 - Gouvernance Financière 1.0
ReBuild 2019 - Gouvernance Financière 1.0ReBuild 2019 - Gouvernance Financière 1.0
ReBuild 2019 - Gouvernance Financière 1.0Benoît SAUTIERE
 
AWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybrides
AWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybridesAWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybrides
AWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybridesAmazon Web Services
 
Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017Gerard Konan
 
Cours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdfCours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdfboulonvert
 
Webinar bonnes pratiques securite
Webinar   bonnes pratiques securiteWebinar   bonnes pratiques securite
Webinar bonnes pratiques securitejumeletArnaud
 
Webséminaire DBaaS (Novembre 2014)
Webséminaire DBaaS (Novembre 2014)Webséminaire DBaaS (Novembre 2014)
Webséminaire DBaaS (Novembre 2014)Jean-Philippe PINTE
 
Sw 100 fr docker conteneurisation des applications
Sw 100 fr docker conteneurisation des applicationsSw 100 fr docker conteneurisation des applications
Sw 100 fr docker conteneurisation des applicationsStephane Woillez
 
Nuxeo en mode cloud SWORD Group - Nuxeo Tour 2014
Nuxeo en mode cloud SWORD Group - Nuxeo Tour 2014Nuxeo en mode cloud SWORD Group - Nuxeo Tour 2014
Nuxeo en mode cloud SWORD Group - Nuxeo Tour 2014Nuxeo
 
Migrer de Jenkins vers Azure DevOps les Builds Java
Migrer de Jenkins vers Azure DevOps les Builds JavaMigrer de Jenkins vers Azure DevOps les Builds Java
Migrer de Jenkins vers Azure DevOps les Builds JavaCédric Leblond
 
L’informatique efficience
L’informatique efficienceL’informatique efficience
L’informatique efficienceMichel Bruchet
 
Contrôler les usages de vos informations dans le Cloud avec Windows Azure AD ...
Contrôler les usages de vos informations dans le Cloud avec Windows Azure AD ...Contrôler les usages de vos informations dans le Cloud avec Windows Azure AD ...
Contrôler les usages de vos informations dans le Cloud avec Windows Azure AD ...Microsoft Technet France
 
[DevTestday] Keynote
[DevTestday] Keynote [DevTestday] Keynote
[DevTestday] Keynote Cellenza
 
📝 ✅ La checklist ultime pour rendre vos applications cloud native
📝 ✅ La checklist ultime pour rendre vos applications cloud native 📝 ✅ La checklist ultime pour rendre vos applications cloud native
📝 ✅ La checklist ultime pour rendre vos applications cloud native KatiaHIMEUR1
 
Cedric leblond migrer jenkins AWS vers Azure Devops
Cedric leblond migrer jenkins AWS vers Azure DevopsCedric leblond migrer jenkins AWS vers Azure Devops
Cedric leblond migrer jenkins AWS vers Azure DevopsFactoVia
 
Cedric leblond migrer jenkins AWS vers Azure Devops
Cedric leblond migrer jenkins AWS vers Azure DevopsCedric leblond migrer jenkins AWS vers Azure Devops
Cedric leblond migrer jenkins AWS vers Azure DevopsAZUG FR
 
BlueData EPIC datasheet (en Français)
BlueData EPIC datasheet (en Français)BlueData EPIC datasheet (en Français)
BlueData EPIC datasheet (en Français)BlueData, Inc.
 
Agile lille 2015 devops etapres
Agile lille 2015 devops etapresAgile lille 2015 devops etapres
Agile lille 2015 devops etapresLaurent Tardif
 

Similaire à Azure Policy: Un outil pour la gouvernance (20)

Démonstration : Comment la plateforme Denodo permet d'accélérer l'analyse de ...
Démonstration : Comment la plateforme Denodo permet d'accélérer l'analyse de ...Démonstration : Comment la plateforme Denodo permet d'accélérer l'analyse de ...
Démonstration : Comment la plateforme Denodo permet d'accélérer l'analyse de ...
 
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
XebiCon'16 : Architecture MicroServices avec Azure par Michel Hubert, CTO de ...
 
Déploiement de Modèles Machine Learning avec Kubernetes
Déploiement de Modèles Machine Learning avec KubernetesDéploiement de Modèles Machine Learning avec Kubernetes
Déploiement de Modèles Machine Learning avec Kubernetes
 
ReBuild 2019 - Gouvernance Financière 1.0
ReBuild 2019 - Gouvernance Financière 1.0ReBuild 2019 - Gouvernance Financière 1.0
ReBuild 2019 - Gouvernance Financière 1.0
 
AWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybrides
AWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybridesAWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybrides
AWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybrides
 
Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017
 
Cours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdfCours Devops Sparks.pptx.pdf
Cours Devops Sparks.pptx.pdf
 
Webinar bonnes pratiques securite
Webinar   bonnes pratiques securiteWebinar   bonnes pratiques securite
Webinar bonnes pratiques securite
 
Webséminaire DBaaS (Novembre 2014)
Webséminaire DBaaS (Novembre 2014)Webséminaire DBaaS (Novembre 2014)
Webséminaire DBaaS (Novembre 2014)
 
Sw 100 fr docker conteneurisation des applications
Sw 100 fr docker conteneurisation des applicationsSw 100 fr docker conteneurisation des applications
Sw 100 fr docker conteneurisation des applications
 
Nuxeo en mode cloud SWORD Group - Nuxeo Tour 2014
Nuxeo en mode cloud SWORD Group - Nuxeo Tour 2014Nuxeo en mode cloud SWORD Group - Nuxeo Tour 2014
Nuxeo en mode cloud SWORD Group - Nuxeo Tour 2014
 
Migrer de Jenkins vers Azure DevOps les Builds Java
Migrer de Jenkins vers Azure DevOps les Builds JavaMigrer de Jenkins vers Azure DevOps les Builds Java
Migrer de Jenkins vers Azure DevOps les Builds Java
 
L’informatique efficience
L’informatique efficienceL’informatique efficience
L’informatique efficience
 
Contrôler les usages de vos informations dans le Cloud avec Windows Azure AD ...
Contrôler les usages de vos informations dans le Cloud avec Windows Azure AD ...Contrôler les usages de vos informations dans le Cloud avec Windows Azure AD ...
Contrôler les usages de vos informations dans le Cloud avec Windows Azure AD ...
 
[DevTestday] Keynote
[DevTestday] Keynote [DevTestday] Keynote
[DevTestday] Keynote
 
📝 ✅ La checklist ultime pour rendre vos applications cloud native
📝 ✅ La checklist ultime pour rendre vos applications cloud native 📝 ✅ La checklist ultime pour rendre vos applications cloud native
📝 ✅ La checklist ultime pour rendre vos applications cloud native
 
Cedric leblond migrer jenkins AWS vers Azure Devops
Cedric leblond migrer jenkins AWS vers Azure DevopsCedric leblond migrer jenkins AWS vers Azure Devops
Cedric leblond migrer jenkins AWS vers Azure Devops
 
Cedric leblond migrer jenkins AWS vers Azure Devops
Cedric leblond migrer jenkins AWS vers Azure DevopsCedric leblond migrer jenkins AWS vers Azure Devops
Cedric leblond migrer jenkins AWS vers Azure Devops
 
BlueData EPIC datasheet (en Français)
BlueData EPIC datasheet (en Français)BlueData EPIC datasheet (en Français)
BlueData EPIC datasheet (en Français)
 
Agile lille 2015 devops etapres
Agile lille 2015 devops etapresAgile lille 2015 devops etapres
Agile lille 2015 devops etapres
 

Azure Policy: Un outil pour la gouvernance

  • 1. Azure Policy Un outil très puissant pour votre gouvernance
  • 2. Instant publicitaire Lead Cloud Solution Architect chez Société Générale Microsoft MVP Azure depuis 2012 Quelques blogs : https://woivre.fr & https://woivre.com LinkedIn : https://linkedin.com/in/wilfriedwoivre X : https://x.com/wilfriedwoivre
  • 3. Agenda • Introduction à Azure Policy • Les différents effets • L’intégration à Microsoft Defender for Cloud • Les pièges à éviter • C’est quoi la propriété mode • Les APIs Azure évoluent, comment vivre avec
  • 5. Rapide résumé • Aide à appliquer des normes et des standards • Convention de nommage • Réglementation • Sécurité • Aide pour un passage à l’échelle • Fourni un tableau de bord de la conformité • Basé sur les APIs Azure • Pas un outil type Sentinel pour Terraform
  • 6. Propulsé par Microsoft • Et oui, ce n’est pas un énième produit créé par Microsoft et non suivis • Sick to serverlesslibrary.net, blueprints, … • Beaucoup de policies déjà inclues dans Azure, c’est à vous les configurer et des les appliquer • Built In policy definition: 2261 à ce jour • Built in policy initiative definition: 124 Built In : https://github.com/Azure/azure-policy Community Policy : https://github.com/Azure/Community- Policy
  • 7. Bonne nouvelle, ce n’est pas du YAML
  • 8. A quoi cela ressemble ?
  • 9. Les nombreux effets 12 effets à ce jour
  • 10. AddToNetworkGroup • Lié à l’usage spécifique de Azure Virtual Network Manager • Dédié au mode Microsoft.Network.Data Exemple: Ajoute un virtual network à un network group en function de sa convention de nommage
  • 11. Append • Ajoute un champ au payload de la ressource • Uniquement lors des actions */write • avant qu’elle soit traité par le Resource Provider • Pas d’intelligence dans l’action, vérifié bien que le champ n’existe pas dans votre condition Exemple: Ajout de la propriété minimalTlsVersion à 1.2 sur eventhub
  • 12. Audit • Pour le mode Indexed ou All, uniquement pour des buts de compliance base sur les payload des resources Azure • Pour le mode Microsoft.Kubernetes.Data il est possible d’aller plus loin en prenant en compte des sources extérieurs, et d’affiner notre scope au sein de notre cluster Kubernetes Exemple: Auditer que tous nos EventHubs sont en minimalTLSVersion à 1.2
  • 13. AuditIfNotExists • Permet de vérifier l’existence d’une inner resource Exemple: L’existence des Diagnostics Settings, une extension de Virtual Machines
  • 14. Deny • Pour le mode Indexed ou All, uniquement pour des buts de compliance base sur les payload des resources Azure • Pour le mode Microsoft.Kubernetes.Data il est possible d’aller plus loin en prenant en compte des sources extérieurs, et d’affiner notre scope au sein de notre cluster Kubernetes Exemple: Refuser la création ou la mise à jour des EventHubs qui ne sont pas en minimumTLSVersion à 1.2
  • 15. DenyAction • Permet de refuser l’action de suppression sur une inner resource Exemple: Suppression des Diagnostics Settings, des extensions de Virtual Machines
  • 16. DeployIfNotExists • Permet de lancer un ARM Template automatiquement • Complexe à gérer entre le if de la policy et l’existence condition qui évite les déploiement à outrance Exemple: Mise en place de diagnosticsSettings, configuration de SQL Database
  • 17. Disabled • Utile si vous voulez paramétrer les effets des policy dans des initiatives. • A ne pas trop en abuser pour éviter le “bruit” d’avoir un trop grand nombre de policy “Compliant” alors qu’elles sont en Disabled
  • 18. Manual • Utile pour des éléments de compliance, où de règle non verifiable dans Azure directement • Nécessite une attestation sur l’honneur de la bonne application de la policy Exemple: Si on souhaite avoir un backup onpremise pour chaque base disponible dans Azure, on peut y ajouter une policy en mode manual, et les responsables des applications peuvent attester de la présence du backup
  • 19. Modify • Permet de remplacer une propriété du payload par une autre. • Très pratique quand vous ne voulez pas vous êmbêter avec les valeurs par défaut de terraform ou des blades Azure • Pas disponible pour toutes les propriétés Exemple: Remplacer à chaque fois tous les ACLs d’un storage sans prendre en compte l’existant
  • 20. Mutate • Uniquement pour Kubernetes • Permet de modifier une propriété par une autre, n’est pas disponible pour toutes les propriétés
  • 21. Bref
  • 22. Une execution ordonnée • Disabled • Append & Modify • Deny • Audit • Manual • AuditIfNotExists • denyAction
  • 23. Intégrons nos Azure Policy dans Defender for cloud
  • 24. Une option payante : Regulatory Compliance • Contient beaucoup de standard que vous pouvez activer et configurer • A l’unique condition que vous y preniez du temps • Vous permet d’avoir des vues uniques par standard du marché tel que • CIS Benchmark • SOC 2 Type 2 • NIST
  • 25. The legacy way • Basé sur les initiatives • Cela prend du temps à s’activer • +/- 5 min pour assigner la policy via les settings de Defender for Cloud • +/- 6h pour voir l’onglet apparaître dans Regulatory Compliance
  • 26. The new way • Ne prend plus en compte les policy / initiatives personnalisée • Peut être bientôt si les dieux des roadmaps nous entendent…. • Possible de se créer un standard / recommendation par rapport aux policies builtins • Création d’une initiative basé sur notre sélection
  • 27. Démo
  • 28. Les pièges à éviter
  • 29. La propriété mode • Resource Manager mode • all : Supporte tous les types de ressources, les souscriptions, et les ressource group • Indexed : Uniquement les ressources qui supportent les propriétés tags & location. Mais pas les ressource group • Resource Provider Mode • Microsoft.Kubernetes.Data • Microsoft.KeyVault.Data • Microsoft.Network.Data • Microsoft.ManagedHSM.Data • Microsoft.DataFactory.Data • Microsoft.MachineLearningServices.v2.Data
  • 30. L’enfer des versions d’API • Après plus de 10 ans d’existence les APIs Azure ont évoluées • Chaque ressource provider est responsable de ses APIs • Des nouvelles fonctionnalités toutes les semaines
  • 31. Et si on regarde EventHub 2024-01-01 Disponible en 2017-04-01 id oui identity.principalId non identity.tenantId non identity.type non identity.userAssignedIdentities non location oui name oui properties.alternateName non properties.clusterArmId non properties.createdAt oui properties.disableLocalAuth non properties.encryption.keySource non properties.encryption.keyVaultProperties non properties.encryption.requireInfrastructureEncryption non properties.isAutoInflateEnabled oui properties.kafkaEnabled oui properties.maximumThroughputUnits oui properties.metricId oui properties.minimumTlsVersion non properties.privateEndpointConnections non properties.provisioningState oui properties.publicNetworkAccess non properties.serviceBusEndpoint oui properties.status non properties.updatedAt oui properties.zoneRedundant non sku oui systemData non tags oui type oui
  • 32. Policy Deny + Append
  • 36. Démo
  • 37. Questions ? J’ai peut être une réponse 