ALTER ACCOUNT

Modifie un compte. Permet de modifier tout type de paramètre (compte, session ou objet) au niveau du compte. Également utilisé pour renommer un compte et pour attribuer des moniteurs de ressources et des balises à un compte. La commande ne peut être exécutée que par :

  • Les administrateurs de compte (c’est-à-dire les utilisateurs ayant le rôle ACCOUNTADMIN) pour définir et désactiver la définition :

    • des paramètres de compte, qui ne peuvent être modifiés par aucun autre utilisateur.

    • Les paramètres de session et d’objet, qui servent de paramètres par défaut pour les utilisateurs, les sessions et les objets significatifs. Ces valeurs par défaut peuvent être remplacées à tout moment.

    • Moniteurs de ressources

    • Balises

  • Les administrateurs de sécurité (c’est-à-dire les utilisateurs avec le rôle SECURITYADMIN) ou un rôle supérieur pour définir et désactiver la définition du paramètre de compte NETWORK_POLICY.

  • Des administrateurs d’organisation (c’est-à-dire des utilisateurs ayant le rôle ORGADMIN) pour :

    • Renommer un compte et préciser si l’URL d’origine peut être utilisée pour accéder au compte.

    • Activer le rôle ORGADMIN dans un compte.

Peut également être utilisé pour spécifier un moniteur de ressources pour contrôler l’utilisation du crédit pour tous les entrepôts virtuels créés dans le compte.

Pour plus d’informations sur le paramétrage au niveau du compte, voir Gestion des paramètres. Pour plus de détails sur les paramètres, voir Paramètres.

Syntaxe

La syntaxe de ALTER ACCOUNT varie selon que vous modifiez le compte actuel ou un autre compte.

Modification du compte actuel

ALTER ACCOUNT SET { [ accountParams ] [ objectParams ] [ sessionParams ] }

ALTER ACCOUNT UNSET <param_name> [ , ... ]

ALTER ACCOUNT SET RESOURCE_MONITOR = <monitor_name>

ALTER ACCOUNT SET { AUTHENTICATION | PASSWORD | SESSION } POLICY <policy_name>

ALTER ACCOUNT UNSET { AUTHENTICATION | PASSWORD | SESSION } POLICY

ALTER ACCOUNT SET PACKAGES POLICY <policy_name> [ FORCE ]

ALTER ACCOUNT UNSET { PACKAGES | PASSWORD | SESSION } POLICY

ALTER ACCOUNT SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ]

ALTER ACCOUNT UNSET TAG <tag_name> [ , <tag_name> ... ]
Copy

Où :

accountParams ::=
    ALLOW_ID_TOKEN = TRUE | FALSE
    CLIENT_ENCRYPTION_KEY_SIZE = <integer>
    ENABLE_INTERNAL_STAGES_PRIVATELINK = TRUE | FALSE
    ENFORCE_NETWORK_RULES_FOR_INTERNAL_STAGES = TRUE | FALSE
    EXTERNAL_OAUTH_ADD_PRIVILEGED_ROLES_TO_BLOCKED_LIST = TRUE | FALSE
    INITIAL_REPLICATION_SIZE_LIMIT_IN_TB = <num>
    NETWORK_POLICY = <string>
    OAUTH_ADD_PRIVILEGED_ROLES_TO_BLOCKED_LIST = TRUE | FALSE
    PERIODIC_DATA_REKEYING = TRUE | FALSE
    PREVENT_UNLOAD_TO_INLINE_URL = TRUE | FALSE
    PREVENT_UNLOAD_TO_INTERNAL_STAGES = TRUE | FALSE
    REQUIRE_STORAGE_INTEGRATION_FOR_STAGE_CREATION = TRUE | FALSE
    REQUIRE_STORAGE_INTEGRATION_FOR_STAGE_OPERATION = TRUE | FALSE
    SAML_IDENTITY_PROVIDER = <json_object>
    SSO_LOGIN_PAGE = TRUE | FALSE
Copy
objectParams ::=
    DATA_RETENTION_TIME_IN_DAYS = <integer>
    ENABLE_UNREDACTED_QUERY_SYNTAX_ERROR = TRUE | FALSE
    MAX_DATA_EXTENSION_TIME_IN_DAYS = <integer>
    DEFAULT_DDL_COLLATION = '<collation_specification>'
    MAX_CONCURRENCY_LEVEL = <num>
    NETWORK_POLICY = <string>
    PIPE_EXECUTION_PAUSED = TRUE | FALSE
    STATEMENT_QUEUED_TIMEOUT_IN_SECONDS = <num>
    STATEMENT_TIMEOUT_IN_SECONDS = <num>
