Gestion des profils utilisateur avec Autonomous Database

Vous pouvez créer et modifier des profils utilisateur dans Autonomous Database. Après avoir créé ou modifié un profil, vous pouvez indiquer la clause de profil avec CREATE USER ou ALTER USER. Vous pouvez également importer des profils utilisateur existants à partir d'un autre environnement à l'aide de l'import Oracle Data Pump.

Remarque

Autonomous Database comporte des restrictions sur la clause de profil. Pour plus d'informations sur les restrictions CREATE PROFILE et ALTER PROFILE, reportez-vous à Commandes SQL.

Pour ajouter, modifier ou enlever un paramètre de mot de passe dans un profil, y compris le profil DEFAULT, vous devez disposer du privilège système ALTER PROFILE.

  1. Pour ajouter ou modifier un profil, l'utilisateur ADMIN exécute CREATE PROFILE ou ALTER PROFILE. Par exemple :
    CREATE PROFILE new_profile
      LIMIT PASSWORD_REUSE_MAX 10
      PASSWORD_LOCK_TIME 5;

    Si vous n'êtes pas l'utilisateur ADMIN, vous devez disposer du privilège CREATE PROFILE pour exécuter CREATE PROFILE. Si vous exécutez ALTER PROFILE, vous devez disposer du privilège ALTER PROFILE.

  2. Utilisez le profil nouveau ou modifié avec une commande CREATE USER ou ALTER USER. Par exemple :
    CREATE USER new_user IDENTIFIED BY password PROFILE new_profile;
    GRANT CREATE SESSION TO new_user;

Vous créez ainsi new_user avec le profil new_profile et avec des privilèges de connexion. new_user peut désormais se connecter à la base de données et exécuter des requêtes. Pour accorder des privilèges supplémentaires aux utilisateurs, reportez-vous à Gestion des privilèges utilisateur sur Autonomous Database - Connexion à un outil client.

Pour plus d'informations sur l'utilisation de CREATE PROFILE ou de ALTER PROFILE, reportez-vous à CREATE PROFILE.

Vous pouvez importer des profils existants créés dans d'autres environnements à l'aide de l'import Oracle Data Pump (impdp). Toute association de profil existante avec des utilisateurs de base de données est conservée après l'import dans Autonomous Database. Lorsqu'un utilisateur nouvellement créé, créé à partir d'un import Oracle Data Pump, tente de se connecter pour la première fois, la connexion est gérée comme suit :

  • Les restrictions de complexité de mot de passe sont les mêmes que celles appliquées à tout utilisateur sur Autonomous Database.
  • Si le mot de passe de l'utilisateur ne respecte pas les exigences de complexité de mot de passe, le compte a expiré avec un délai de grâce de 30 jours. Dans ce cas, l'utilisateur doit modifier son mot de passe avant la fin du délai de grâce.

Remarque

Les affectations de profil pour les utilisateurs avec les profils ORA_PROTECTED_PROFILE et ORA_ADMIN_PROFILE ne peuvent pas être modifiées.

Les utilisateurs suivants partagent le profil ORA_PROTECTED_PROFILE et l'affectation de profil de ces utilisateurs ne peut pas être modifiée :

  • ADBSNMP
  • ADB_APP_STORE
  • DCAT_ADMIN
  • GGADMIN
  • RMAN$CATALOG

L'utilisateur ADMIN est affecté à ORA_ADMIN_PROFILE.

Lorsque vous créez ou modifiez un profil, vous pouvez spécifier une fonction de vérification de mot de passe (PVF) pour gérer la complexité des mots de passe. Pour plus d'informations, reportez-vous à Gestion de la complexité des mots de passe sur Autonomous Database.

Gestion de la complexité des mots de passe sur Autonomous Database

Vous pouvez créer une fonction de vérification de mot de passe (PVF) et l'associer à un profil pour gérer la complexité des mots de passe utilisateur.

Remarque

La longueur minimale du mot de passe pour un PVF spécifié par l'utilisateur est de 8 caractères et doit inclure au moins une lettre majuscule, une lettre minuscule et un caractère numérique. La longueur minimale du mot de passe pour le profil DEFAULT est de 12 caractères (le profil DEFAULT utilise le PVF CLOUD_VERIFY_FUNCTION). Le mot de passe ne peut pas contenir le nom utilisateur.

Oracle recommande d'utiliser une longueur de mot de passe minimale de 12 caractères. Si vous définissez la valeur PVF d'un profil et que la longueur minimale du mot de passe est inférieure à 12 caractères, des outils tels qu'Oracle Database Security Assessment Tool (DBSAT) et Qualys le signalent comme un risque pour la sécurité de la base de données.

Par exemple, pour spécifier un PVF pour un profil, utilisez la commande suivante :

CREATE PROFILE example_profile LIMIT PASSWORD_VERIFY_FUNCTION ADMIN.EXAMPLE_PVF

Si le profil est créé ou modifié par un utilisateur autre que l'utilisateur ADMIN, vous devez accorder le privilège EXECUTE sur le panneau PVF. Si vous créez un PVF et que la vérification du mot de passe échoue, la base de données signale l'erreur ORA-28219.

