View a markdown version of this page

Einen Kerberos-Client konfigurieren und eine Verbindung zu Ihrer DB-Instance herstellen - Amazon Relational Database Service

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.

Einen Kerberos-Client konfigurieren und eine Verbindung zu Ihrer DB-Instance herstellen

Nachdem Sie die Schritte in abgeschlossen haben Einrichten eines selbstverwalteten Active Directory, führen Sie die folgenden Schritte für jede DB-Instance aus, die Sie mit der Kerberos-Authentifizierung verwenden möchten. Sie fügen die DB-Instance Ihrer Domain hinzu, erstellen Oracle-Benutzer für Ihre Active Directory (AD) -Benutzer, konfigurieren einen Kerberos-Client und stellen dann eine Verbindung zur DB-Instance her. Wenn ein Client-Host bereits für Ihre Domain konfiguriert ist, müssen Sie seine Kerberos-Konfiguration in Schritt 3 nicht für eine andere DB-Instance wiederholen. Stellen Sie sicher, dass der Client-Host die neue DB-Instance über den Datenbank-Port erreichen kann.

Schritt 1: Erstellen oder ändern Sie eine Amazon RDS for Oracle DB-Instance

Sie können eine Amazon RDS for Oracle DB-Instance auf folgende Weise mit Ihrer selbstverwalteten AD-Domain verbinden:

Die DB-Instance muss sich in einer Virtual Private Cloud (VPC) befinden, die Ihre Domänencontroller erreichen kann. Wenn Sie die DB-Instance erstellen oder ändern, stellen Sie sicher, dass ihre Sicherheitsgruppen den unter beschriebenen Datenverkehr zulassen Konfigurieren Ihrer Netzwerkkonnektivität.

Verwenden der Konsole

  1. In der Datenbank-Authentifizierung Wählen Sie für die Einstellungen der Seite zum Erstellen, Ändern, Wiederherstellen oder Erstellen eines Read Replicas Passwort und Kerberos-Authentifizierung.

  2. Für Kerberos-Authentifizierungstyp, wählen Sie Self-managed Microsoft Active Directory.

  3. Geben Sie die folgenden Werte ein:

    • Vollständig qualifizierter Domainname (FQDN) — Der FQDN Ihrer Domain, wie corp.example.com.

    • Organisationseinheit (OU) — Der eindeutige Name der Organisationseinheit, die Sie in Schritt 1 von erstellt haben Einrichten eines selbstverwalteten Active Directory, wie OU=AWS-RDS-OU,DC=corp,DC=example,DC=com. Es muss eine oder mehrere OU-Komponenten gefolgt von einer oder mehreren DC-Komponenten haben, und Komponentenwerte dürfen keine Shell-Metazeichen $, `, |,; oder Steuerzeichen enthalten.

    • Geheimes Autorisierungs-ARN — Der Amazon-Ressourcenname (ARN) des Geheimnisses, das Sie in Schritt 5 von erstellt haben Einrichten eines selbstverwalteten Active Directory.

    • Primäre DNS-Server-IP und Sekundäre DNS-Server-IP — Die IPv4-Adressen der DNS-Server für Ihre Domain.

  4. Füllen Sie den Rest der Seite aus und wählen Sie Datenbank erstellen, DB-Instance ändern, DB-Instance wiederherstellen, oder Read Replica erstellen.

Verwendung der AWS CLI

Wenn du den benutzt AWS CLI, die folgenden Parameter sind erforderlich, damit die DB-Instance Ihrer selbstverwalteten AD-Domain beitritt:

  • Für --domain-fqdn, verwenden Sie den vollqualifizierten Domainnamen Ihrer Domain.

  • Für --domain-ou, verwenden Sie den eindeutigen Namen der Organisationseinheit, die Sie in Schritt 1 von erstellt haben Einrichten eines selbstverwalteten Active Directory. Es muss eine oder mehrere OU-Komponenten gefolgt von einer oder mehreren DC-Komponenten haben, und Komponentenwerte dürfen keine Shell-Metazeichen $, `, |,; oder Steuerzeichen enthalten.

  • Für --domain-auth-secret-arn, verwenden Sie den ARN des Geheimnisses, das Sie in Schritt 5 von erstellt haben Einrichten eines selbstverwalteten Active Directory.

  • Für --domain-dns-ips, verwenden Sie die primären und sekundären IPv4-Adressen der DNS-Server für Ihre Domain. Dieser Parameter benötigt genau zwei Adressen. Wenn Sie keinen sekundären DNS-Server haben, geben Sie die primäre Adresse zweimal ein.

