Configurer une stratégie d’expiration pour les signatures d’accès partagé

Vous pouvez utiliser une signature d’accès partagé (SAP) pour déléguer l’accès aux ressources de votre compte de stockage Azure. Un jeton SAP comprend la ressource ciblée, les autorisations accordées et l’intervalle pendant lequel l’accès est autorisé. Les meilleures pratiques recommandent de limiter l’intervalle d’une signature d’accès partagé au cas où elle serait compromise. En définissant une stratégie d’expiration des signatures d’accès partagé (SAP) pour vos comptes de stockage, vous pouvez fournir une limite d’expiration supérieure recommandée lorsqu’un utilisateur crée un service ou un compte SAP.

Pour plus d’informations sur les signatures d’accès partagé, consultez Accorder un accès limité aux ressources du Stockage Azure à l’aide des signatures d’accès partagé (SAP).

À propos des stratégies d’expiration SAP

Vous pouvez configurer une stratégie d’expiration SAP sur le compte de stockage. La stratégie d’expiration SAP spécifie la limite supérieure recommandée pour le champ d’expiration signé sur un service ou un compte SAP. La limite supérieure recommandée est spécifiée sous la forme d’une valeur de date/heure qui est un nombre combiné de jours, d’heures, de minutes et de secondes.

L’intervalle de validité de la SAP est calculé en soustrayant la valeur de date/heure du champ début signé de la valeur date/heure du champ d’expiration signé. Si la valeur résultante est inférieure ou égale à la limite supérieure recommandée, la SAP est conforme à la stratégie d’expiration SAP.

Après avoir configuré la stratégie d’expiration des SAP, un utilisateur qui crée une signature d’accès partagé de service ou de compte avec un intervalle dépassant la limite supérieure recommandée verra un avertissement.

Une stratégie d’expiration de signature d’accès partagé n’empêche pas un utilisateur de créer une signature d’accès partagé avec une expiration supérieure à la limite recommandée par la stratégie. Lorsqu’un utilisateur crée une signature d’accès partagé qui enfreint la stratégie, un avertissement s’affiche avec l’intervalle maximal recommandé. Si vous avez configuré un paramètre de diagnostic pour la journalisation avec Azure Monitor, le Stockage Azure écrit un message à la propriété SasExpiryStatus dans les journaux d’activité à chaque fois qu’un utilisateur utilise une SAP qui expire après l’intervalle recommandé. Le message indique que l’intervalle de validité de la SAP dépasse l’intervalle recommandé.

Lorsqu’une stratégie d’expiration SAP est appliquée pour le compte de stockage, le champ de début signé est requis pour chaque SAP. Si le champ de début signé n’est pas inclus dans la SAP et que vous avez configuré un paramètre de diagnostic pour la journalisation avec Azure Monitor, le Stockage Azure écrit alors un message dans la propriété SasExpiryStatus dans les journaux d’activité chaque fois qu’un utilisateur utilise une SAP sans valeur pour le champ de début signé.

Configurer une stratégie d’expiration SAS

Quand vous configurez une stratégie d’expiration SAS sur un compte de stockage, la stratégie s’applique à chaque type de SAS signée avec la clé de compte. Les types de signatures d’accès partagé signées avec la clé de compte sont la SAP de service et la SAP de compte.

Dois-je d’abord faire pivoter les clés d’accès au compte ?

Avant de pouvoir configurer une stratégie d’expiration de SAS, vous devrez peut-être faire tourner au moins une fois chacune des clés d’accès à votre compte. Si la propriété keyCreationTime du compte de stockage a une valeur nulle pour l’une des clés d’accès au compte (key1 et key2), vous devrez les faire pivoter. Pour déterminer si la propriété keyCreationTime est nulle, consultez Obtenir l’heure de création des clés d’accès au compte pour un compte de stockage. Si vous tentez de configurer une stratégie d’expiration de signature d’accès partagé (SAP) et que les clés doivent d’abord faire l’objet d’une rotation, l’opération échoue.

Comment configurer une stratégie d’expiration SAP

Vous pouvez configurer une stratégie d’expiration SAP à l’aide du Portail Azure, PowerShell ou Azure CLI.