Copy
sessionParams ::=
    ABORT_DETACHED_QUERY = TRUE | FALSE
    AUTOCOMMIT = TRUE | FALSE
    BINARY_INPUT_FORMAT = <string>
    BINARY_OUTPUT_FORMAT = <string>
    DATE_INPUT_FORMAT = <string>
    DATE_OUTPUT_FORMAT = <string>
    ERROR_ON_NONDETERMINISTIC_MERGE = TRUE | FALSE
    ERROR_ON_NONDETERMINISTIC_UPDATE = TRUE | FALSE
    JSON_INDENT = <num>
    LOCK_TIMEOUT = <num>
    QUERY_TAG = <string>
    ROWS_PER_RESULTSET = <num>
    S3_STAGE_VPCE_DNS_NAME = <string>
    SEARCH_PATH = <string>
    SIMULATED_DATA_SHARING_CONSUMER = <string>
    STATEMENT_TIMEOUT_IN_SECONDS = <num>
    STRICT_JSON_OUTPUT = TRUE | FALSE
    TIMESTAMP_DAY_IS_ALWAYS_24H = TRUE | FALSE
    TIMESTAMP_INPUT_FORMAT = <string>
    TIMESTAMP_LTZ_OUTPUT_FORMAT = <string>
    TIMESTAMP_NTZ_OUTPUT_FORMAT = <string>
    TIMESTAMP_OUTPUT_FORMAT = <string>
    TIMESTAMP_TYPE_MAPPING = <string>
    TIMESTAMP_TZ_OUTPUT_FORMAT = <string>
    TIMEZONE = <string>
    TIME_INPUT_FORMAT = <string>
    TIME_OUTPUT_FORMAT = <string>
    TRANSACTION_DEFAULT_ISOLATION_LEVEL = <string>
    TWO_DIGIT_CENTURY_START = <num>
    UNSUPPORTED_DDL_ACTION = <string>
    USE_CACHED_RESULT = TRUE | FALSE
    WEEK_OF_YEAR_POLICY = <num>
    WEEK_START = <num>
Copy

Note

Pour plus de lisibilité, la liste complète des paramètres de session pouvant être définis pour un compte n’est pas incluse ici. Pour une liste complète de tous les paramètres de session, avec leurs descriptions, ainsi que les paramètres de compte et d’objet, voir Paramètres.

Modification d’un autre compte

ALTER ACCOUNT <name> SET IS_ORG_ADMIN = { TRUE | FALSE }

ALTER ACCOUNT <name> RENAME TO <new_name> [ SAVE_OLD_URL = { TRUE | FALSE } ]

ALTER ACCOUNT <name> DROP OLD URL

ALTER ACCOUNT <name> DROP OLD ORGANIZATION URL
Copy

Paramètres de modification du compte actuel

Utilisez les paramètres suivants lors de la modification du compte actuel.

SET ...

Spécifie un (ou plusieurs) paramètre(s) de compte, de session et d’objet à définir pour votre compte (séparés par des espaces, des virgules ou de nouvelles lignes) :

  • Les paramètres du compte ne peuvent être modifiés par aucun autre utilisateur.

  • Les paramètres de session et d’objet définis au niveau du compte ne servent que de valeurs par défaut et peuvent être modifiés par d’autres utilisateurs.

Pour une description des paramètres que vous pouvez définir pour votre compte, voir Paramètres.

UNSET ...

Spécifie un (ou plusieurs) paramètre(s) de compte, de session et d’objet à annuler pour votre compte, ce qui les réinitialise aux valeurs par défaut du système.

Vous pouvez réinitialiser plusieurs propriétés avec une seule instruction ALTER ; cependant, chaque propriété doit être séparée par une virgule. Lors de la réinitialisation d’une propriété, spécifiez seulement le nom ; si vous spécifiez une valeur pour la propriété, vous obtiendrez une erreur.

SET RESOURCE_MONITOR resource_monitor_name

Paramètre spécial qui spécifie le nom du moniteur de ressources utilisé pour contrôler tous les entrepôts virtuels créés dans le compte.

Important

La définition d’un moniteur de ressources au niveau du compte n’a aucun impact sur les entrepôts fournis par Snowflake utilisés par Snowflake pour Snowpipe, le reclustering automatique ou les vues matérialisées. Les crédits consommés par ces entrepôts ne sont pas comptabilisés dans le quota de crédit d’un moniteur de ressources au niveau du compte.

Pour plus de détails, voir Utilisation de moniteurs de ressources.

SET { AUTHENTICATION | PASSWORD | SESSION } POLICY policy_name

Spécifie l’une des politiques suivantes pour le compte :

SET PACKAGES POLICY policy_name [ FORCE ]

Spécifie la politique de paquets à définir pour le compte. Si une politique de paquets est déjà définie sur le compte actuel, vous pouvez utiliser FORCE pour définir la politique de paquets sans avoir à la supprimer au préalable.

UNSET { PACKAGES | PASSWORD | SESSION } POLICY

Annule la politique de paquets, la politique de mot de passe ou la politique de session pour le compte.

TAG tag_name = 'tag_value' [ , tag_name = 'tag_value' , ... ]

Spécifie le nom de la balise et la valeur de la chaîne de la balise.

La valeur de la balise est toujours une chaîne de caractères et le nombre maximum de caractères pour la valeur de la balise est 256.

Pour plus d’informations sur la spécification des balises dans une instruction, voir Quotas de balises pour les objets et les colonnes.

Paramètres pour la modification d’un autre compte

