- Kategorien:
Systemfunktionen (Systeminformationen)
SYSTEM$VERIFY_CATALOG_INTEGRATION¶
Überprüft die Konfiguration für eine bestimmte Katalogintegration für Apache Iceberg™ REST.
Um zu überprüfen, ob Sie die Autorisierung und Zugriffssteuerung für Ihren Iceberg REST-Katalog korrekt konfiguriert haben, versucht die Funktion, die Katalogintegration zu verwenden, um mit Ihrem Katalogserver zu interagieren.
- Siehe auch:
CREATE CATALOG INTEGRATION (Apache Iceberg™ REST), Konfigurieren Sie eine Katalogintegration für Apache Iceberg™ REST-Kataloge
Syntax¶
SYSTEM$VERIFY_CATALOG_INTEGRATION( '<rest_catalog_integration_name>' )
Argumente¶
rest_catalog_integration_name
Name der zu testenden Iceberg REST-Katalogintegration.
Bei den Namen der Katalogintegration wird zwischen Groß-/Kleinschreibung unterschieden.
Rückgabewerte¶
Die Funktion gibt ein JSON-Objekt mit den unten beschriebenen Eigenschaften zurück:
Eigenschaft |
Beschreibung |
---|---|
|
Gibt an, ob die Überprüfung erfolgreich war; |
|
Fehlercode des Fehlers (wenn die Überprüfung fehlschlägt). |
|
Eine detaillierte Fehlermeldung (wenn die Überprüfung fehlschlägt). |
{
"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."
}
Anforderungen an die Zugriffssteuerung¶
Eine Rolle, die zur Ausführung dieser Operation verwendet wird, muss mindestens die folgenden Berechtigungen haben:
Berechtigung |
Objekt |
Anmerkungen |
---|---|---|
USAGE |
Katalogintegration |
Eine Anleitung zum Erstellen einer kundenspezifischen Rolle mit einer bestimmten Gruppe von Berechtigungen finden Sie unter Erstellen von kundenspezifischen Rollen.
Allgemeine Informationen zu Rollen und Berechtigungen zur Durchführung von SQL-Aktionen auf sicherungsfähigen Objekten finden Sie unter Übersicht zur Zugriffssteuerung.
Beispiele¶
Die folgende Beispielanweisung erstellt eine REST-Katalogintegration unter Verwendung eines ungültigen OAuth-Client-Geheimnisses (dies läuft ohne Fehler):
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;
Verwenden Sie die Systemfunktion, um die Katalogintegration zu überprüfen – der Vorgang sollte fehlschlagen:
SELECT SYSTEM$VERIFY_CATALOG_INTEGRATION('my_rest_cat_int');
Ausgabe:
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 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'.." |
| } |
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+