Comprendre les droits du propriétaire et les applications Streamlit in Snowflake¶
Attention
Cette fonctionnalité est disponible pour les comptes des régions commerciales AWS et Microsoft Azure. AWS PrivateLink et Azure Private Link ne sont pas pris en charge.
Dans ce chapitre :
Introduction¶
Le modèle de Streamlit dans Snowflake est étroitement lié au modèle des droits du propriétaire dans les procédures stockées. Cela élimine le besoin de jetons de compte de service et s’intègre aux fonctions d’authentification, de contrôle d’accès et de politique réseau fournies par Snowflake.
Concernant les droits du propriétaire dans Streamlit in Snowflake¶
Les applications Streamlit respectent les règles suivantes au sein d’une session :
Exécuter avec les privilèges du propriétaire, pas les privilèges de l’appelant.
Effectuer une exécution avec l’entrepôt fourni par le propriétaire de l’application.
Utiliser la base de données et le schéma dans lesquels l’application Streamlit dans Snowflake est créée, et non la base de données et le schéma actuellement utilisés par l’appelant.
À propos de la création d’applications¶
Le privilège de créer une application Streamlit est accordé au niveau du schéma.
Pour créer et modifier une application Streamlit en utilisant Streamlit in Snowflake, vous devez utiliser un rôle qui possède soit le privilège OWNERSHIP sur le schéma, soit les deux privilèges suivants :
Accordé(s) sur la base de données qui contient l’application Streamlit :
USAGE
Accordé(s) sur le schéma qui contient l’application Streamlit :
USAGE
CREATE STREAMLIT
CREATE STAGE
Lorsqu’une application Streamlit est créée, elle s’exécute avec le rôle de l’utilisateur qui a créé l’application à l’origine.
Visualisation d’une application¶
Le propriétaire de l’application peut choisir les rôles autorisés à utiliser l’application.
Les spectateurs peuvent interagir avec l’application et voir tout ce qui s’affiche à l’écran.
Tous les privilèges du rôle propriétaire de l’application peuvent être utilisés par l’application lorsqu’ils sont partagés avec d’autres rôles, que le privilège ait ou non WITH GRANT activé.
Restrictions des droits du propriétaire¶
Les applications fonctionnant avec les droits du propriétaire, elles sont soumises à plusieurs restrictions supplémentaires. Ces restrictions concernent les éléments suivants :
Les fonctions intégrées qui peuvent être appelées à l’intérieur d’une procédure stockée ne sont pas disponibles lorsqu’une procédure stockée est appelée dans une application Streamlit.
Les types d’instructions SQL qui peuvent être appelées à l’intérieur d’une procédure stockée.
Certaines commandes DESCRIBE.
Pour plus d’informations, voir Additional Restrictions on Owner’s Rights Stored Procedures.
Droits des propriétaires et sécurité des applications¶
Les applications Streamlit exécutées dans Streamlit in Snowflake s’exécutent avec les droits du propriétaire et suivent le même modèle de sécurité que les autres objets Snowflake qui s’exécutent avec les droits du propriétaire.
Bien que Snowflake offre des fonctions de sécurité telles que l’authentification, le contrôle d’accès basé sur les rôles et les contrôles administratifs, la responsabilité de la sécurité des applications est partagée avec les créateurs et propriétaires d’applications.
Un ou plusieurs rôles peuvent être propriétaires d’une application Streamlit. Avant d’accorder à un autre utilisateur un rôle de propriétaire d’une application Streamlit, Snowflake recommande d’examiner les privilèges accordés ou hérités par ce rôle pour cette raison.
Soyez prudent, par exemple, lorsque vous accordez un rôle avec des privilèges d’écriture à un autre utilisateur Snowflake. Les privilèges d’écriture permettent à l’utilisateur de modifier l’application Streamlit.
En général, Snowflake recommande d’utiliser un contrôle d’accès basé sur les rôles et des rôles dédiés pour la création et l’affichage des applications Streamlit. En outre, il est recommandé de suivre des pratiques de sécurité appropriées lorsque vous développez des applications Streamlit dans Snowflake et d’effectuer des audits de sécurité réguliers des applications Streamlit de votre compte.