Vous pouvez spécifier un PVF fourni par Oracle à partir de l'un des éléments suivants :

  • CLOUD_VERIFY_FUNCTION (fonction de vérification du mot de passe par défaut pour Autonomous Database) :

    Cette fonction vérifie les conditions suivantes lorsque les utilisateurs créent ou modifient des mots de passe :

    • Le mot de passe doit comporter entre 12 et 30 caractères, et doit inclure au moins une lettre majuscule, une lettre minuscule et un caractère numérique.

    • Le mot de passe ne peut pas contenir le nom utilisateur.

    • Le mot de passe ne peut pas être l'un des quatre derniers mot de passe utilisés pour le même nom utilisateur.

    • Le mot de passe ne peut pas contenir de guillemets (").

    • Le mot de passe ne doit pas être identique à celui défini il y a moins de 24 heures.

  • ORA12C_STIG_VERIFY_FUNCTION

    Cette fonction vérifie les conditions suivantes lorsque les utilisateurs créent ou modifient des mots de passe :

    • Le mot de passe comporte au moins 15 caractères.

    • Le mot de passe comporte au moins 1 caractère minuscule et au moins 1 caractère majuscule.

    • Le mot de passe comporte au moins 1 chiffre.

    • Le mot de passe comporte au moins 1 caractère spécial.

    • Le mot de passe diffère du mot de passe précédent d'au moins 8 caractères.

    Pour plus d'informations, reportez-vous à ora12c_stig_verify_function Password Requirements.

Notez les restrictions suivantes pour une fonction de vérification de mot de passe (PVF) que vous créez et affectez à un profil :

  • Si vous spécifiez un profil utilisateur, la longueur minimale du mot de passe dépend de la façon dont vous définissez le PVF associé, comme suit :

    • Si une valeur PVF est définie, la longueur minimale du mot de passe appliquée est de 8 caractères avec au moins une lettre majuscule, une lettre minuscule et un caractère numérique. Le mot de passe ne peut pas contenir le nom utilisateur.

    • Si la fonction PVF est définie sur NULL, la longueur minimale du mot de passe appliquée est de 8 caractères avec au moins une lettre majuscule, une lettre minuscule et un caractère numérique. Le mot de passe ne peut pas contenir le nom utilisateur.

    • Si aucun PVF n'est défini pour le profil, le PVF du profil DEFAULT (CLOUD_VERIFY_FUNCTION) est affecté et la longueur minimale du mot de passe appliquée est de 12 caractères.

  • Si vous indiquez une fonction de vérification de mot de passe (PVF) plus stricte que la fonction par défaut CLOUD_VERIFY_FUNCTION, la nouvelle fonction de vérification est utilisée.
  • Une fonction PVF que vous créez doit être créée en tant que fonction PL/SQL DEFINER RIGHTS. Si un PVF avec droits INVOKER est fourni en entrée à CREATE ou ALTER PROFILE, une erreur ORA-28220 est générée.

  • Tout composant PVF que vous créez doit être créé dans le schéma utilisateur ADMIN. Si un PVF appartenant à un utilisateur non ADMIN est fourni en tant qu'entrée à CREATE ou ALTER PROFILE, une erreur ORA-28220 est générée.

  • Un PVF ne peut pas être modifié ou supprimé par un utilisateur non ADMIN. Autrement dit, tout utilisateur disposant du privilège CREATE ou DROP ANY PROCEDURE n'est pas autorisé à modifier ou supprimer une fonction PVF.

  • Si le PVF associé à un profil est supprimé, toute tentative de modification du mot de passe d'un utilisateur qui utilise le PVF dans son profil génère l'erreur ORA-7443. Les utilisateurs peuvent toujours se connecter lorsque le PVF associé à leur profil est supprimé. Toutefois, si le mot de passe d'un utilisateur a expiré et que la fonction PVF est supprimée, l'utilisateur ne peut pas se connecter.

    Pour effectuer une récupération suite à l'erreur ORA-7443, l'utilisateur ADMIN doit recréer le PVF supprimé et l'affecter au profil, ou affecter un PVF existant au profil. Cela permet à un utilisateur de modifier son mot de passe et son identifiant.

  • Le privilège système CREATE ANY PROCEDURE et le privilège système DROP ANY PROCEDURE sont audités pour la sécurité PVF. Pour plus d'informations, reportez-vous à la liste PROCEDURES dans Liste des privilèges système et objet.

Pour plus d'informations, reportez-vous à Gestion de la complexité des mots de passe.

Report progressif du mot de passe de base de données pour les applications

Une application peut modifier ses mots de passe de base de données sans qu'un administrateur ait à planifier un temps d'arrêt.

Pour ce faire, vous pouvez associer un profil avec une limite différente de zéro pour le paramètre de profil de mot de passe PASSWORD_ROLLOVER_TIME à un schéma d'application. Cela permet de modifier le mot de passe de la base de données de l'utilisateur de l'application tout en autorisant l'ancien mot de passe à rester valide pendant la durée indiquée par la limite PASSWORD_ROLLOVER_TIME. Pendant la période de report, l'instance d'application peut utiliser l'ancien mot de passe ou le nouveau pour se connecter au serveur de base de données. Lorsque le temps de reconduction expire, seul le nouveau mot de passe est autorisé.

Pour plus d'informations, reportez-vous à Gestion de la reconduction progressive des mots de passe de base de données pour les applications.