Einrichten der Kerberos-Authentifizierung für DB-Instances von Amazon RDS für Db2 - 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.

Einrichten der Kerberos-Authentifizierung für DB-Instances von Amazon RDS für Db2

Sie verwenden AWS Directory Service for Microsoft Active Directory (AWS Managed Microsoft AD), um die Kerberos Authentifizierung für eine RDS for Db2-DB-Instance einzurichten. Gehen Sie folgendermaßen vor, um die Kerberos-Authentifizierung einzurichten:

Schritt 1: Erstellen Sie ein Verzeichnis mit AWS Managed Microsoft AD

Directory Service erstellt ein vollständig verwaltetes Active Directory in der AWS Cloud. Wenn Sie ein AWS Managed Microsoft AD Verzeichnis erstellen, Directory Service erstellt zwei Domänencontroller und DNS-Server für Sie. Die Verzeichnisserver werden in verschiedenen Subnetzen in einer VPC erstellt. Diese Redundanz hilft sicherzustellen, dass Ihr Verzeichnis verfügbar bleibt, auch wenn ein Fehler auftritt.

Wenn Sie ein AWS Managed Microsoft AD Verzeichnis erstellen, Directory Service führt in Ihrem Namen die folgenden Aufgaben aus:

  • Richtet ein Active Directory in Ihrer VPC ein.

  • Erstellt ein Konto für den Verzeichnisadministrator mit dem Benutzernamen Admin und dem angegebenen Passwort. Mit diesem Konto verwalten Sie das Verzeichnis.

    Wichtig

    Stellen Sie sicher, dass Sie dieses Passwort speichern. Directory Service speichert dieses Passwort nicht und es kann nicht abgerufen oder zurückgesetzt werden.

  • Erstellt eine Sicherheitsgruppe für die Verzeichniscontroller. Die Sicherheitsgruppe muss die Kommunikation mit der DB-Instance von RDS für Db2 zulassen.

AWS Erstellt beim Start AWS Directory Service for Microsoft Active Directory eine Organisationseinheit (OU), die alle Objekte Ihres Verzeichnisses enthält. Diese OU erhält den NetBIOS-Namen, den Sie beim Erstellen des Verzeichnisses eingegeben haben, und befindet sich im Domänenstamm. Der Domänenstamm gehört und wird von diesem verwaltet AWS.

Das Admin Konto, das mit Ihrem AWS Managed Microsoft AD Verzeichnis erstellt wurde, verfügt über Berechtigungen für die gängigsten Verwaltungsaktivitäten Ihrer Organisationseinheit:

  • Erstellen, Aktualisieren oder Löschen von Benutzern

  • Hinzufügen von Ressourcen zu Ihrer Domain, etwa Datei- oder Druckserver, und anschließendes Gewähren der zugehörigen Ressourcenberechtigungen für Benutzer in der OU

  • Erstellen Sie zusätzliche OUs Container.

  • Delegieren von Befugnissen.

  • Wiederherstellen von gelöschten Objekten aus dem Active Directory-Papierkorb.

  • Ausführen der Module von Active Directory und Domain Name Service (DNS) für Windows PowerShell auf dem Directory Service.

Das Admin-Konto hat auch die Berechtigung, die folgenden domänenweiten Aktivitäten durchzuführen:

  • Verwalten von DNS-Konfigurationen (Hinzufügen, Entfernen oder Aktualisieren von Datensätzen, Zonen und Weiterleitungen).

  • Aufrufen von DNS-Ereignisprotokollen.

  • Anzeigen von Sicherheitsereignisprotokollen.

