Privilèges et sécurité des fonctions UDF - Amazon Redshift

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Privilèges et sécurité des fonctions UDF

Pour créer une fonction définie par l’utilisateur, vous devez avoir l’autorisation pour USAGE ON LANGUAGE pour SQL ou plpythonu (Python). Par défaut, USAGE ON LANGUAGE SQL est accordé à PUBLIC, mais vous devez accorder explicitement USAGE ON LANGUAGE PLPYTHONU à des utilisateurs ou des groupes spécifiques.

Pour révoquer le privilège USAGE pour SQL, révoquez d’abord USAGE de PUBLIC. Ensuite, accordez le privilège USAGE pour SQL uniquement aux utilisateurs ou groupes spécifiques autorisés à créer des fonctions SQL définies par l’utilisateur. L'exemple suivant révoque le privilège USAGE pour SQL de PUBLIC. Ensuite, il accorde le privilège USAGE au groupe d'utilisateurs udf_devs.

revoke usage on language sql from PUBLIC; grant usage on language sql to group udf_devs;

Pour exécuter une fonction UDF, vous devez disposer de l'autorisation d'exécution pour chaque fonction. Par défaut, l'autorisation d'exécution pour les nouvelles fonctions UDF est accordée à PUBLIC. Pour limiter l'utilisation, révoquez cette autorisation de PUBLIC pour la fonction. Ensuite, accordez le privilège à des individus ou à des groupes spécifiques.

L'exemple suivant révoque le privilège d'exécution de la fonction f_py_greater de PUBLIC. Ensuite, il accorde le privilège USAGE au groupe d'utilisateurs udf_devs.

revoke execute on function f_py_greater(a float, b float) from PUBLIC; grant execute on function f_py_greater(a float, b float) to group udf_devs;

Les super-utilisateurs ont tous les privilèges par défaut.

Pour plus d'informations, consultez GRANT et REVOKE.