- Catégories :
Fonctions système (Informations système)
SYSTEM$VERIFY_CATALOG_INTEGRATION¶
Vérifie la configuration d’une intégration de catalogue spécifiée pour Apache Iceberg™ REST.
Pour vérifier si vous avez correctement configuré l’autorisation et le contrôle d’accès avec votre catalogue REST Iceberg, la fonction tente d’utiliser l’intégration du catalogue pour interagir avec votre serveur de catalogue.
- Voir aussi :
CREATE CATALOG INTEGRATION (Apache Iceberg™ REST), Configuration d’une intégration de catalogue pour les catalogues Apache Iceberg™ REST
Syntaxe¶
SYSTEM$VERIFY_CATALOG_INTEGRATION( '<rest_catalog_integration_name>' )
Arguments¶
rest_catalog_integration_name
Nom de l’intégration du catalogue REST Iceberg à tester.
Les noms des intégrations de catalogue sont sensibles à la casse.
Renvoie¶
La fonction renvoie un objet JSON avec les propriétés décrites ci-dessous :
Propriété |
Description |
---|---|
|
Indique si la vérification a été effectuée avec succès ; |
|
Code d’erreur de l’échec (en cas d’échec de la vérification). |
|
Un message d’erreur détaillé (en cas d’échec de la vérification). |
{
"success" : false,
"errorCode" : "004140",
"errorMessage" : "SQL Execution Error: Failed to access the REST endpoint of catalog integration CAT_INT_VERIFICATION with error: Unable to process: Unable to find warehouse my_warehouse. Check the accessibility of the REST catalog URI or warehouse."
}
Exigences en matière de contrôle d’accès¶
Un rôle utilisé pour exécuter cette opération doit au minimum disposer des privilèges suivants :
Privilège |
Objet |
Remarques |
---|---|---|
USAGE |
Intégration de catalogue |
Pour obtenir des instructions sur la création d’un rôle personnalisé avec un ensemble spécifique de privilèges, voir Création de rôles personnalisés.
Pour des informations générales sur les rôles et les privilèges accordés pour effectuer des actions SQL sur des objets sécurisables, voir Aperçu du contrôle d’accès.
Exemples¶
L’instruction suivante crée une intégration de catalogue REST avec un secret client OAuth non valide (exécution sans erreur) :
CREATE CATALOG INTEGRATION my_rest_cat_int
CATALOG_SOURCE = ICEBERG_REST
TABLE_FORMAT = ICEBERG
CATALOG_NAMESPACE = 'default'
REST_CONFIG = (
CATALOG_URI = 'https://abc123.us-west-2.aws.myapi.com/polaris/api/catalog'
WAREHOUSE = 'my_warehouse'
)
REST_AUTHENTICATION = (
TYPE = OAUTH
OAUTH_CLIENT_ID = '123AbC ...'
OAUTH_CLIENT_SECRET = '1365910abIncorrectSecret ...'
OAUTH_ALLOWED_SCOPES = ('all-apis', 'sql')
)
ENABLED = TRUE;
Utiliser la fonction système pour vérifier l’intégration de catalogue, où un échec est attendu :
SELECT SYSTEM$VERIFY_CATALOG_INTEGRATION('my_rest_cat_int');
Sortie :
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| SYSTEM$VERIFY_CATALOG_INTEGRATION('MY_REST_CAT_INT') |
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| { |
| "success" : false, | |
| "errorCode" : "004155", |
| "errorMessage" : "SQL Execution Error: Failed to perform OAuth client credential flow for the REST Catalog integration MY_REST_CAT_INT due to error: SQL execution error: OAuth2 Access token request failed with error 'unauthorized_client:The client is not authorized'.." |
| } |
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+