Um ein Verzeichnis zu erstellen mit AWS Managed Microsoft AD
  1. Melden Sie sich bei der an AWS Management Console und öffnen Sie die Directory Service Konsole unter https://console.aws.amazon.com/directoryservicev2/.

  2. Wählen Sie Verzeichnis einrichten.

  3. Wählen Sie AWS Managed Microsoft AD. AWS Managed Microsoft AD ist die einzige Option, die derzeit für die Verwendung mit Amazon RDS unterstützt wird.

  4. Wählen Sie Weiter aus.

  5. Geben Sie auf der Seite Enter directory information (Verzeichnisinformationen eingeben) die folgenden Informationen ein:

    • Edition – Wählen Sie die Edition aus, die Ihre Anforderungen erfüllt.

    • DNS-Name des Verzeichnisses – Der vollständig qualifizierte Namen für das Verzeichnis, z. B. corp.example.com.

    • NetBIOS-Name des Verzeichnisses – Ein optionaler Kurzname für das Verzeichnis, z. B. CORP.

    • Verzeichnisbeschreibung – Eine optionale Beschreibung des Verzeichnisses.

    • Administratorpasswort – Das Passwort für den Verzeichnisadministrator. Während des Verzeichniserstellungsprozesses wird ein Administratorkonto mit dem Benutzernamen Admin und diesem Passwort angelegt.

      Das Passwort für den Verzeichnisadministrator darf nicht das Wort "admin" enthalten. Beachten Sie beim Passwort die Groß- und Kleinschreibung und es muss 8 bis 64 Zeichen lang sein. Zudem muss es mindestens ein Zeichen aus dreien der vier folgenden Kategorien enthalten:

      • Kleinbuchstaben (a–z)

      • Großbuchstaben (A–Z)

      • Zahlen (0–9)

      • Nicht-alphanumerische Zeichen (~!@#$%^&*_-+=`|\(){}[]:;"'<>,.?/)

      • Passwort bestätigen – Geben Sie das Administratorpasswort erneut ein.

        Wichtig

        Stellen Sie sicher, dass Sie dieses Passwort speichern. Directory Service speichert dieses Passwort nicht und es kann nicht abgerufen oder zurückgesetzt werden.

  6. Wählen Sie Weiter aus.

  7. Geben Sie auf der Seite Choose VPC and subnets (VPC und Subnetze wählen) die folgenden Informationen an.

    • VPC – Wählen Sie die VPC für das Verzeichnis aus. Sie können die DB-Instance von RDS für Db2 in derselben VPC oder in einer anderen VPC erstellen.

    • Subnetze – Wählen Sie die Subnetze für die Verzeichnis-Server aus. Die beiden Subnetze müssen zu verschiedenen Availability-Zonen gehören.

  8. Wählen Sie Weiter aus.

  9. Überprüfen Sie die Verzeichnisinformationen. Wenn Änderungen erforderlich sind, klicken Sie auf Previous (Zurück) und nehmen Sie die Änderungen vor. Wenn die Informationen richtig sind, wählen Sie Create directory (Verzeichnis erstellen).

    Das Fenster „Überprüfen und erstellen“ während der Verzeichniserstellung in der Directory Service Konsole.

Es dauert einige Minuten, bis das Verzeichnis erstellt wurde. Wenn es erfolgreich erstellt wurde, ändert sich der Wert Status in Active (Aktiv).

Um Informationen über das Verzeichnis anzuzeigen, wählen Sie die Verzeichnis-ID unter Verzeichnis-ID aus. Notieren Sie sich den Wert Directory ID. Sie benötigen diesen Wert, wenn Sie die DB-Instance von RDS für Db2 erstellen oder modifizieren.

Der Abschnitt mit den Verzeichnisdetails mit der Verzeichnis-ID in der Directory Service Konsole.

Schritt 2: Erstellen einer Vertrauensstellung

Wenn Sie nur AWS Managed Microsoft AD verwenden möchten, fahren Sie mit fortSchritt 3: Erstellen Sie eine IAM-Rolle, auf die Amazon RDS zugreifen kann Directory Service.

Um die Kerberos-Authentifizierung mithilfe Ihres selbstverwalteten Active Directory zu aktivieren, müssen Sie eine Gesamtstruktur-Vertrauensstellung zwischen Ihrem selbstverwalteten Active Directory und dem einrichten. Eine Gesamtvertrauensstellung ist eine Vertrauensstellung zwischen einem Microsoft AD und einem selbstverwalteten Active Directory, das im vorherigen Schritt AWS Managed Microsoft AD erstellt wurde. Die Vertrauensstellung kann auch bidirektional erfolgen, wobei beide Active Directories einander vertrauen. Weitere Informationen zum Einrichten von Gesamtvertrauensstellungen mithilfe Directory Service von finden Sie unter Wann sollte eine Vertrauensstellung erstellt werden? im AWS Directory Service Administration Guide.

Schritt 3: Erstellen Sie eine IAM-Rolle, auf die Amazon RDS zugreifen kann Directory Service

Damit Amazon RDS Directory Service für Sie anrufen kann, AWS-Konto benötigen Sie eine IAM-Rolle, die die verwaltete IAM-Richtlinie verwendet. AmazonRDSDirectoryServiceAccess Diese Rolle ermöglicht es Amazon RDS, Aufrufe an Directory Service durchzuführen.

Wenn Sie mit dem eine DB-Instance erstellen AWS Management Console und Ihr Konsolen-Benutzerkonto über die iam:CreateRole entsprechende Berechtigung verfügt, erstellt die Konsole automatisch die benötigte IAM-Rolle. In diesem Fall lautet der Rollenname rds-directoryservice-kerberos-access-role. Andernfalls müssen Sie die IAM-Rolle manuell erstellen. Wenn Sie diese IAM-Rolle erstellenDirectory Service, wählen Sie die AWS verwaltete Richtlinie aus und fügen Sie AmazonRDSDirectoryServiceAccess sie ihr hinzu.

Weitere Informationen zum Erstellen von IAM-Rollen für einen Dienst finden Sie unter Erstellen einer Rolle zum Delegieren von Berechtigungen an einen AWS Dienst im IAM-Benutzerhandbuch.

Anmerkung

Die für die Windows-Authentifizierung für RDS für Microsoft SQL Server verwendete IAM-Rolle kann nicht für RDS für Db2 verwendet werden.

Alternativ können Sie Richtlinien mit den erforderlichen Berechtigungen erstellen, anstatt die verwaltete Richtlinie AmazonRDSDirectoryServiceAccess zu verwenden. In diesem Fall muss die IAM-Rolle die folgende IAM-Vertrauensrichtlinie haben:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": [ "directoryservice.rds.amazonaws.com", "rds.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }

