Configurez une intégration au catalogue pour AWS Glue Iceberg REST¶
Suivez les étapes de cette rubrique pour créer une intégration de catalogue pour le point de terminaison AWS Glue Iceberg REST avec authentification Signature Version 4 (SigV4).
Étape 1 : Configurer des autorisations d’accès pour le catalogue de données AWS Glue¶
Créez une politique IAM pour que Snowflake puisse accéder au catalogue de données AWS Glue. Attachez la politique à un rôle IAM, que vous spécifiez lors de la création d’une intégration au catalogue. Pour des instructions, voir Création de politiques IAM et Modification d’une politique d’autorisations de rôle dans le Guide de l’utilisateur IAM (Identity and Access Management - Gestion de l’identité et de l’accès) AWS.
Au minimum, Snowflake requiert les autorisations suivantes sur le catalogue de données Glue AWS pour accéder aux informations utilisant le catalogue Glue Iceberg REST.
glue:GetCatalog
glue:GetDatabase
glue:GetDatabases
glue:GetTable
glue:GetTables
L’exemple de politique suivant (au format JSON) fournit les autorisations nécessaires pour pouvoir accéder à toutes les tables d’une base de données spécifique.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowGlueCatalogTableAccess",
"Effect": "Allow",
"Action": [
"glue:GetCatalog",
"glue:GetDatabase",
"glue:GetDatabases",
"glue:GetTable",
"glue:GetTables"
],
"Resource": [
"arn:aws:glue:*:<accountid>:table/*/*",
"arn:aws:glue:*:<accountid>:catalog",
"arn:aws:glue:*:<accountid>:database/<database-name>"
]
}
]
}
Note
Vous pouvez modifier l’élément
Resource
de cette politique pour restreindre davantage les ressources autorisées (par exemple, le catalogue, les bases de données ou les tables). Pour plus d’informations, voir Types de ressource définis par AWS GlueSi vous utilisez le chiffrement pour AWS Glue, vous devez modifier la politique pour ajouter des autorisations Key Management Service AWS (AWSKMS). Pour plus d’informations, voir Configuration du chiffrement dans AWS Glue.
Étape 2 : Créer une intégration de catalogue dans Snowflake¶
Créez une intégration au catalogue pour le point de terminaison AWS Glue Iceberg REST à l’aide de la commande CREATE CATALOG INTEGRATION (Apache Iceberg™ REST). Indiquez le rôle IAM que vous avez configuré. Pour CATALOG_NAME
, utilisez l’ID de votre compte AWS.
CREATE CATALOG INTEGRATION glue_rest_catalog_int
CATALOG_SOURCE = ICEBERG_REST
TABLE_FORMAT = ICEBERG
CATALOG_NAMESPACE = 'rest_catalog_integration'
REST_CONFIG = (
CATALOG_URI = 'https://glue.us-west-2.amazonaws.com/iceberg'
CATALOG_API_TYPE = AWS_GLUE
CATALOG_NAME = '123456789012'
)
REST_AUTHENTICATION = (
TYPE = SIGV4
SIGV4_IAM_ROLE = 'arn:aws:iam::123456789012:role/my-role'
SIGV4_SIGNING_REGION = 'us-west-2'
)
ENABLED = TRUE;
Où :
CATALOG_URI
est le point de terminaison du service pour le catalogue AWS Glue Iceberg REST.CATALOG_NAME
est l’ID de votre compte AWS.
Pour plus d’informations, voir CREATE CATALOG INTEGRATION (Apache Iceberg™ REST), où vous trouverez des instructions sur la configuration d’une intégration de catalogue pour AWS Glue.