Utilisez les paramètres suivants lorsque vous utilisez le compte actuel pour modifier un autre compte. Seuls les administrateurs d’organisations (c’est-à-dire les utilisateurs ayant le rôle ORGADMIN) peuvent utiliser ces paramètres.

name

Indique le nom du compte en cours de modification.

SET

Spécifie une propriété de compte à définir pour le compte.

IS_ORG_ADMIN = { TRUE | FALSE }

Définit une propriété du compte qui détermine si le rôle ORGADMIN est activé dans le compte. Seul un administrateur de l’organisation (c’est-à-dire un utilisateur ayant le rôle ORGADMIN) peut définir cette propriété.

Pour activer le rôle ORGADMIN pour un compte, spécifiez SET IS_ORG_ADMIN = TRUE.

Vous ne pouvez pas définir la propriété sur FALSE à partir du compte actuel. En guise de solution de contournement, activez le rôle dans un autre compte, puis basculez dans ce compte avant d’exécuter la commande ALTER ACCOUNT.

Par défaut, le rôle ORGADMIN peut être activé dans un maximum de 8 comptes. Si votre organisation a besoin de plus de comptes avec le rôle ORGADMIN, contactez le support Snowflake.

RENAME TO new_name

Remplace le nom d’un compte par le nom spécifié.

Les administrateurs de l’organisation ne peuvent pas renommer un compte lorsqu’ils sont connectés à celui-ci. Ils doivent donc se connecter à un autre compte avant d’exécuter la commande ALTER ACCOUNT. Si votre organisation consiste en un seul compte qui doit être renommé, contactez l’assistance Snowflake.

SAVE_OLD_URL = { TRUE | FALSE }

Paramètre facultatif utilisé conjointement avec RENAME TO qui préserve l’URL de compte utilisée pour accéder à Snowflake avant le changement de nom. Par défaut, Snowflake enregistre l’URL d’origine, ce qui signifie que vous pouvez accéder au compte avec l’ancienne URL ou l’URL qui contient le nouveau nom de compte. Lorsqu’il est défini sur FALSE, vous devez utiliser la nouvelle URL pour accéder au compte.

Par défaut:

TRUE

DROP OLD URL

Supprime l”URL de compte d’origine d’un compte qui a été renommé. Une fois l’ancienne URL détruite, vous devez accéder au compte avec l’URL qui contient le nouveau nom de compte.

Si un compte contient une ancienne URL de compte parce qu’il a été déplacé vers une autre organisation, que son organisation a été renommée ou qu’il faisait partie d’une organisation qui a été fusionnée, utilisez plutôt ALTER ACCOUNT … DROP OLD ORGANIZATION URL.

DROP OLD ORGANIZATION URL

Supprime l’URL de compte d’origine d’un compte après que l’un des événements suivants s’est produit :

  • Compte transféré à une autre organisation

  • L’organisation du compte a été renommée.

  • Le compte faisait partie d’une organisation qui a fusionné avec une autre organisation.

Si un compte détient une ancienne URL de compte, parce que le compte, et non l’organisation, a été renommé, utilisez plutôt la commande ALTER ACCOUNT … DROP OLD URL.

Notes sur l’utilisation

  • Les paramètres de compte ne peuvent être définis qu’au niveau du compte.

  • Les paramètres de session et d’objet définis à l’aide de cette commande ne servent que de valeurs par défaut :

    • Les paramètres d’utilisateur peuvent être remplacés au niveau de l’utilisateur.

    • Les paramètres de session peuvent être remplacés au niveau de l’utilisateur et de la session.

    • Les paramètres d’objet peuvent être remplacés au niveau de l’objet en soi.

  • La définition d’un moniteur de ressources au niveau du compte contrôle l’utilisation du crédit pour tous les entrepôts virtuels créés dans le compte, mais n’a pas d’impact sur l’utilisation du crédit pour aucun des entrepôts fournis par Snowflake. Pour plus de détails, voir Utilisation de moniteurs de ressources.

  • Concernant les métadonnées :

    Attention

    Les clients doivent s’assurer qu’aucune donnée personnelle (autre que pour un objet utilisateur), donnée sensible, donnée à exportation contrôlée ou autre donnée réglementée n’est saisie comme métadonnée lors de l’utilisation du service Snowflake. Pour plus d’informations, voir Champs de métadonnées dans Snowflake.

Exemples

Associez une politique réseau nommée mypolicy à votre compte :

ALTER ACCOUNT SET NETWORK_POLICY = mypolicy;
Copy

Supprimez l’association de règles de réseau de votre compte :

ALTER ACCOUNT UNSET NETWORK_POLICY;
Copy

Définissez la politique de paquets au niveau du compte.

ALTER ACCOUNT SET PACKAGES POLICY packages_policy_prod_1 FORCE;
Copy

Note

Si une politique de paquets est déjà définie sur le compte actuel, vous pouvez utiliser FORCE pour définir la politique de paquets sans avoir à la supprimer au préalable.

Désactivez la politique de paquets.

ALTER ACCOUNT UNSET PACKAGES POLICY;
Copy