Pour configurer une stratégie d’expiration de SAS dans le portail Azure, procédez comme suit :

  1. Accédez à votre compte de stockage dans le portail Azure.

  2. Sous Paramètres, sélectionnez Configuration.

  3. Localisez le paramètre permettant d’Autoriser la limite supérieure recommandée pour l’intervalle d’expiration de la signature d’accès partagé (SAP) est définissez-le sur Activé.

    Notes

    Si le paramètre est grisé et que vous voyez le message affiché dans l’image ci-dessous, vous devez faire pivoter les deux clés d’accès au compte avant de pouvoir définir la limite supérieure recommandée pour les valeurs d’intervalle d’expiration SAP :

    Screenshot showing the option to configure a SAS expiration policy is grayed out in the Azure portal.

  4. Spécifiez les valeurs de temps sous Limite supérieure recommandée pour l’intervalle d’expiration SAP pour l’intervalle recommandé pour toutes les nouvelles signatures d’accès partagé créées sur les ressources de ce compte de stockage.

    Screenshot showing how to configure a SAS expiration policy in the Azure portal.

  5. Cliquez sur Enregistrer pour enregistrer vos modifications.

Requête de journaux de violations de stratégie

Pour consigner l’utilisation d’une signature d’accès partagé valide sur un intervalle plus long que celui recommandé par la stratégie d’expiration de SAP, commencez par créer un paramètre de diagnostic qui envoie des journaux à un espace de travail Azure Log Analytics. Pour plus d’informations, consultez l’article Envoyer des journaux Azure Log Analytics.

Ensuite, utilisez une requête de journal Azure Monitor pour surveiller si la stratégie a été violée. Créez une nouvelle requête dans votre espace de travail Log Analytics, ajoutez le texte de requête suivant, puis appuyez sur Exécuter.

StorageBlobLogs 
| where SasExpiryStatus startswith "Policy violated"
| summarize count() by AccountName, SasExpiryStatus

Utiliser une stratégie intégrée pour surveiller la conformité

Vous pouvez analyser vos comptes de stockage avec Azure Policy pour vous assurer que les comptes de stockage de votre abonnement ont configuré des stratégies d’expiration SAP. Le stockage Azure fournit une stratégie intégrée qui permet de s’assurer que ce paramètre est configuré pour les comptes. Pour plus d’informations sur la stratégie intégrée, consultez Les comptes de stockage doivent avoir des stratégies de signature d’accès partagé (SAP) configurées dans la Liste de définitions des stratégies intégrées.

Attribuer la stratégie intégrée à une étendue de ressources

Pour attribuer la stratégie intégrée à l’étendue appropriée dans le portail Azure, procédez comme suit :

  1. Dans le portail Azure, recherchez Policy pour afficher le tableau de bord d’Azure Policy.

  2. Dans la section Création, sélectionnez Attributions.

  3. Choisissez Attribuer la stratégie.

  4. Dans l’onglet Informations de base de la page Attribuer une stratégie, dans la section Étendue, spécifiez l’étendue de l’attribution de stratégie. Sélectionnez le bouton Plus pour choisir l’abonnement et le groupe de ressources facultatif.

  5. Pour le champ Définition de stratégie, sélectionnez le bouton Plus, puis entrez les clés de compte de stockage dans le champ Rechercher. Sélectionnez la définition de stratégie nommée Les clés de compte de stockage ne doivent pas être expirées.

    Screenshot showing how to select the built-in policy to monitor validity intervals for shared access signatures for your storage accounts

  6. Sélectionnez Vérifier + créer pour attribuer la définition de stratégie à l’étendue spécifiée.

    Screenshot showing how to create the policy assignment

Surveiller la conformité avec la stratégie d’expiration de clé

Pour surveiller la conformité de vos comptes de stockage avec la stratégie d’expiration de clé, procédez comme suit :

  1. Sur le tableau de bord Azure Policy, recherchez la définition de la stratégie intégrée pour l’étendue que vous avez spécifiée dans l’attribution de stratégie. Vous pouvez rechercher Storage accounts should have shared access signature (SAS) policies configured dans la zone Rechercher afin de filtrer la stratégie intégrée.

  2. Sélectionnez le nom de la stratégie avec l’étendue souhaitée.

  3. Dans la page Attribution de stratégie pour la stratégie intégrée, sélectionnez Afficher la conformité. Tous les comptes de stockage dans l’abonnement et le groupe de ressources spécifiés qui ne répondent pas aux exigences de la stratégie apparaissent dans le rapport de conformité.

    Screenshot showing how to view the compliance report for the SAS expiration built-in policy

Pour mettre un compte de stockage en conformité, configurez une stratégie d’expiration SAS pour ce compte, comme décrit dans Configurer une stratégie d’expiration SAS.

Voir aussi