Die Rolle muss auch über die folgende IAM-Rollenrichtlinie verfügen:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Action": [ "ds:DescribeDirectories", "ds:AuthorizeApplication", "ds:UnauthorizeApplication", "ds:GetAuthorizedApplicationDetails" ], "Effect": "Allow", "Resource": "*" } ] }

Schritt 4: Anlegen und Konfigurieren von Benutzern

Sie können das Tool Active Directory Users and Computers zum Erstellen von Benutzern verwenden. Dies ist eines der Active Directory Domain Services- und Active Directory Lightweight Directory Services-Tools. Weitere Informationen finden Sie unter Add Users and Computers to the Active Directory domain in der Microsoft-Dokumentation. In diesem Fall handelt es sich bei Benutzern um Einzelpersonen oder andere Entitäten, z. B. um ihre Computer, die Teil der Domain sind und deren Identitäten im Verzeichnis verwaltet werden.

Um Benutzer in einem Directory Service Verzeichnis zu erstellen, müssen Sie mit einer Windows basierten EC2 Amazon-Instance verbunden sein, die Mitglied des Directory Service Verzeichnisses ist. Gleichzeitig müssen Sie als Benutzer angemeldet sein, der über Berechtigungen zum Erstellen von Benutzern verfügt. Weitere Informationen finden Sie unter Erstellen eines Benutzers im AWS Directory Service Administration Guide.

Schritt 5: Erstellen Sie eine Administratorgruppe für RDS für Db2 in AWS Managed Microsoft AD

