Résoudre les problèmes de sauvegarde des bases de données PostgreSQL avec Sauvegarde Azure

Cet article fournit des informations sur la résolution des problèmes de sauvegarde de bases de données Azure PostgreSQL avec Sauvegarde Azure.

UserErrorMSIMissingPermissions

Donnez à l’identité MSI du coffre de sauvegarde un accès en Lecture sur le serveur Postgres que vous voulez sauvegarder ou restaurer.

Pour établir une connexion sécurisée à la base de données PostgreSQL, Sauvegarde Azure utilise le modèle d’authentification Managed Service Identity (MSI). Cela signifie que le coffre de sauvegarde aura accès seulement aux ressources auxquelles l’utilisateur a explicitement accordé une autorisation.

Une identité MSI système est automatiquement affectée au coffre au moment de la création. Vous devez donner à cette identité MSI du coffre l’accès aux serveurs PostgreSQL dont vous prévoyez de sauvegarder des bases de données.

Étapes :

  1. Sur le serveur Postgres, accédez au volet Contrôle d’accès (IAM) .

    Access Control pane

  2. Sélectionnez Ajouter des attributions de rôle.

    Screenshot to add role assignment.

  3. Dans le volet contextuel droit qui s’ouvre, entrez les informations suivantes :

    • Rôle : Sélectionnez le rôle Lecteur dans la liste déroulante.
    • Attribuer l’accès à : Choisissez l’option Utilisateur, groupe ou principal du service dans la liste déroulante.
    • Sélectionnez : Entrez le nom du coffre de sauvegarde où vous voulez sauvegarder ce serveur et ses bases de données.

    Screenshot showing how to select role.

UserErrorBackupUserAuthFailed

Créez un utilisateur de sauvegarde de base de données qui peut s’authentifier auprès de Microsoft Entra ID :

Cette erreur peut provenir de l’absence d’un administrateur Microsoft Entra pour le serveur PostgreSQL ou de l’absence d’un utilisateur de sauvegarde pouvant s’authentifier avec Microsoft Entra ID.

Étapes :

Ajoutez un administrateur Active Directory au serveur OSS :

Cette étape est nécessaire pour se connecter à la base de données via un utilisateur qui peut s’authentifier avec Microsoft Entra ID au lieu d’un mot de passe. L’utilisateur Administrateur Microsoft Entra dans Azure Database pour PostgreSQL aura le rôle azure_ad_admin. Seul un rôle azure_ad_admin peut créer des utilisateurs de base de données qui peuvent s’authentifier avec Microsoft Entra ID.

  1. Accédez à l’onglet Administrateur Active Directory dans le volet de navigation gauche de la vue du serveur, puis ajoutez-vous (ou une autre personne) en tant qu’administrateur Active Directory.

    Screenshot showing how to set Active Directory admin.

  2. Veillez à Enregistrer la définition de l’utilisateur Administrateur Active Directory.

    Screenshot showing how to save Active Directory admin user setting.

Reportez-vous à ce document pour obtenir la liste des étapes à suivre pour effectuer les étapes d’octroi des autorisations.

UserErrorMissingNetworkSecurityPermissions

Établissez une visibilité du réseau en activant l’indicateur Autoriser l’accès aux services Azure dans la vue du serveur. Dans la vue du serveur, sous le volet Sécurité de la connexion, définissez l’indicateur Autoriser l’accès aux services Azure sur Oui.

Notes

Avant d’activer cet indicateur, veillez à définir Refuser l’accès au réseau public avec la valeur Non.

Screenshot showing how to allow access to Azure services.

UserErrorContainerNotAccessible

