Documentation PostgreSQL 14.22 » Référence » Commandes SQL » ALTER USER MAPPING

Précédent | Niveau supérieur | Suivant
ALTER USER | Sommaire | ALTER VIEW

## ALTER USER MAPPING

ALTER USER MAPPING — change la définition d'une correspondance d'utilisateurs (user mapping)

## Synopsis

    ALTER USER MAPPING FOR { nom_utilisateur | USER | CURRENT_ROLE | CURRENT_USER | SESSION_USER | PUBLIC }
        SERVER nom_serveur
        OPTIONS ( [ ADD | SET | DROP ] option ['valeur'] [, ... ] )

## Description

`ALTER USER MAPPING` change la définition d'une correspondance d'utilisateur (user mapping).

Le propriétaire d'un serveur distant peut aussi altérer les correspondances d'utilisateurs pour ce serveur pour tout utilisateur. Par ailleurs, un utilisateur peut modifier une correspondance d'utilisateur pour son propre nom d'utilisateur s'il a reçu le droit `USAGE` sur le serveur distant.

## Paramètres

`nom_utilisateur`

  Nom d'utilisateur de la correspondance. `CURRENT_ROLE`, `CURRENT_USER` et `USER` correspondent au nom de l'utilisateur courant. `PUBLIC` est utilisé pour correspondre à tous les noms d'utilisateurs présents et futurs du système.

`nom_serveur`

  Nom du serveur de la correspondance d'utilisateur.

`OPTIONS ( [ ADD | SET | DROP ] `option` ['`valeur`'] [, ... ] )`

  Modifie l'option pour la correspondance d'utilisateur. La nouvelle option écrase toute option précédemment spécifiée. `ADD`, `SET` et `DROP` spécifient l'action à exécuter. Si aucune action n'est spécifiée, l'action est `ADD`. Les noms d'options doivent être uniques ; les options sont aussi validées par le wrapper de données distantes du serveur.

## Exemples

Modifier le mot de passe pour la correspondance d'utilisateur `bob`, et le serveur `foo` :

    ALTER USER MAPPING FOR bob SERVER foo OPTIONS (SET password 'public');

## Compatibilité

`ALTER USER MAPPING` est conforme à la norme ISO/IEC 9075-9 (SQL/MED). Il y a un problème de syntaxe subtil : le standard omet le mot clé `FOR`. Puisque `CREATE USER MAPPING` et `DROP USER MAPPING` utilisent tous les deux `FOR` à un endroit analogue et que DB2 d'IBM (l'autre implémentation majeure de SQL/MED) l'impose aussi pour `ALTER USER MAPPING`, PostgreSQL diverge du standard pour des raisons de cohérence et de compatibilité.

## Voir aussi

CREATE USER MAPPING, DROP USER MAPPING