Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S'applique à :Azure SQL Database
Azure SQL Managed Instance
Microsoft Entra ID, anciennement appelé Azure Active Directory, fournit une identité gérée automatiquement pour s'authentifier auprès de tout service Azure prenant en charge l'authentification Microsoft Entra, tel qu'Azure Key Vault, sans exposer les informations d'identification dans le code. Pour plus d’informations, consultez Types d’identités managées dans Azure.
Les identités managées sont de deux types :
- Attribuée par le système
- Attribuée par l’utilisateur
Pour en savoir plus, consultez Identités managées dans Microsoft Entra ID pour Azure SQL.
Pour TDE avec clé gérée par le client (CMK) dans Azure SQL, une identité managée sur le serveur est utilisée pour fournir des droits d’accès au serveur sur le coffre de clés ou le HSM managé. Par exemple, l’identité managée affectée par le système du serveur doit être fournie avec les autorisations Azure Key Vault avant d’activer TDE avec CMK sur le serveur.
Outre l’identité managée affectée par le système qui est déjà prise en charge pour TDE avec CMK, une identité managée affectée par l’utilisateur (UMI) affectée par l’utilisateur au serveur peut être utilisée pour permettre au serveur d’accéder au coffre de clés ou au HSM managé. Une condition préalable à l’activation du coffre de clés ou de l’accès HSM managé est de s’assurer que l’identité managée affectée par l’utilisateur a été fournie aux autorisations Get, wrapKey et unwrapKey sur le coffre de clés ou le HSM managé. Étant donné que l’identité managée affectée par l’utilisateur est une ressource autonome qui peut être créée et accordée à l’accès au coffre de clés ou au module HSM managé, TDE avec une clé gérée par le client peut désormais être activée au moment de la création du serveur ou de la base de données.
Note
Pour attribuer une identité managée affectée par l'utilisateur sur le serveur logique ou l’instance gérée, un utilisateur doit avoir le rôle RBAC Azure de Contributeur SQL Server utilisateur ou de Contributeur SQL Managed Instance avec tout autre rôle RBAC Azure contenant l’action Microsoft.ManagedIdentity/userAssignedIdentities/*/assign/action.
Avantages de l’utilisation de l’identité managée affectée par l'utilisateur pour le TDE géré par le client
Permet de pré-authentifier le coffre de clés ou l’accès HSM managé pour les serveurs logiques Azure SQL ou Azure SQL Managed Instances en créant une identité managée affectée par l’utilisateur et en lui accordant l’accès au coffre de clés ou au HSM managé, même avant la création du serveur ou de la base de données.
Permet de créer un serveur logique Azure SQL avec Transparent Data Encryption (TDE) et la clé gérée par le client (CMK) activés.
Permet à la même identité managée assignée par l'utilisateur d'être attribuée à plusieurs serveurs, supprimant ainsi la nécessité d'activer individuellement l'identité managée assignée par le système pour chaque serveur logique Azure SQL ou Azure SQL Managed Instance, et lui fournissant l'accès à un coffre de clés ou à un HSM managé.
Fournit la possibilité d’appliquer la CMK au moment de la création du serveur avec une stratégie Azure intégrée disponible.
Considérations lors de l’utilisation de l’identité managée affectée par l'utilisateur pour le TDE géré par le client
- Par défaut, TDE dans Azure SQL utilise le jeu d'identités managées affectées par l'utilisateur principal sur le serveur pour l'accès au coffre de clés ou au HSM managé. Si aucune identité affectée par l'utilisateur n'a été attribuée au serveur, l'identité managée affectée par le système au serveur est utilisée pour l'accès au coffre de clés ou au HSM managé.
- Lorsque vous utilisez une identité managée affectée par l’utilisateur pour TDE avec CMK, affectez l’identité au serveur et définissez-la comme identité principale pour le serveur.
- L'identité managée affectée par l'utilisateur principal nécessite un accès continu au coffre de clés ou au HSM managé (autorisations get, wrapKey, unwrapKey). Si l'accès de l'identité au coffre de clés ou au HSM managé est révoqué ou que les autorisations fournies ne sont pas suffisantes, la base de données passe à l'état Inaccessible.
- Si l'identité gérée affectée par l'utilisateur principal est remplacée par une autre identité gérée affectée par l'utilisateur, la nouvelle identité doit recevoir les autorisations requises pour le coffre de clés ou le HSM géré avant de mettre à jour l'identité principale.
- Pour basculer le serveur de l'identité managée assignée par l'utilisateur à l'identité managée assignée par le système pour l'accès au coffre de clés ou HSM managé, donnez à l'identité managée assignée par le système les autorisations requises pour le coffre de clés ou HSM managé, puis retirez toutes les identités managées assignées par l'utilisateur du serveur.
Importante
L'identité managée principale affectée par l'utilisateur utilisée pour le TDE avec le CMK ne doit pas être supprimée d'Azure. La suppression de cette identité entraînera la perte d'accès du serveur au coffre de clés ou au HSM managé, rendant les bases de données inaccessibles.
Limitations et problèmes connus
- Si le coffre de clés ou le HSM managé se trouve derrière un réseau virtuel qui utilise un pare-feu, l’option Autoriser les services Microsoft approuvés à contourner ce pare-feu doit être activée dans le menu Réseau du coffre de clés ou du HSM géré si vous souhaitez utiliser une identité managée affectée par l’utilisateur ou une identité managée affectée par le système. Une fois cette option activée, les clés disponibles ne peuvent pas figurer dans le menu TDE du serveur SQL dans le portail Azure. Pour définir une clé gérée par le client individuelle, vous devez utiliser un identificateur de clé. Lorsque l’option Autoriser les services Microsoft approuvés à contourner ce pare-feu n’est pas activée, l’erreur suivante est renvoyée :
Failed to save Transparent Data Encryption settings for SQL resource: <ServerName>. Error message: The managed identity with ID '/subscriptions/subscriptionID/resourcegroups/resource_name/providers/Microsoft.ManagedIdentity/userAssignedIdentities/umi_name' requires the following Azure Key Vault permissions: 'Get, WrapKey, UnwrapKey' to the key 'https://keyvault_name/keys/key_name'. Please grant the missing permissions to the identity. Additionally ensure the key is not expired and is not disabled. For expired key, please extend the key expiry time so that SQL can use it to perform wrap and unwrap operations. If your key vault is behind a virtual network or firewall, ensure you select the 'Allow trusted Microsoft services to bypass this firewall' option. (https://aka.ms/sqltdebyokcreateserver).- Si vous obtenez l’erreur ci-dessus, vérifiez si le coffre de clés ou le HSM managé se trouve derrière un réseau virtuel ou un pare-feu, puis vérifiez que l’option Autoriser les services Microsoft approuvés à contourner ce pare-feu est activée.
- Lorsque plusieurs identités managées affectées par l'utilisateur sont attribuées au serveur ou à l'instance gérée, l'opération réussit si une seule identité est supprimée du serveur à l'aide du volet Identité du Portail Azure, mais l'identité n'est pas supprimée du serveur. La suppression de toutes les identités mangées affectées par l’utilisateur à partir du Portail Azure fonctionne correctement.
- Lorsque le serveur ou l’instance managée est configuré avec le TDE géré par le client et que les identités managées attribuées par le système et attribuées par l’utilisateur sont activées sur le serveur, la suppression des identités managées attribuées par l’utilisateur du serveur sans d'abord avoir donné à l'identité managée attribuée par le système l’accès au coffre de clés ou au HSM managé entraîne un message d'erreur Erreur inattendue. Assurez-vous que l'identité managée affectée par le système dispose d'un accès au coffre de clés ou au HSM managé avant de supprimer l'identité managée affectée par l'utilisateur principal (et toute autre identité managée affectée par l'utilisateur) du serveur.