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.
Ajouter des objets à un partage de données dans Amazon Redshift
Vous pouvez ajouter des objets de base de données de différents types sur la console et avec SQL en suivant l'une des procédures ci-dessous.
- Console
-
Vous pouvez ajouter des objets à votre partage de données à l'aide des sections Autorisations étendues ou Autorisations directes. Sélectionnez Accorder des autorisations étendues ou Accorder des autorisations directes pour ajouter des objets. Sélectionnez le bouton Ajouter pour ajouter des objets. Une boîte de dialogue s’affiche. Procédez comme suit :
-
Si vous sélectionnez Accorder des autorisations étendues, la page Autorisations étendues d'octroi apparaît, dans laquelle vous pouvez accorder des autorisations étendues au niveau d'une base de données ou d'un schéma. Les partages de données dotés d'autorisations étendues disposent des autorisations spécifiées sur tous les objets actuels et futurs de la base de données ou du schéma. Pour plus de détails, voir,Autorisations étendues.
-
Ensuite, sélectionnez Autorisations étendues de base de données pour accorder des autorisations étendues au niveau de la base de données. Lorsque vous accordez des autorisations étendues, elles s'appliquent à la base de données actuelle lors de la création du partage de données. Ces autorisations ne peuvent pas être accordées à des objets individuels et s'appliquent à la fois aux objets existants et aux nouveaux objets (schémas, tables, vues UDFs).
-
Sélectionnez les autorisations étendues pour les schémas, les tables, les vues ou les fonctions définies par l'utilisateur. Cela signifie que tous les objets de la base de données disposent des autorisations sélectionnées accordées aux consommateurs. Sélectionnez Accorder pour terminer l'octroi des autorisations étendues à la base de données.
-
Sélectionnez ensuite les autorisations étendues du schéma pour accorder des autorisations étendues au niveau du schéma. Lorsque vous accordez des autorisations étendues au schéma, tous les objets ajoutés au schéma disposent des autorisations de partage de données spécifiées.
-
Sélectionnez le schéma que vous souhaitez ajouter au partage de données dans la liste déroulante. Vous ne pouvez sélectionner qu'un seul schéma à la fois. Sélectionnez ensuite les autorisations directes que vous souhaitez accorder sur le schéma sélectionné.
-
Sélectionnez des autorisations étendues pour les objets de votre schéma tels que les tables, les vues et les fonctions définies par l'utilisateur. Les autorisations sont accordées sur tous les objets correspondants du schéma. Il peut s'agir d'objets existants ou d'objets ajoutés dans le futur. Lorsqu'elle est appliquée, vous ne pouvez pas supprimer une autorisation d'un objet sans révoquer les autorisations délimitées.
-
Sélectionnez Accorder pour terminer l'octroi des autorisations délimitées par le schéma.
-
-
Si vous sélectionnez Accorder des autorisations directes, la page Accorder des autorisations directes apparaît. Vous pouvez y accorder des autorisations directes au niveau de chaque objet, tel qu'un schéma, une table, une vue ou une fonction définie par l'utilisateur. Pour accorder des autorisations directes, vous devez d'abord ajouter les schémas appropriés au partage de données.
-
Ensuite, sélectionnez Accorder des autorisations directes aux schémas pour appliquer des autorisations directes à un schéma spécifique. Sélectionnez ensuite les autorisations de schéma pour vos objets de schéma tels que les tables, les vues et les fonctions définies par l'utilisateur, puis sélectionnez le schéma que vous souhaitez ajouter au partage de données. Sélectionnez Grant pour terminer l'ajout du schéma au partage de données.
-
Une fois qu'un schéma a été ajouté à votre partage de données, vous pouvez ajouter des autorisations directes pour vos objets de schéma. Sélectionnez à nouveau Accorder des autorisations directes. La page Accorder des autorisations directes apparaît. Accédez ensuite aux onglets d'autorisations directes pour les objets du schéma.
-
Sélectionnez Accorder des autorisations directes aux tables et aux vues pour accorder des autorisations directes au niveau des objets sur ces objets. Sélectionnez les autorisations directes requises et les objets requis dans la liste. Utilisez le champ de recherche pour trouver des objets de partage de données. Sélectionnez Grant pour terminer l'ajout de tables et de vues au partage de données.
-
Sélectionnez Accorder des autorisations directes aux fonctions définies par l'utilisateur pour accorder des autorisations directes au niveau de l'objet sur les fonctions définies par l'utilisateur. Sélectionnez les autorisations directes requises et les objets requis dans la liste. Utilisez le champ de recherche pour trouver des objets de partage de données. Sélectionnez Grant pour terminer l'ajout de fonctions définies par l'utilisateur au partage de données.
-
-
Vous pouvez également choisir d’ajouter de futurs objets ou non. Lorsque vous choisissez d’inclure les objets d’unité de partage des données ajoutés au schéma, cela signifie que les objets ajoutés au schéma sont automatiquement ajoutés à l’unité de partage des données.
-
Choisissez Ajouter pour terminer la section et ajouter les objets. Ceux-ci sont répertoriés sous Objets d’unité de partage des données.
-
Après avoir ajouté des objets, vous pouvez sélectionner des objets individuels et modifier leurs autorisations. Si vous sélectionnez un schéma, une boîte de dialogue apparaît pour vous demander si vous souhaitez ajouter des autorisations étendues. Ainsi, chaque objet existant ou ajouté au schéma dispose d’un ensemble d’autorisations présélectionnées, adaptées au type d’objet. Par exemple, l’administrateur peut définir que toutes les tables ajoutées disposent des autorisations SELECT et UPDATE.
-
Tous les objets de partage de données sont répertoriés dans les sections Autorisations étendues ou Autorisations directes.
-
Dans la section Consommateurs de données, vous pouvez ajouter des espaces de noms ou ajouter AWS des comptes en tant que consommateurs du partage de données.
-
Sélectionnez Créer une unité de partage des données pour enregistrer vos modifications.
Une fois que vous avez créé l’unité de partage des données, il apparaît dans la liste sous Unités de partage des données créées dans mon espace de noms. Si vous choisissez une unité de partage des données dans la liste, vous pouvez afficher ses consommateurs, ses objets et d’autres propriétés.
-
- SQL
-
Avec SQL, le propriétaire du partage de données doit accorder l'autorisation USAGE aux schémas qu'il souhaite ajouter au partage de données. Le GRANT est utilisé pour accorder diverses actions sur le schéma, notamment CREATE et USAGE. Les schémas contiennent des objets partagés :
CREATE SCHEMA myshared_schema1; CREATE SCHEMA myshared_schema2; GRANT USAGE ON SCHEMA myshared_schema1 TO DATASHARE my_datashare; GRANT CREATE, USAGE ON SCHEMA myshared_schema2 TO DATASHARE my_datashare;
L’administrateur peut également continuer d’exécuter les commandes ALTER pour ajouter un schéma à l’unité de partage des données. Seules les autorisations USAGE sont accordées lorsqu’un schéma est ajouté de cette façon.
ALTER DATASHARE my_datashare ADD SCHEMA myshared_schema1;
Une fois que l’administrateur a ajouté des schémas, il peut accorder des autorisations d’unité de partage des données sur les objets du schéma. Il peut s’agit d’autorisations en lecture ou en écriture. L’exemple GRANT ALL montre comment accorder toutes les autorisations.
GRANT SELECT, INSERT ON TABLE myshared_schema1.table1, myshared_schema1.table2, myshared_schema2.table1 TO DATASHARE my_datashare; GRANT ALL ON TABLE myshared_schema1.table4 TO DATASHARE my_datashare;
Vous pouvez continuer d’exécuter des commandes comme ALTER DATASHARE pour ajouter des tables. Dans ce cas, seules les autorisations SELECT sont accordées aux objets ajoutés.
ALTER DATASHARE my_datashare ADD TABLE myshared_schema1.table1, myshared_schema1.table2, myshared_schema2.table1;
Vous pouvez accorder des autorisations étendues à un partage de données sur tous les objets d'un type donné au sein d'une base de données ou d'un schéma. Les partages de données dotés d'autorisations étendues disposent des autorisations spécifiées sur tous les objets actuels et futurs de la base de données ou du schéma.
Vous pouvez consulter l'étendue des autorisations délimitées au niveau de la base de données dans. SVV_DATABASE_PRIVILEGES Vous pouvez consulter l'étendue des autorisations délimitées au niveau du schéma dans. SVV_SCHEMA_PRIVILEGES
Voici la syntaxe permettant d'accorder des autorisations étendues aux partages de données. Pour plus d'informations sur les autorisations délimitées, consultezAutorisations étendues.
GRANT { CREATE | USAGE | ALTER | DROP } [,...] | ALL [ PRIVILEGES ] }FOR SCHEMAS IN DATABASE db_name TO DATASHARE { datashare_name} GRANT { { SELECT | INSERT | UPDATE | DELETE | DROP | ALTER | TRUNCATE | REFERENCES } [, ...] } | ALL [PRIVILEGES] } }FOR TABLES IN {SCHEMA schema_name [DATABASE db_name ] | DATABASE db_name } TO DATASHARE { datashare_name} GRANT { EXECUTE | ALL [ PRIVILEGES ] }FOR FUNCTIONS IN {SCHEMA schema_name [DATABASE db_name ] | DATABASE db_name } TO DATASHARE { datashare_name}