ALTER SECURITY INTEGRATION (Snowflake OAuth)

Modifie les propriétés d’une intégration de sécurité existante créée pour un client Snowflake OAuth. Pour des informations sur la modification d’autres types d’intégrations de sécurité (par exemple, OAuth externe), voir ALTER SECURITY INTEGRATION.

Voir aussi :

CREATE SECURITY INTEGRATION (Snowflake OAuth) , DROP INTEGRATION , SHOW INTEGRATIONS , DESCRIBE INTEGRATION

Syntaxe

ALTER [ SECURITY ] INTEGRATION <name> SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ]

ALTER [ SECURITY ] INTEGRATION <name> UNSET TAG <tag_name> [ , <tag_name> ... ]
Copy

Snowflake OAuth pour les applications partenaires

ALTER [ SECURITY ] INTEGRATION [ IF EXISTS ] <name> SET
  [ ENABLED = { TRUE | FALSE } ]
  [ OAUTH_ISSUE_REFRESH_TOKENS = TRUE | FALSE ]
  [ OAUTH_REDIRECT_URI ] = '<uri>'
  [ OAUTH_REFRESH_TOKEN_VALIDITY = <integer> ]
  [ OAUTH_USE_SECONDARY_ROLES = IMPLICIT | NONE ]
  [ BLOCKED_ROLES_LIST = ( '<role_name>' [ , '<role_name>' , ... ] ) ]
  [ COMMENT = '<string_literal>' ]

ALTER [ SECURITY ] INTEGRATION [ IF EXISTS ] <name> UNSET {
  ENABLED |
  COMMENT
  }
  [ , ... ]
Copy

Snowflake OAuth pour les clients personnalisés

ALTER [ SECURITY ] INTEGRATION [ IF EXISTS ] <name> SET
  [ ENABLED = { TRUE | FALSE } ]
  [ OAUTH_REDIRECT_URI = '<uri>' ]
  [ OAUTH_ALLOW_NON_TLS_REDIRECT_URI = TRUE | FALSE ]
  [ OAUTH_ENFORCE_PKCE = TRUE | FALSE ]
  [ PRE_AUTHORIZED_ROLES_LIST = ( '<role_name>' [ , '<role_name>' , ... ] ) ]
  [ BLOCKED_ROLES_LIST = ( '<role_name>' [ , '<role_name>' , ... ] ) ]
  [ OAUTH_ISSUE_REFRESH_TOKENS = TRUE | FALSE ]
  [ OAUTH_REFRESH_TOKEN_VALIDITY = <integer> ]
  [ OAUTH_USE_SECONDARY_ROLES = IMPLICIT | NONE ]
  [ NETWORK_POLICY = '<network_policy>' ]
  [ OAUTH_CLIENT_RSA_PUBLIC_KEY = <public_key1> ]
  [ OAUTH_CLIENT_RSA_PUBLIC_KEY_2 = <public_key2> ]
  [ COMMENT = '{string_literal}' ]

ALTER [ SECURITY ] INTEGRATION [ IF EXISTS ] <name>  UNSET {
                                                           ENABLED                       |
                                                           NETWORK_POLICY                |
                                                           OAUTH_CLIENT_RSA_PUBLIC_KEY   |
                                                           OAUTH_CLIENT_RSA_PUBLIC_KEY_2 |
                                                           OAUTH_USE_SECONDARY_ROLES = IMPLICIT | NONE
                                                           COMMENT
                                                           }
                                                           [ , ... ]
Copy

Paramètres

Paramètres d’application du partenaire OAuth Snowflake

Utilisez ces paramètres lorsque OAUTH_CLIENT = <partner_application> dans l’intégration de sécurité. Par exemple, ces paramètres sont valables pour OAUTH_CLIENT = TABLEAU_SERVER.

name

Identificateur pour l’intégration à modifier. Si l’identificateur contient des espaces ou des caractères spéciaux, toute la chaîne doit être délimitée par des guillemets doubles. Les identificateurs entre guillemets doubles sont également sensibles à la casse.

SET ...

Spécifie un(e) ou plusieurs paramètre(s)/propriété(s) à définir pour l’intégration (séparés par des espaces, des virgules ou de nouvelles lignes) :

ENABLED = TRUE | FALSE

Spécifie s’il faut initier le fonctionnement de l’intégration ou le suspendre.

  • TRUE permet l’exécution de l’intégration en fonction des paramètres spécifiés dans la définition de canal.

  • FALSE suspend l’intégration pour la maintenance. Toute intégration entre Snowflake et un service tiers échoue.

OAUTH_REDIRECT_URI = 'uri'

Spécifie l’URI du client. Une fois l’utilisateur authentifié, le navigateur Web est redirigé vers cette URI.

