Konfigurieren Sie externe Verzeichnisdienste für ONTAP S3-Zugriff
Ab ONTAP 9.14.1 sind Services für externe Verzeichnisse in ONTAP S3 Objekt-Storage integriert. Diese Integration vereinfacht die Benutzer- und Zugriffsverwaltung durch externe Verzeichnisdienste.
Sie können Benutzergruppen, die zu einem externen Verzeichnisdienst gehören, mit Zugriff auf Ihre ONTAP Objekt-Storage-Umgebung versehen. Lightweight Directory Access Protocol (LDAP) ist eine Schnittstelle zur Kommunikation mit Verzeichnisdiensten wie Active Directory, die eine Datenbank und Dienste für Identitäts- und Zugriffsmanagement (IAM) bereitstellen. Für den Zugriff müssen Sie LDAP-Gruppen in Ihrer ONTAP S3-Umgebung konfigurieren. Nachdem Sie den Zugriff konfiguriert haben, haben die Gruppenmitglieder Berechtigungen für ONTAP S3 Buckets. Informationen zu LDAP finden Sie unter "Erfahren Sie mehr über die Verwendung von LDAP-Namensdiensten auf ONTAP NFS SVMs".
Sie können auch Active Directory-Benutzergruppen für den schnellen Bindungsmodus konfigurieren, sodass die Anmeldeinformationen von Benutzern validiert und S3-Anwendungen von Drittanbietern und Open-Source-Anwendungen über LDAP-Verbindungen authentifiziert werden können.
Stellen Sie vor der Konfiguration von LDAP-Gruppen und der Aktivierung des fast-Bind-Modus für den Gruppenzugriff Folgendes sicher:
-
Es wurde eine S3-fähige Storage-VM erstellt, die einen S3-Server enthält. Siehe "Erstellung einer SVM für S3".
-
In dieser Storage-VM wurde ein Bucket erstellt. Siehe "Erstellen eines Buckets".
-
DNS ist auf der Storage-VM konfiguriert. Siehe "Konfigurieren Sie DNS-Dienste".
-
Auf der Storage-VM wird ein selbstsigniertes CA-Zertifikat (Root Certification Authority) des LDAP-Servers installiert. Siehe "Installieren Sie das selbstsignierte Root-CA-Zertifikat auf der SVM".
-
Ein LDAP-Client wird mit TLS auf der SVM konfiguriert. Siehe "Erstellen Sie LDAP-Clientkonfigurationen für den ONTAP NFS-Zugriff" und "Verknüpfen Sie LDAP-Clientkonfigurationen mit ONTAP NFS SVMs für Informationen".
Konfigurieren Sie den S3-Zugriff für LDAP
-
Geben Sie LDAP als Name Service-Datenbank der SVM für die Gruppe und Passwort für LDAP an:
ns-switch modify -vserver <vserver-name> -database group -sources files,ldap ns-switch modify -vserver <vserver-name> -database passwd -sources files,ldap
Weitere Informationen zum Befehl Link:https://docs.NetApp.com/US-en/ONTAP-cli/vserver-services-name-service-ns-switch-modify.html^] finden[
vserver services name-service ns-switch modify
Sie in der ONTAP-Befehlsreferenz. -
Erstellen Sie eine Objektspeicher-Bucket-Policy-Anweisung mit der
principal
Einstellung auf die LDAP-Gruppe, der Sie Zugriff gewähren möchten:object-store-server bucket policy statement create -bucket <bucket-name> -effect allow -principal nasgroup/<ldap-group-name> -resource <bucket-name>, <bucket-name>/*
Beispiel: Im folgenden Beispiel wird eine Bucket Policy-Anweisung für erstellt
buck1
. Die Richtlinie ermöglicht den Zugriff der LDAP-Gruppegroup1
auf die Ressource (Bucket und deren Objekte)buck1
.vserver object-store-server bucket policy add-statement -bucket buck1 -effect allow -action GetObject,PutObject,DeleteObject,ListBucket,GetBucketAcl,GetObjectAcl,ListBucketMultipartUploads,ListMultipartUploadParts, ListBucketVersions,GetObjectTagging,PutObjectTagging,DeleteObjectTagging,GetBucketVersioning,PutBucketVersioning -principal nasgroup/group1 -resource buck1, buck1/*
-
Vergewissern Sie sich, dass ein Benutzer der LDAP-Gruppe
group1
S3-Vorgänge vom S3-Client ausführen kann.
Verwenden Sie für die Authentifizierung den LDAP-F.A.S.T. Bind-Modus
-
Geben Sie LDAP als Name Service-Datenbank der SVM für die Gruppe und Passwort für LDAP an:
ns-switch modify -vserver <vserver-name> -database group -sources files,ldap ns-switch modify -vserver <vserver-name> -database passwd -sources files,ldap
Weitere Informationen zum Befehl Link:https://docs.NetApp.com/US-en/ONTAP-cli/vserver-services-name-service-ns-switch-modify.html^] finden[
vserver services name-service ns-switch modify
Sie in der ONTAP-Befehlsreferenz. -
Stellen Sie sicher, dass für einen LDAP-Benutzer, der auf den S3-Bucket zugreift, in den Bucket-Richtlinien definierte Berechtigungen gelten. Weitere Informationen finden Sie unter "Ändern einer Bucket-Richtlinie".
-
Überprüfen Sie, ob ein Benutzer aus der LDAP-Gruppe die folgenden Vorgänge ausführen kann:
-
Konfigurieren Sie den Zugriffsschlüssel auf dem S3-Client in diesem Format:
"NTAPFASTBIND" + base64-encode(user-name:password)
Beispiel:"NTAPFASTBIND"
+ base64-encode(ldapuser:password), was dazu führt
NTAPFASTBINDbGRhcHVzZXI6cGFzc3dvcmQ=
Der S3-Client fordert möglicherweise einen geheimen Schlüssel an. In Ermangelung eines geheimen Schlüssels kann ein Passwort mit mindestens 16 Zeichen eingegeben werden. -
Führen Sie grundlegende S3-Vorgänge über den S3-Client durch, für den der Benutzer Berechtigungen besitzt.
-
Base64-Anmeldeinformationen
Die Standardkonfiguration von ONTAP S3 schließt HTTP aus und verwendet ausschließlich HTTPS und eine TLS-Verbindung (Transport Layer Security). ONTAP kann selbstsignierte Zertifikate generieren, als Best Practice wird jedoch empfohlen, Zertifikate von einer Drittanbieter-Zertifizierungsstelle zu verwenden. Wenn Sie CA-Zertifikate verwenden, erstellen Sie eine vertrauenswürdige Beziehung zwischen Client-Anwendungen und dem ONTAP-Objektspeicher-Server.
Beachten Sie, dass Anmeldeinformationen, die mit Base64 kodiert werden, leicht decodiert werden. Mit HTTPS werden verschlüsselte Anmeldeinformationen von man-in-the-Middle-Paketabfragern nicht erfasst.
Verwenden Sie beim Erstellen vorsignierter URLs keinen LDAP-Fast-Bind-Modus zur Authentifizierung. Die Authentifizierung basiert ausschließlich auf dem Base64-Zugriffsschlüssel, der in der vorsignierten URL enthalten ist. Der Benutzername und das Passwort werden jedem angezeigt, der den Base64-Zugriffsschlüssel decodiert.
Authentifizierungsmethode ist nsswitch und LDAP ist aktiviert Beispiel
$curl -siku <user>:<user_password> -X POST https://<LIF_IP_Address>/api/protocols/s3/services/<SVM_UUID>/users -d {"comment":"<S3_user_name>", "name":<user>,"<key_time_to_live>":"PT6H3M"}'
|
Leiten Sie die API an die Cluster-Management-LIF weiter, nicht an die Daten-LIF der SVM. Wenn Sie Benutzern erlauben möchten, eigene Schlüssel zu generieren, müssen Sie ihrer Rolle HTTP-Berechtigungen hinzufügen, um Curl zu verwenden. Diese Berechtigung wird zusätzlich zu den S3-API-Berechtigungen gewährt. |
Konfigurieren Sie den S3-Zugriff für Active Directory- oder CIFS-Server
Wenn die in der Bucket-Policy-Anweisung angegebene nasgroup oder die Benutzer, die Teil der nasgroup sind, keine UID und keine GID festgelegt haben, schlagen die Suchen fehl, wenn diese Attribute nicht gefunden werden. Active Directory verwendet SID, nicht UID. Wenn SID-Einträge nicht der UID zugeordnet werden können, müssen die erforderlichen Daten an ONTAP übertragen werden.
Verwenden Sie dazu, "Erstellung von vserver Active Directory"damit sich die SVM bei Active Directory authentifizieren kann und die erforderlichen Benutzer- und Gruppeninformationen abrufen kann.
Alternativ können Sie verwenden"cifs vserver erstellen", um einen SMB-Server in einer Active Directory-Domäne zu erstellen.
Um Suchfehler zu vermeiden, empfiehlt NetApp die Verwendung vertrauenswürdiger Domänen für die Ressourcenautorisierung im UPN-Format: nasgroup/group@trusted_domain.com
Generieren Sie Schlüssel, wenn die Authentifizierungsmethode Domain ist und vertrauenswürdige Domänen in Active Directory konfiguriert sind
Verwenden Sie den s3/services/<svm_uuid>/users
Endpunkt mit Benutzern, die im UPN-Format angegeben sind. Beispiel:
$curl -siku FQDN\\user:<user_password> -X POST https://<LIF_IP_Address>/api/protocols/s3/services/<SVM_UUID>/users -d {"comment":"<S3_user_name>", "name":<user@fqdn>,"<key_time_to_live>":"PT6H3M"}'
|
Leiten Sie die API an die Cluster-Management-LIF weiter, nicht an die Daten-LIF der SVM. Wenn Sie Benutzern erlauben möchten, eigene Schlüssel zu generieren, müssen Sie ihrer Rolle HTTP-Berechtigungen hinzufügen, um Curl zu verwenden. Diese Berechtigung wird zusätzlich zu den S3-API-Berechtigungen gewährt. |
Generieren Sie Schlüssel, wenn die Authentifizierungsmethode Domain ist und keine vertrauenswürdigen Domänen vorhanden sind
Diese Aktion ist möglich, wenn LDAP deaktiviert ist oder nicht-POSIX-Benutzer keine UID und GID konfiguriert haben. Beispiel:
$curl -siku FQDN\\user:<user_password> -X POST https://<LIF_IP_Address>/api/protocols/s3/services/<SVM_UUID>/users -d {"comment":"<S3_user_name>", "name":<user[@fqdn]>,"<key_time_to_live>":"PT6H3M"}'
|
Leiten Sie die API an die Cluster-Management-LIF weiter, nicht an die Daten-LIF der SVM. Wenn Sie Benutzern erlauben möchten, eigene Schlüssel zu generieren, müssen Sie ihrer Rolle HTTP-Berechtigungen hinzufügen, um Curl zu verwenden. Diese Berechtigung wird zusätzlich zu den S3-API-Berechtigungen gewährt. Sie müssen einem Benutzernamen nur den optionalen Domänenwert (@fqdn) hinzufügen, wenn keine vertrauenswürdigen Domänen vorhanden sind. |