Beispielsweise verbindet der folgende Befehl eine vorhandene DB-Instance mit einer selbstverwalteten AD-Domain.

Für Linux, macOS oder Unix:

aws rds modify-db-instance \ --db-instance-identifier my-oracle-instance \ --domain-fqdn corp.example.com \ --domain-ou "OU=AWS-RDS-OU,DC=corp,DC=example,DC=com" \ --domain-auth-secret-arn "arn:aws:secretsmanager:us-west-2:123456789012:secret:my-ad-secret-AbCdEf" \ --domain-dns-ips "10.0.1.100" "10.0.1.101"

Für Windows:

aws rds modify-db-instance ^ --db-instance-identifier my-oracle-instance ^ --domain-fqdn corp.example.com ^ --domain-ou "OU=AWS-RDS-OU,DC=corp,DC=example,DC=com" ^ --domain-auth-secret-arn "arn:aws:secretsmanager:us-west-2:123456789012:secret:my-ad-secret-AbCdEf" ^ --domain-dns-ips "10.0.1.100" "10.0.1.101"

Um zu überprüfen, ob der Domänenbeitritt erfolgreich war, führen Sie den folgenden Befehl aus und bestätigen Sie Folgendes Status ist kerberos-enabled.

aws rds describe-db-instances \ --db-instance-identifier my-oracle-instance \ --query 'DBInstances[0].DomainMemberships'

Wenn der Status enable-kerberos-failed lautet, finden Sie unter Problembehandlung bei selbstverwaltetem Active Directory für Amazon RDS for Oracle Informationen dazu.

Schritt 2: Oracle-Logins mit Kerberos-Authentifizierung erstellen

Nachdem die DB-Instance Folgendes erreicht hat kerberos-enabled, verwenden Sie die Amazon RDS-Master-Benutzeranmeldedaten, um wie bei jeder anderen DB-Instance eine Verbindung zur Oracle-DB-Instance herzustellen. Die DB-Instance ist mit Ihrer selbstverwalteten AD-Domain verbunden, sodass Sie Oracle-Logins und Benutzer der Microsoft Active Directory-Benutzer in Ihrer Domain bereitstellen können. Zum Verwalten von Datenbankberechtigungen erteilen und widerrufen Sie Oracle-Standardberechtigungen für diese Anmeldungen.

Um einem Microsoft Active Directory-Benutzer die Authentifizierung bei Oracle zu ermöglichen

  1. verwenden Sie die Anmeldeinformationen für den Amazon-RDS-Hauptbenutzer, um eine Verbindung mit der Oracle DB-Instance herzustellen.

  2. Erstellen Sie einen extern authentifizierten Benutzer in der Oracle-Datenbank. Im folgenden Beispiel ersetzen Sie KRBUSER@CORP.EXAMPLE.COM mit dem Benutzer- und Domänennamen.

    CREATE USER "KRBUSER@CORP.EXAMPLE.COM" IDENTIFIED EXTERNALLY; GRANT CREATE SESSION TO "KRBUSER@CORP.EXAMPLE.COM";
  3. Benutzer (sowohl Menschen als auch Anwendungen) aus Ihrer Domain können jetzt mithilfe der Kerberos-Authentifizierung von einem in die Domäne eingebundenen Client-Computer aus eine Verbindung zur Oracle-DB-Instance herstellen.

Anmerkung

Eine Read Replica ist schreibgeschützt, Sie können also keine Datenbankbenutzer darauf erstellen. Erstellen Sie extern identifizierte Benutzer auf der primären DB-Instance. Amazon RDS repliziert sie in die Read Replica, und Ihre AD-Benutzer können sich dann mit der Kerberos-Authentifizierung mit der Read Replica verbinden.