Ce paramètre est nécessaire lorsque OAUTH_CLIENT = LOOKER. Pour plus de détails, voir l’exemple dans la documentation Looker.

OAUTH_ISSUE_REFRESH_TOKENS = TRUE | FALSE

Booléen qui spécifie s’il faut autoriser le client à échanger un jeton d’actualisation contre un jeton d’accès lorsque le jeton d’accès actuel a expiré. Si défini sur FALSE, aucun jeton d’actualisation n’est émis. Le consentement de l’utilisateur est révoqué et l’utilisateur doit confirmer l’autorisation à nouveau.

Par défaut : TRUE

OAUTH_REFRESH_TOKEN_VALIDITY = integer

Entier qui spécifie la durée pendant laquelle les jetons d’actualisation doivent être valides (en secondes). Cela peut être utilisé pour entraîner l’expiration périodique du jeton d’actualisation.

Notez que si votre entreprise souhaite que les valeurs minimales ou maximales soient abaissées ou augmentées, respectivement, demandez à votre administrateur de compte d’envoyer une demande au support Snowflake.

Valeurs

86400 (1 jour) à 7776000 (90 jours)

Par défaut

7776000

OAUTH_USE_SECONDARY_ROLES = IMPLICIT | NONE

IMPLICIT

Les rôles secondaires définis par défaut dans les propriétés de l’utilisateur sont activés par défaut dans la session en cours d’ouverture.

NONE

Les rôles secondaires par défaut ne sont pas pris en charge dans la session en cours d’ouverture.

Par défaut : NONE

BLOCKED_ROLES_LIST = ( 'role_name' [ , 'role_name' , ... ] )

Liste des rôles Snowflake séparés par des virgules qu’un utilisateur ne peut pas accepter explicitement d’utiliser après l’authentification (par exemple, 'custom_role1', 'custom_role2').

Par défaut, Snowflake empêche les rôles ACCOUNTADMIN, ORGADMIN, et SECURITYADMIN de s’authentifier. Pour permettre à ces rôles privilèges de s’authentifier, utilisez la commande ALTER ACCOUNT pour définir le paramètre de compte OAUTH_ADD_PRIVILEGED_ROLES_TO_BLOCKED_LIST sur FALSE.

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 de détails sur la spécification des balises dans une instruction, voir Quotas de balises pour les objets et les colonnes.

COMMENT = 'string_literal'

Chaîne (littéral) qui spécifie un commentaire pour l’intégration.

Paramètres client personnalisés OAuth Snowflake

Utilisez ces paramètres lorsque OAUTH_CLIENT = CUSTOM dans l’intégration de sécurité.

name

Identificateur pour l’intégration à modifier. Si l’identificateur contient des espaces ou des caractères spéciaux, toute la chaîne doit être délimitée par des guillemets doubles. Les identificateurs entre guillemets doubles sont également sensibles à la casse.

SET ...

Spécifie un(e) ou plusieurs paramètre(s)/propriété(s) à définir pour l’intégration (séparés par des espaces, des virgules ou de nouvelles lignes) :

ENABLED = TRUE | FALSE Spécifie s’il faut initier le fonctionnement de l’intégration ou le suspendre.

  • TRUE permet l’exécution de l’intégration en fonction des paramètres spécifiés dans la définition de canal.

  • FALSE suspend l’intégration pour la maintenance. Toute intégration entre Snowflake et un service tiers échoue.

OAUTH_REDIRECT_URI = 'uri'

Spécifie l’URI du client. Une fois l’utilisateur authentifié, le navigateur Web est redirigé vers cette URI. L’URI doit être protégée par TLS (Transport Layer Security) sauf si le paramètre facultatif OAUTH_ALLOW_NON_TLS_REDIRECT_URI est défini sur TRUE.

Ne pas inclure les paramètres de requête envoyés avec l’URI de redirection dans la requête vers le point de terminaison d’autorisation. Par exemple, si la valeur du paramètre de requête redirect_uri dans la requête adressée au point de terminaison d’autorisation est https://www.example.com/connect?authType=snowflake, assurez-vous que le paramètre OAUTH_REDIRECT_URI est défini sur https://www.example.com/connect.

OAUTH_ALLOW_NON_TLS_REDIRECT_URI = TRUE | FALSE

Si TRUE, autorise le paramétrage de OAUTH_REDIRECT_URI sur une URI non protégée par TLS. Nous vous recommandons vivement d’utiliser TLS pour empêcher les redirections man-in-the-middle OAuth utilisées lors des attaques de hameçonnage.

Par défaut : FALSE

OAUTH_ENFORCE_PKCE = TRUE | FALSE

Booléen qui spécifie si la clé de vérification pour l’échange de code (PKCE) doit être requise pour l’intégration.