Autorisation de restaurer sur un conteneur d’un compte de stockage lors de la restauration en tant que fichiers

  1. Donnez à l’identité MSI du coffre de sauvegarde l’autorisation d’accéder aux conteneurs du compte de stockage en utilisant le portail Azure.

    1. Accédez à compte de stockage –>Access Control –>Ajouter une attribution de rôle.
    2. Affectez le rôle Contributeur aux données Blob du stockage à l’identité MSI du coffre de sauvegarde.

    Screenshot showing the process to assign Storage Blob Data Contributor role.

  2. Vous pouvez aussi accorder des autorisations précises sur le conteneur spécifique vers lequel vous effectuez la restauration en utilisant la commande Azure CLI az role assignment create.

    az role assignment create --assignee $VaultMSI_AppId  --role "Storage Blob Data Contributor"   --scope $id
    
    1. Remplacez le paramètre du destinataire de l’affectation par l’ID d’application de l’identité MSI du coffre et le paramètre d’étendue de façon à référencer votre conteneur spécifique.

    2. Pour obtenir l’ID d’application de l’identité MSI du coffre, sélectionnez Toutes les applications sous Type d’application :

      Screenshot showing how to select All Applications.

    3. Recherchez le nom du coffre et copiez l’ID d’application :

      Screenshot showing how to search for vault name.

UserErrorDBUserAuthFailed

Le service Sauvegarde Azure utilise les informations d’identification mentionnées dans le coffre de clés pour accéder à la base de données en tant qu’utilisateur de base de données. Le coffre de clés approprié et le secret sont fournis lors de la configuration de la sauvegarde. Vérifiez que les informations d’identification stockées dans le cadre de la valeur secrète dans le coffre de clés sont valides. Vérifiez que l’utilisateur de base de données spécifié a accès à la connexion.

UserErrorInvalidSecret

Le service Sauvegarde Azure utilise les informations d’identification mentionnées dans le coffre de clés pour accéder à la base de données en tant qu’utilisateur de base de données. Le coffre de clés approprié et le secret sont fournis lors de la configuration de la sauvegarde. Vérifiez que le nom de secret spécifié est présent dans le coffre de clés.

UserErrorMissingDBPermissions

Le service Sauvegarde Azure utilise les informations d’identification mentionnées dans le coffre de clés pour accéder à la base de données en tant qu’utilisateur de base de données. Le coffre de clés approprié et le secret sont fournis lors de la configuration de la sauvegarde. Le coffre de clés associé à cette instance de sauvegarde est disponible en accédant à l’instance de sauvegarde et en sélectionnant la vue JSON. Le nom du coffre de clés et les détails des secrets répertoriés sont disponibles dans la section datasourceAuthCredentials, comme illustré dans la capture d’écran ci-dessous.

Screenshot showing how to search for key vault by using secret name.

UserErrorSecretValueInUnsupportedFormat

Le service Sauvegarde Azure utilise les informations d’identification mentionnées dans le coffre de clés pour accéder à la base de données en tant qu’utilisateur de base de données. Le coffre de clés approprié et le secret sont fournis lors de la configuration de la sauvegarde. Toutefois, la valeur secrète n’est pas dans un format pris en charge par Sauvegarde Azure. Vérifiez le format pris en charge comme indiqué ici.

UserErrorInvalidSecretStore

Le service Sauvegarde Azure utilise les informations d’identification mentionnées dans le coffre de clés pour accéder à la base de données en tant qu’utilisateur de base de données. Le coffre de clés approprié et le secret sont fournis lors de la configuration de la sauvegarde. Vérifiez que le coffre de clés donné existe et que le service de sauvegarde a accès comme indiqué ici.

UserErrorMissingPermissionsOnSecretStore

Le service Sauvegarde Azure utilise les informations d’identification mentionnées dans le coffre de clés pour accéder à la base de données en tant qu’utilisateur de base de données. Le coffre de clés approprié et le secret sont fournis lors de la configuration de la sauvegarde. Vérifiez que le fichier MSI du coffre de sauvegarde est autorisé à accéder au coffre de clés comme indiqué ici.

UserErrorDBNotFound

Vérifiez que la base de données et le serveur approprié existent.

UserErrorDatabaseNameAlreadyInUse

Le nom donné pour la base de données restaurée existe déjà et, par conséquent, l’opération de restauration a échoué. Réessayez l’opération de restauration avec un autre nom.

UserErrorServerConnectionClosed

L’opération a échoué car le serveur a fermé la connexion de façon inattendue. Réessayez l’opération, et si l’erreur persiste, contactez le support Microsoft.

Étapes suivantes

À propos de la sauvegarde d’Azure Database pour PostgreSQL