RDS für Db2 unterstützt keine Kerberos-Authentifizierung für den Hauptbenutzer oder die beiden reservierten Amazon-RDS-Benutzer rdsdb und rdsadmin. Stattdessen müssen Sie eine neue Gruppe mit dem Namen „masterdbaIn AWS Managed Microsoft AD“ erstellen. Weitere Informationen finden Sie unter Create a Group Account in Active Directory in der Microsoft-Dokumentation. Alle Benutzer, die Sie zu dieser Gruppe hinzufügen, verfügen über Hauptbenutzerberechtigungen.

Nachdem Sie die Kerberos-Authentifizierung aktiviert haben, verliert der Hauptbenutzer die Rolle masterdba. Infolgedessen kann der Hauptbenutzer nicht auf die Mitgliedschaft in der lokalen Benutzergruppe der Instance zugreifen, es sei denn, Sie deaktivieren die Kerberos-Authentifizierung. Um weiterhin die Anmeldung mit Hauptbenutzer und Passwort zu verwenden, erstellen Sie einen Benutzer auf AWS Managed Microsoft AD mit demselben Namen dem des Hauptbenutzers. Fügen Sie diesen Benutzer dann zur Gruppe masterdba hinzu.

Schritt 6: Ändern des DB-Parameters

Wenn Sie AWS Managed Microsoft AD nur verwenden möchten, fahren Sie mit fortSchritt 7: Erstellen oder Ändern einer DB-Instance von RDS für Db2.

Um die Kerberos-Authentifizierung mit Ihrem selbstverwalteten Active Directory zu aktivieren, müssen Sie den Parameter rds.active_directory_configuration in Ihrer Parametergruppe auf AWS_MANAGED_AD_WITH_TRUST festlegen. Standardmäßig ist dieser Parameter auf Nur AWS_MANAGED_AD für die Verwendung von AWS Managed Microsoft AD festgelegt.

Weitere Informationen zum Ändern von DB-Parametern finden Sie unter Ändern der Parameter in Parametergruppen.

Schritt 7: Erstellen oder Ändern einer DB-Instance von RDS für Db2

Erstellen oder ändern Sie eine DB-Instance von RDS für Db2 für die Verwendung mit Ihrem Verzeichnis. Sie können die AWS Management Console, die AWS CLI oder die RDS-API verwenden, um eine DB-Instance einem Verzeichnis zuzuordnen. Sie können dafür eine der folgenden Möglichkeiten auswählen:

Die Kerberos-Authentifizierung wird nur für DB-Instances von RDS für Db2 in einer VPC unterstützt. Die DB-Instance kann sich in derselben VPC wie das Verzeichnis oder in einer anderen VPC befinden. Die DB-Instance muss eine Sicherheitsgruppe verwenden, die eingehenden und ausgehenden Datenverkehr innerhalb der VPC des Verzeichnisses ermöglicht, damit die DB-Instance mit dem Verzeichnis kommunizieren kann.

Wenn Sie die Konsole verwenden, um eine DB-Instance zu erstellen, zu ändern oder wiederherzustellen, wählen Sie im Abschnitt Datenbank-Authentifizierung die Option Passwort- und Kerberos-Authentifizierung aus. Dann wählen Sie Verzeichnis durchsuchen. Wählen Sie das Verzeichnis aus oder wählen Sie Verzeichnis erstellen, um den Directory Service zu verwenden.

Der Abschnitt Datenbank-Authentifizierung mit der Passwort- und Kerberos-Authentifizierung, die in der Amazon-RDS-Konsole ausgewählt wurde.

Wenn Sie den verwenden AWS CLI, sind die folgenden Parameter erforderlich, damit die DB-Instance das von Ihnen erstellte Verzeichnis verwenden kann:

  • Für den Parameter --domain verwenden Sie die Domain-Kennung („d-*“-Kennung), der beim Erstellen des Verzeichnisses generiert wurde.

  • Verwenden Sie für den --domain-iam-role-name-Parameter die von Ihnen erstellte Rolle, die die verwaltete IAM-Richtlinie AmazonRDSDirectoryServiceAccess verwendet.