Par défaut : FALSE

OAUTH_USE_SECONDARY_ROLES = IMPLICIT | NONE

IMPLICIT

Les rôles secondaires définis par défaut dans les propriétés de l’utilisateur sont activés par défaut dans la session en cours d’ouverture.

NONE

Les rôles secondaires par défaut ne sont pas pris en charge dans la session en cours d’ouverture.

Par défaut : NONE

PRE_AUTHORIZED_ROLES_LIST = '( role_name' [ , 'role_name , ... ] ')

Liste des rôles Snowflake séparés par des virgules qu’un utilisateur n’a pas besoin d’accepter explicitement d’utiliser après l’authentification, par exemple 'custom_role1', 'custom_role2'. Notez que les rôles ACCOUNTADMIN, ORGADMIN et SECURITYADMIN ne peuvent pas être inclus dans cette liste.

Note

Ce paramètre est pris en charge pour les clients confidentiels uniquement.

BLOCKED_ROLES_LIST = ( 'role_name' [ , 'role_name' , ... ] )

Liste des rôles Snowflake séparés par des virgules qu’un utilisateur ne peut pas accepter explicitement d’utiliser après l’authentification (par exemple, 'custom_role1', 'custom_role2').

Notez que les rôles ACCOUNTADMIN, ORGADMIN, et SECURITYADMIN sont inclus par défaut dans cette liste. Toutefois, si ces rôles doivent être supprimés pour votre compte, demandez à votre administrateur de compte d’envoyer une demande au support Snowflake.

OAUTH_ISSUE_REFRESH_TOKENS = TRUE | FALSE

Booléen qui spécifie s’il faut autoriser le client à échanger un jeton d’actualisation contre un jeton d’accès lorsque le jeton d’accès actuel a expiré. Si défini sur FALSE, aucun jeton d’actualisation n’est émis. Le consentement de l’utilisateur est révoqué et l’utilisateur doit confirmer l’autorisation à nouveau.

Par défaut : TRUE

OAUTH_REFRESH_TOKEN_VALIDITY = integer

Entier qui spécifie la durée pendant laquelle les jetons d’actualisation doivent être valides (en secondes). Cela peut être utilisé pour entraîner l’expiration périodique du jeton d’actualisation.

Lorsqu’un jeton d’actualisation expire, l’application doit rediriger l’utilisateur à travers le flux d’autorisation pour obtenir un nouveau jeton d’actualisation.

Les valeurs minimale, maximale et par défaut prises en charge sont les suivantes :

Application

Minimum

Maximum

Par défaut

Tableau Desktop

60 (1 minute)

36000 (10 heures)

36000 (10 heures)

Tableau Server ou Tableau Online

60 (1 minute)

7776000 90 jours

7776000 90 jours

Client personnalisé

86400 (1 jour)

7776000 90 jours

7776000 90 jours

Si votre entreprise a besoin de réduire la valeur minimale ou d’augmenter la valeur maximale, demandez à votre administrateur de compte d’envoyer une demande au support Snowflake.

NETWORK_POLICY = 'network_policy'

Spécifie une stratégie réseau existante active pour votre compte. La stratégie réseau restreint la liste des adresses IP des utilisateurs lors de l’échange d’un code d’autorisation contre un jeton d’accès ou d’actualisation et lors de l’utilisation d’un jeton d’actualisation pour obtenir un nouveau jeton d’accès. Si ce paramètre n’est pas défini, la politique réseau du compte (le cas échéant) est utilisée à la place.

OAUTH_CLIENT_RSA_PUBLIC_KEY = public_key1

Spécifie une clé publique RSA.

OAUTH_CLIENT_RSA_PUBLIC_KEY_2 = public_key2

Spécifie une seconde clé publique RSA. Utilisée pour la rotation des clés.

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 de détails sur la spécification des balises dans une instruction, voir Quotas de balises pour les objets et les colonnes.

COMMENT = 'string_literal'

Chaîne (littéral) qui spécifie un commentaire pour l’intégration.

UNSET ...

Spécifie un(e) ou plusieurs paramètre(s)/propriété(s) à désactiver pour l’intégration de sécurité, ce qui les réinitialise à leurs valeurs par défaut :

  • ENABLED

  • NETWORK_POLICY

  • OAUTH_CLIENT_RSA_PUBLIC_KEY

  • OAUTH_CLIENT_RSA_PUBLIC_KEY_2

  • TAG tag_name [ , tag_name ... ]

  • COMMENT

Notes sur l’utilisation

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

L’exemple suivant lance l’opération d’une intégration suspendue :

ALTER SECURITY INTEGRATION myint SET ENABLED = TRUE;
Copy