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-Cluster von Aurora MySQL
Verwenden Sie AWS Managed Microsoft AD, die Kerberos-Authentifizierung für einen DB-Cluster von Aurora MySQL einzurichten. Um die Kerberos-Authentifizierung einzurichten, führen Sie die folgenden Schritte aus.
Themen
- Schritt 1: Erstellen eines Verzeichnisses mit AWS Managed Microsoft AD
- Schritt 2: (Optional) Erstellen einer Vertrauensstellung für ein On-Premise-Active-Directory
- Schritt 3: Erstellen einer IAM-Rolle zur Verwendung durch Amazon Aurora
- Schritt 4: Anlegen und Konfigurieren von Benutzern
- Schritt 5: Erstellen oder Ändern eines DB-Clusters von Aurora MySQL
- Schritt 6: Erstellen von Aurora-MySQL-Benutzern, die die Kerberos-Authentifizierung verwenden
- Schritt 7: Konfigurieren eines MySQL-Clients
- Schritt 8: (Optional) Konfigurieren eines Benutzernamenvergleichs ohne Berücksichtigung der Groß-/Kleinschreibung
Schritt 1: Erstellen eines Verzeichnisses mit AWS Managed Microsoft AD
AWS Directory Service erstellt ein vollständig verwaltetes Active Directory in der AWS Cloud. Wenn Sie ein AWS Managed Microsoft AD-Verzeichnis erstellen, erstellt AWS Directory Service zwei Domänencontroller und DNS-Server (Domain Name System) in Ihrem Namen. Die Verzeichnisserver werden in verschiedenen Subnetzen in einer VPC erstellt. Diese Redundanz trägt dazu bei, dass Ihr Verzeichnis auch im Fehlerfall erreichbar bleibt.
Wenn Sie ein AWS Managed Microsoft AD-Verzeichnis erstellen, führt AWS Directory Service die folgenden Aufgaben in Ihrem Namen aus:
-
Einrichten eines Active Directory innerhalb der VPC.
-
Erstellt ein Konto für den Verzeichnisadministrator mit dem Benutzernamen
Admin
und dem angegebenen Passwort. Mit diesem Konto verwalten Sie das Verzeichnis.Anmerkung
Stellen Sie sicher, dass Sie dieses Passwort speichern. AWS Directory Service speichert es nicht. Sie können es zurücksetzen, aber Sie können es nicht abrufen.
-
Erstellt eine Sicherheitsgruppe für die Verzeichniscontroller.
Wenn Sie AWS Managed Microsoft AD starten, erstellt AWS 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. Sie befindet sich im Stammverzeichnis der Domain, das sich im Besitz und Verwaltungsbereich von AWS befindet.
Das Admin
-Konto, das mit Ihrem AWS Managed Microsoft AD-Verzeichnis erstellt wurde, hat Berechtigungen für die häufigsten administrativen Aktivitäten für Ihre OU, einschließlich:
-
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 weiterer OUs und Container
-
Delegieren von Befugnissen
-
Wiederherstellen von gelöschten Objekten aus dem Active Directory-Papierkorb
-
Ausführen von AD- und DNS-Windows- PowerShell Modulen auf dem Active Directory Web 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
So erstellen Sie ein Verzeichnisses mit AWS Managed Microsoft AD
-
Melden Sie sich bei der AWS Management Console an und öffnen Sie die AWS Directory Service-Konsole unter https://console.aws.amazon.com/directoryservicev2/
. -
Wählen Sie im Navigationsbereich Directories (Verzeichnisse) aus. Wählen Sie denn Set up Directory (Verzeichnis einrichten) aus.
-
Wählen Sie AWS Managed Microsoft AD aus. AWS Managed Microsoft AD ist die einzige Option, die Sie derzeit mit Amazon RDS verwenden können.
-
Geben Sie die folgenden Informationen ein:
- DNS-Name des Verzeichnisses
-
Den vollständig qualifizierten Namen für das Verzeichnis, z. B.
corp.example.com
. - NetBIOS-Name des Verzeichnisses
-
Die kurzen Namen für das Verzeichnis, z. B.
CORP
. - Verzeichnisbeschreibung
-
(Optional) Eine Beschreibung für das Verzeichnis.
- 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 das 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
-
Das wiederholte Administrator-Passwort.
-
Wählen Sie Weiter aus.
-
Geben Sie die folgenden Informationen in den Abschnitt Networking ein. Wählen Sie dann Next (Weiter) aus:
- VPC
-
Die VPC für das Verzeichnis. Erstellen Sie den DB-Cluster von Aurora MySQL in derselben VPC.
- Subnetze
-
Subnetze für die Verzeichnisserver. Die beiden Subnetze müssen zu verschiedenen Availability-Zonen gehören.
-
Prüfen Sie die Verzeichnisinformationen und nehmen Sie ggf. Änderungen vor. Wenn die Informationen richtig sind, wählen Sie Create directory (Verzeichnis erstellen).
Es dauert einige Minuten, bis das Verzeichnis erstellt wird. Wenn es erfolgreich erstellt wurde, ändert sich der Wert Status in Active (Aktiv).
Um Informationen über Ihr Verzeichnis anzuzeigen, wählen Sie den Verzeichnisnamen in der Verzeichnisliste aus. Notieren Sie sich den Wert Verzeichnis-ID. Sie benötigen diesen Wert, wenn Sie Ihren DB-Cluster von Aurora MySQL erstellen oder ändern.
Schritt 2: (Optional) Erstellen einer Vertrauensstellung für ein On-Premise-Active-Directory
Wenn Sie Ihr eigenes lokales Microsoft Active Directory nicht verwenden möchten, fahren Sie mit for Schritt 3: Erstellen einer IAM-Rolle zur Verwendung durch Amazon Aurora.
Um die Kerberos-Authentifizierung mit Ihrem lokalen Active Directory zu verwenden, müssen Sie mittels Gesamtstruktur-Vertrauensstellung eine vertrauenswürdige Domain-Beziehung zwischen Ihrem lokalen Microsoft Active Directory und dem AWS Managed Microsoft AD-Verzeichnis (erstellt in Schritt 1: Erstellen eines Verzeichnisses mit AWS Managed Microsoft AD) erstellen. Die Vertrauensstellung kann einseitig erfolgen, wobei das AWS Managed Microsoft AD-Verzeichnis dem lokalen Microsoft Active Directory vertraut. Die Vertrauensstellung kann auch bidirektional erfolgen, wobei beide Active Directories einander vertrauen. Weitere Informationen zur Einrichtung einer gesamtstrukturbasierten Vertrauensstellung mit AWS Directory Service finden Sie unter Wann sollte eine Vertrauensstellung erstellt werden im AWS Directory Service-Administrationshandbuch.
Anmerkung
Verwendung eines lokalen Microsoft Active Directory:
-
Windows-Clients müssen eine Verbindung mithilfe des Domänennamens des AWS Directory Service auf dem Endpunkt statt rds.amazonaws.com herstellen. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit Aurora MySQL mit Kerberos-Authentifizierung.
-
Windows-Clients können keine Verbindung über benutzerdefinierten Aurora-Endpunkte herstellen. Weitere Informationen hierzu finden Sie unter Amazon Aurora Aurora-Endpunktverbindungen.
-
-
Windows-Clients können sich nur über Instance- oder Cluster-Endpunkte in der primären AWS-Region der globalen Datenbank verbinden.
-
Windows-Clients können sich nicht über Cluster-Endpunkte in sekundären AWS-Regionen verbinden.
-
Stellen Sie sicher, dass der lokale Microsoft Active Directory-Domänenname ein DNS-Suffix-Routing enthält, das der neu erstellten Vertrauensstellung entspricht. Im folgenden Screenshot wird ein Beispiel gezeigt.
Schritt 3: Erstellen einer IAM-Rolle zur Verwendung durch Amazon Aurora
Damit Amazon Aurora AWS Directory Service für Sie aufrufen kann, ist eine AWS Identity and Access Management (IAM)-Rolle erforderlich, die die verwaltete IAM-Richtlinie AmazonRDSDirectoryServiceAccess
verwendet. Diese Rolle ermöglicht es Aurora, Aufrufe an AWS Directory Service durchzuführen.
Wenn Sie einen DB-Cluster mit der AWS Management Console erstellen und über die Berechtigung iam:CreateRole
verfügen, erstellt die Konsole diese Rolle automatisch. 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 erstellen, wählen Sie Directory Service
, und hängen die von AWS verwaltete Richtlinie AmazonRDSDirectoryServiceAccess
an.
Weitere Informationen über das Erstellen von IAM-Rollen für einen Service finden Sie unter Erstellen einer Rolle zum Delegieren von Berechtigungen an einen AWS-Service im IAM-Benutzerhandbuch.
Optional können Sie Richtlinien mit den erforderlichen Berechtigungen erstellen, anstatt die verwaltete IAM-Richtlinie zu verwende AmazonRDSDirectoryServiceAccess
. In diesem Fall muss die IAM-Rolle die folgende IAM-Vertrauensrichtlinie haben.
{ "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.
{ "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 Benutzer mit dem Tool "Active Directory-Benutzer und -Computer" erstellen. Dieses Tool ist Teil der Tools Active Directory Domain Services und Active Directory Lightweight Directory Services. „Benutzer“ sind Einzelpersonen oder Entitäten, die Zugriff auf Ihr Verzeichnis haben.
Wenn Sie Benutzer in einem AWS Directory Service-Verzeichnis erstellen möchten, verwenden Sie eine On-Premises oder Amazon-EC2-Instance auf der Basis von Microsoft Windows, die mit Ihrem AWS Directory Service-Verzeichnis verbunden ist. Gleichzeitig müssen Sie bei der Instance als Benutzer angemeldet sein, der über Berechtigungen zum Erstellen von Benutzern verfügt. Weitere Informationen finden Sie unter Verwalten von Benutzern und GruppenAWS Managed Microsoft AD imAWS Directory-Service-Administrationshandbuch.
Schritt 5: Erstellen oder Ändern eines DB-Clusters von Aurora MySQL
Erstellen oder ändern Sie einen DB-Cluster von Aurora MySQL zur Verwendung mit Ihrem Verzeichnis. Sie können die Konsole, AWS CLI oder RDS-API verwenden, um einen DB-Cluster einem Verzeichnis zuzuordnen. Sie können diese Aufgabe mit einer der folgenden Methoden durchführen:
-
Erstellen Sie einen neuen Aurora MySQL-DB-Cluster mithilfe der Konsole, des create-db-cluster CLI-Befehls oder der RDS-API-Operation CreateDBCluster.
Anweisungen finden Sie unter Erstellen eines Amazon Aurora-DB Clusters.
-
Ändern Sie einen vorhandenen Aurora MySQL-DB-Cluster mithilfe der Konsole, des modify-db-cluster CLI-Befehls oder der ModifyDBCluster-RDS-API-Operation.
Anweisungen finden Sie unter Ändern eines Amazon Aurora-DB-Clusters.
-
Stellen Sie einen DB-Cluster von Aurora MySQL aus einem DB-Snapshot mithilfe der Konsole, des CLI-Befehls restore-db-cluster-from-snapshot oder der RestoreDBClusterFromSnapshot.
Anweisungen finden Sie unter Wiederherstellen aus einem DB-Cluster-Snapshot.
-
Stellen Sie einen DB-Cluster von Aurora MySQL point-in-time mithilfe der Konsole, des CLI-Befehls restore-db-cluster-to-point-in-time oder der RDS-API-Operation RestoreDBClusterToPointInTime in einem wieder her.
Anweisungen finden Sie unter Wiederherstellen eines DB-Clusters zu einer bestimmten Zeit.
Die Kerberos-Authentifizierung wird nur für DB-Cluster von Aurora MySQL in einer VPC unterstützt. Der DB-Cluster kann sich in derselben VPC wie das Verzeichnis oder in einer anderen VPC befinden. Die VPC des DB-Clusters muss über eine VPC-Sicherheitsgruppe verfügen, die ausgehende Kommunikation mit Ihrem Verzeichnis zulässt.
Wenn Sie die Konsole zum Erstellen, Ändern oder Wiederherstellen eines DB-Clusters verwenden, wählen Sie Kerberos-Authentifizierung im Datenbank-Authentifizierung-Abschnitt. Wählen Sie Verzeichnis durchsuchen und dann das Verzeichnis aus, oder klicken Sie auf Neues Verzeichnis erstellen.
Wenn Sie die AWS CLI oder die RDS-API verwenden, verknüpfen Sie einen DB-Cluster mit einem Verzeichnis. Die folgenden Parameter sind erforderlich, damit der DB-Cluster das von Ihnen erstellte Domain-Verzeichnis verwendet:
-
Für den
--domain
-Parameter verwenden Sie den Domänenbezeichner („d-*“-Bezeichner), 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-RichtlinieAmazonRDSDirectoryServiceAccess
verwendet.
Beispielsweise ändert der folgende CLI-Befehl einen DB-Cluster so, dass er ein Verzeichnis verwendet.
Für Linux, macOSoder Unix:
aws rds modify-db-cluster \ --db-cluster-identifier
mydbcluster
\ --domain d-ID
\ --domain-iam-role-namerole-name
Windows:
aws rds modify-db-cluster ^ --db-cluster-identifier
mydbcluster
^ --domain d-ID
^ --domain-iam-role-namerole-name
Wichtig
Wenn Sie einen DB-Cluster ändern, um die Kerberos-Authentifizierung zu aktivieren, starten Sie die Reader-DB-Instances neu, nachdem Sie die Änderung vorgenommen haben.
Schritt 6: Erstellen von Aurora-MySQL-Benutzern, die die Kerberos-Authentifizierung verwenden
Der DB-Cluster ist der AWS Managed Microsoft AD-Domain beigetreten. Auf diese Weise können Sie Aurora-MySQL-Benutzer aus den Active-Directory-Benutzern Ihrer Domain bereitstellen. Die Datenbankberechtigungen werden durch Standardberechtigungen von Aurora MySQL verwaltet, die diesen Benutzern gewährt und entzogen werden.
Sie können einem Active-Directory-Benutzer erlauben, sich bei Aurora MySQL zu authentifizieren. Dazu verwenden Sie zunächst die Hauptbenutzer-Anmeldeinformationen von Amazon RDS, um sich mit der DB-Instance von Aurora MySQL sowie mit jedem anderen DB-Cluster zu verbinden. Nachdem Sie angemeldet sind, erstellen Sie einen extern authentifizierten Benutzer mit Kerberos-Authentifizierung in Aurora MySQL wie folgt:
CREATE USER
user_name
@'host_name
' IDENTIFIED WITH 'authentication_kerberos' BY 'realm_name
';
-
Ersetzen Sie
durch den Benutzernamen. Benutzer (sowohl Menschen als auch Anwendungen) aus Ihrer Domain können sich nun über einen der Domain beigetretenen Client per Kerberos-Authentifizierung mit dem DB-Cluster verbinden.user_name
-
Ersetzen Sie
durch den Hostnamen. Sie könnenhost_name
%
als Platzhalter verwenden. Sie können auch bestimmte IP-Adressen für den Hostnamen verwenden. -
Ersetzen Sie
realm_name
durch den Verzeichnisbereichsnamen der Domain. Der Bereichsname entspricht normalerweise dem DNS-Domain-Namen in Großbuchstaben, z. B.CORP.EXAMPLE.COM
. Ein Bereich ist eine Gruppe von Systemen, die dasselbe Kerberos Key Distribution Center verwenden.
Im folgenden Beispiel wird ein Datenbankbenutzer mit dem Namen Admin
erstellt, der sich gegenüber dem Active Directory mit dem Bereichsnamen MYSQL.LOCAL
authentifiziert.
CREATE USER Admin@'%' IDENTIFIED WITH 'authentication_kerberos' BY 'MYSQL.LOCAL';
Ändern einer vorhandenen Aurora-MySQL-Anmeldung
Sie können auch eine vorhandene Aurora-MySQL-Anmeldung ändern, um die Kerberos-Authentifizierung zu verwenden. Nutzen Sie dazu die folgende Syntax:
ALTER USER
user_name
IDENTIFIED WITH 'authentication_kerberos' BY 'realm_name
';
Schritt 7: Konfigurieren eines MySQL-Clients
Gehen Sie folgendermaßen vor, um einen MySQL-Client zu konfigurieren:
-
Erstellen Sie eine
krb5.conf
-Datei (oder eine vergleichbare Datei), um auf die Domain zu verweisen. -
Stellen Sie sicher, dass der Datenverkehr zwischen dem Client-Host und fließen kan AWS Directory Service. Verwenden Sie ein Netzwerk-Dienstprogramm wie Netcat für die folgenden Aufgaben:
-
Überprüfen Sie den Datenverkehr über DNS für Port 53.
-
Überprüfen Sie den Datenverkehr über TCP/UDP an Port 53 und für Kerberos (Ports 88 und 464 für AWS Directory Service.
-
-
Stellen Sie sicher, dass der Datenverkehr zwischen dem Client-Host und der DB-Instance über den Datenbank-Port fließen kann. Verwenden Sie beispielsweise
mysql
, um eine Verbindung herzustellen und auf die Datenbank zuzugreifen.
Im Folgenden finden Sie Beispielinhalte der Datei 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
Nachfolgend ist ein Beispiel für den Inhalt von krb5.conf
für ein On-Premises Microsoft Active Directory aufgeführt.
[libdefaults] default_realm = EXAMPLE.COM [realms] EXAMPLE.COM = { kdc = example.com admin_server = example.com } ONPREM.COM = { kdc = onprem.com admin_server = onprem.com } [domain_realm] .example.com = EXAMPLE.COM example.com = EXAMPLE.COM .onprem.com = ONPREM.COM onprem.com = ONPREM.COM .rds.amazonaws.com = EXAMPLE.COM .amazonaws.com.rproxy.goskope.com.cn = EXAMPLE.COM .amazon.com = EXAMPLE.COM
Schritt 8: (Optional) Konfigurieren eines Benutzernamenvergleichs ohne Berücksichtigung der Groß-/Kleinschreibung
Standardmäßig muss die Groß-/Kleinschreibung des MySQL-Datenbankbenutzernamens mit der Groß-/Kleinschreibung der Active-Directory-Anmeldung übereinstimmen. Mit dem Plug-in authentication_kerberos
können Sie jetzt jedoch den Benutzernamenvergleich ohne Berücksichtigung der Groß-/Kleinschreibung verwenden. Setzen Sie dazu den Parameter authentication_kerberos_caseins_cmp
des DB-Clusters auf true
.
So verwenden Sie den Benutzernamenvergleich ohne Berücksichtigung der Groß-/Kleinschreibung
-
Erstellen Sie eine benutzerdefinierte DB-Cluster-Parametergruppe. Folgen Sie den Verfahren in Eine DB-Cluster-Parametergruppe in Amazon Aurora erstellen.
-
Bearbeiten Sie die neue Parametergruppe, um den Wert für
authentication_kerberos_caseins_cmp
auftrue
zu setzen. Folgen Sie den Verfahren in Ändern von Parametern in einer DB-Cluster-Parametergruppe in Amazon Aurora. -
Ordnen Sie die DB-Clusterparametergruppe dem DB-Cluster von Aurora MySQL zu. Folgen Sie den Verfahren in Zuordnen einer DB-Cluster-Parametergruppe zu einem DB-Cluster in Amazon Aurora.
-
Starten Sie den DB-Cluster neu.