Das folgende Beispiel ändert eine DB-Instance zur Verwendung eines Verzeichnisses. Ersetzen Sie im Beispiel die folgenden Platzhalter mit Ihren eigenen Werten:

  • db_instance_name— Der Name Ihrer RDS for Db2-DB-Instance.

  • directory_id— Die ID des AWS Directory Service for Microsoft Active Directory Verzeichnisses, das Sie erstellt haben.

  • role_name— Der Name der IAM-Rolle, die Sie erstellt haben.

aws rds modify-db-instance --db-instance-identifier db_instance_name --domain d-directory_id --domain-iam-role-name role_name
Wichtig

Wenn Sie eine DB-Instance zur Aktivierung der Kerberos-Authentifizierung ändern, starten Sie die DB-Instance neu, nachdem Sie die Änderung vorgenommen haben.

Schritt 8: Rufen Sie die Active Directory-Gruppen-SID ab in PowerShell

Eine Sicherheits-ID (SID) wird verwendet, um einen Sicherheitsprinzipal oder eine Sicherheitsgruppe eindeutig zu identifizieren. Wenn eine Sicherheitsgruppe oder ein Konto in Active Directory erstellt wird, weist Active Directory der Gruppe eine SID zu. Um die SID der AD-Sicherheitsgruppe aus Active Directory abzurufen, verwenden Sie das cmdlet Get-ADGroup auf einem Windows-Client-Computer, der Teil der Active-Directory-Domain ist. Der Parameter Identity gibt den Namen der Active-Directory-Gruppe an, für die Sie die SID benötigen.

Im folgenden Beispiel wird die SID der Active-Directory-Gruppe adgroup1 zurückgegeben.

C:\Users\Admin> Get-ADGroup -Identity adgroup1 | select SID SID ----------------------------------------------- S-1-5-21-3168537779-1985441202-1799118680-1612

Sie müssen diese Zuordnung für alle Gruppen generieren, die für die Datenbank relevant sind.

Schritt 9: Fügen Sie SID zu GroupName Zuordnungen zu Ihrer RDS for Db2-DB-Instance hinzu

Sie müssen die SID zu den im vorherigen Schritt erstellten GroupName Zuordnungen zu Ihrer RDS for Db2-DB-Instance hinzufügen. Rufen Sie für jede Zuordnung die folgende gespeicherte Prozedur auf. Ersetzen Sie das SID und durch Ihre group_name eigenen Informationen.

db2 connect to rdsadmin db2 "call rdsadmin.set_sid_group_mapping(?, 'SID','group_name')"

Weitere Informationen finden Sie unter rdsadmin.set_sid_group_mapping.

Weitere Informationen zum Überprüfen des Aufgabenstatus finden Sie unter rdsadmin.get_task_status.

Schritt 10: Konfigurieren eines Db2-Clients

So konfigurieren Sie einen Db2-Client
  1. Erstellen Sie eine /etc/krb5.conf-Datei (oder eine vergleichbare Datei), um auf die Domain zu verweisen.

    Anmerkung

    Erstellen Sie für Windows-Betriebssysteme eine C:\windows\krb5.ini-Datei.

  2. Stellen Sie sicher, dass der Datenverkehr zwischen dem Client-Host und fließen kann Directory Service. Verwenden Sie ein Netzwerk-Dienstprogramm wie Netcat für die folgenden Aufgaben:

    1. Überprüfen Sie den Datenverkehr über DNS für Port 53.

    2. Überprüfen Sie den Datenverkehr TCP/UDP für Port 53 und fürKerberos, einschließlich der Ports 88 und 464 für Directory Service.

  3. Stellen Sie sicher, dass der Datenverkehr zwischen dem Client-Host und der DB-Instance über den Datenbank-Port fließen kann. Sie können den Befehl db2 verwenden, um eine Verbindung herzustellen und auf die Datenbank zuzugreifen.

Das folgende Beispiel ist der Inhalt der Datei /etc/krb5.conf für: AWS Managed Microsoft AD

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