Tous les produits
Search
Centre de documentation

:Gérer les comptes à l'aide des schémas

Dernière mise à jour :Aug 19, 2026

ApsaraDB RDS for PostgreSQL ne fournit pas de comptes superutilisateur. Nous vous recommandons de créer des comptes distincts pour chaque base de données. Vous pouvez ensuite gérer les objets de chaque compte en utilisant le schéma associé au compte.

Remarque

Dans cet exemple, le compte privilégié myuser, créé lors de la création d'une instance ApsaraDB RDS, est utilisé pour créer un compte nommé newuser.

Solution 1

  1. Utilisez le compte privilégié myuser pour créer un compte nommé newuser disposant des autorisations de connexion à une base de données.

    CREATE USER newuser LOGIN PASSWORD 'password';

    description :

    • USER : nom d'utilisateur du compte.

    • password : mot de passe du compte.

  2. Créez un schéma pour le compte newuser.

    CREATE SCHEMA newuser;
    GRANT newuser to myuser;
    ALTER SCHEMA newuser OWNER TO newuser;
    REVOKE newuser FROM myuser;
    Remarque
    • Si le rôle myuser n'est pas attaché au compte newuser avant l'exécution de l'instruction ALTER SCHEMA newuser OWNER TO newuser, l'erreur suivante s'affiche :

         ERROR:  must be member of role "newuser"
    • Une fois les permissions OWNER accordées au compte newuser, nous vous recommandons de détacher le rôle myuser du compte newuser. Cela garantit la sécurité de l'instance RDS.

  3. Connectez-vous à la base de données en utilisant le compte newuser.

    psql -U newuser -h intranet4example.pg.rds.aliyuncs.com -p 3433 pg001
    Password for user newuser:
    psql.bin (9.4.4, server 9.4.1)
    Type "help" for help.

Solution 2

  1. Utilisez le compte privilégié myuser pour créer un compte nommé newuser disposant des autorisations de connexion à une base de données.

    CREATE USER newuser CREATEDB LOGIN PASSWORD 'password';

    description :

    • USER : nom d'utilisateur du compte.

    • password : mot de passe du compte.

    • CREATEDB : accorde au compte newuser les permissions de création d'une base de données.

  2. Connectez-vous à la base de données en utilisant le compte newuser.

    psql -U <Endpoint of the RDS instance> -p 3433 -U newuser <Database name>
    CREATE DATABASE
  3. Créez un schéma pour le compte newuser.

    CREATE SCHEMA newuser;
    GRANT myuser to newuser;
    ALTER SCHEMA myuser OWNER TO newuser;
    REVOKE newuser FROM myuser;
    Remarque
    • Si le rôle myuser n'est pas attaché au compte newuser avant l'exécution de l'instruction ALTER SCHEMA myuser OWNER TO newuser, l'erreur suivante s'affiche :

        ERROR:  must be member of role "newuser"
    • Une fois les permissions OWNER accordées au compte newuser, nous vous recommandons de détacher le rôle myuser du compte newuser. Cela garantit la sécurité de l'instance RDS.

  4. Connectez-vous à la base de données en utilisant le compte newuser.

    psql -U newuser -h intranet4example.pg.rds.aliyuncs.com -p 3433 pg001
    Password for user newuser:
    psql.bin (9.4.4, server 9.4.1)
    Type "help" for help.