Wenn eine Read Replica mit einer anderen Domain als die primäre DB-Instance verbunden ist, erstellen Sie den Datenbankbenutzer für den Domain-Principal der Read Replica auch auf der primären DB-Instance. Obwohl sich dieser Benutzer nicht auf der primären DB-Instance authentifizieren kann, repliziert Amazon RDS den Benutzer auf die Read Replica, wo sich der Benutzer mit Kerberos authentifizieren kann.

Schritt 3: Konfigurieren Sie einen Kerberos-Client

Um einen Oracle-Client zu konfigurieren, müssen Sie die folgenden Voraussetzungen erfüllen:

  • Erstellen Sie eine Konfigurationsdatei mit dem Namen krb5.conf (Linux, macOS oder Unix) oder krb5.ini (Windows), um auf die Domäne zu verweisen. Konfigurieren Sie den Oracle-Client für die Verwendung dieser Konfigurationsdatei.

  • Stellen Sie sicher, dass der Datenverkehr zwischen dem Client-Host und Ihren AD-Domänencontrollern über den DNS-Port 53 übertragen werden kann TCP/UDP, Kerberos-Ports 88 und 464 über TCP und LDAP-Port 389 über TCP.

  • Stellen Sie sicher, dass der Datenverkehr zwischen dem Client-Host und der DB-Instance über den Datenbank-Port fließen kann.

Das Folgende ist ein Beispiel krb5.conf Inhalt:

[libdefaults] default_realm = CORP.EXAMPLE.COM [realms] CORP.EXAMPLE.COM = { kdc = corp.example.com admin_server = corp.example.com } [domain_realm] .corp.example.com = CORP.EXAMPLE.COM corp.example.com = CORP.EXAMPLE.COM

Das Folgende ist ein Beispiel sqlnet.ora Inhalt für eine SQL*Plus-Konfiguration:

SQLNET.AUTHENTICATION_SERVICES=(KERBEROS5PRE,KERBEROS5) SQLNET.KERBEROS5_CONF=path_to_krb5.conf_file SQLNET.KERBEROS5_CONF_MIT=TRUE
Anmerkung

Einstellen SQLNET.KERBEROS5_CONF_MIT=TRUE in der des Kunden sqlnet.ora Datei, wenn dein krb5.conf Die Datei verwendet das MIT-Kerberos-Konfigurationsformat, wie im vorherigen Beispiel. Dieser Parameter ermöglicht es der Datenbank, das Kerberos-Ticket zu erkennen, das MIT kinit zwischengespeichert. Ohne sie schlägt die Authentifizierung jedoch fehl kinit hat ein gültiges Ticket erhalten. Weitere Hinweise zu diesem Parameter finden Sie unter Kerberos-, SSL- und RADIUS-Authentifizierungsparameter und Konfiguration der Kerberos-Authentifizierung in der Oracle-Datenbankdokumentation.

Tipp

Wenn Sie einen systemeigenen Windows-Cache verwenden, können Sie auch den SQLNET.KERBEROS5_CC_NAME Parameter auf OSMSFT:// oder MSLSA in der sqlnet.ora Datei, um die im Microsoft Active Directory gespeicherten Anmeldeinformationen zu verwenden.

Schritt 4: Stellen Sie eine Verbindung zu Ihrer DB-Instance her

Um eine Verbindung mit SQL*Plus herzustellen

  1. Rufen Sie in einer Befehlszeile ein Kerberos-Ticket ab. Ersetzen KRBUSER@CORP.EXAMPLE.COM mit dem AD-Benutzer und dem Domänennamen und geben Sie das AD-Passwort an der Eingabeaufforderung ein.

    kinit KRBUSER@CORP.EXAMPLE.COM
  2. Öffnen Sie SQL*Plus und stellen Sie eine Verbindung über den DNS-Namen und die Portnummer für die Oracle DB-Instance her. Weitere Informationen zur Verbindung mit einer Oracle-DB-Instance in SQL*Plus finden Sie unter Mit SQL*Plus eine Verbindung zu Ihrer DB-Instance herstellen.