Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Herstellen einer Verbindung zu Amazon Neptune Neptune-Datenbanken mithilfe der IAM-Authentifizierung mit Gremlin JavaScript
Übersicht
Dieses Handbuch zeigt, wie Sie mithilfe des JavaScript Gremlin-Treibers, mit Signature Version 4-Authentifizierung und dem SDK für Javascript v3 eine Verbindung zu einer Amazon Neptune Neptune-Datenbank mit aktivierter IAM-Authentifizierung herstellen. AWS
Voraussetzungen
-
Ein Amazon Neptune Neptune-Cluster mit aktivierter IAM-Authentifizierung.
-
Knoten 13 oder höher (siehe Minimalversionen für Gremlin JavaScript und AWS SDK für Javascript v3).
-
AWS konfigurierte Anmeldeinformationen (über Umgebungsvariablen, Datei mit gemeinsamen Anmeldeinformationen oder IAM-Rolle).
Erstellen Sie eine Basisverbindung
Verwenden Sie das folgende Codebeispiel als Anleitung zum Herstellen einer Basisverbindung mit IAM-Authentifizierung mithilfe des JavaScript Gremlin-Treibers.
const { fromNodeProviderChain } = require('@aws-sdk/credential-providers'); const { getUrlAndHeaders } = require('gremlin-aws-sigv4/lib/utils'); const { loadConfig } = require("@smithy/node-config-provider"); const { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS } = require("@smithy/config-resolver"); const gremlin = require('gremlin'); const DriverRemoteConnection = gremlin.driver.DriverRemoteConnection; const traversal = gremlin.process.AnonymousTraversalSource.traversal; const DEFAULT_REGION = 'us-east-1'; const getCredentials = async () => { try { // Loads the default credential provider chain return await fromNodeProviderChain(); } catch (e) { console.error("No credentials found", e); throw e; } }; (main = async () => { console.log('Starting'); const credentials = await getCredentials(); try { // region set inside config profile or via AWS_REGION environment variable will be loaded credentials['region'] = await loadConfig(NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS)(); } catch (e) { credentials['region'] = DEFAULT_REGION } const connInfo = getUrlAndHeaders( 'you.cluster.endpoint.neptune.amazonaws.com', '8182', credentials, '/gremlin', 'wss'); const dc = new DriverRemoteConnection(connInfo['url'], {headers: connInfo['headers']}); const g = traversal().withRemote(dc); const query = g.V().limit(5).count(); const count = await query.next(); console.log("Vertex count: " + count.value); await dc.close(); }) main();