Ermöglichen Sie LDAP- oder Domänenbenutzern, ihre eigenen ONTAP S3-Zugriffsschlüssel zu generieren
Ab ONTAP 9.14.1 können Sie als ONTAP-Administrator benutzerdefinierte Rollen erstellen und sie lokalen oder Domänengruppen oder LDAP-Gruppen (Lightweight Directory Access Protocol) zuweisen, sodass die Benutzer dieser Gruppen ihren eigenen Zugriff und geheime Schlüssel für den S3-Clientzugriff generieren können.
Sie müssen für die Storage-VM einige Konfigurationsschritte durchführen, um die benutzerdefinierte Rolle zu erstellen und dem Benutzer zuzuweisen, der die API zur Schlüsselgenerierung nach dem Zugriff aktiviert.
|
Wenn LDAP deaktiviert ist, können Sie "Konfigurieren externer Verzeichnisdienste für den ONTAP S3-Zugriff" um Benutzern das Generieren von Zugriffsschlüsseln zu ermöglichen. |
Stellen Sie 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 selbstsignierte Stamm-CA-Zertifikate auf der SVM".
-
Ein LDAP-Client wird auf der Storage-VM mit aktiviertem TLS konfiguriert. Siehe "Erstellen Sie LDAP-Clientkonfigurationen für den ONTAP NFS-Zugriff".
-
Verknüpfen Sie die Client-Konfiguration mit dem Vserver. Siehe "LDAP-Clientkonfigurationen mit ONTAP NFS SVMs verknüpfen". Erfahren Sie mehr über
vserver services name-service ldap create
in der "ONTAP-Befehlsreferenz". -
Wenn Sie eine Storage-VM verwenden, erstellen Sie eine Management-Netzwerkschnittstelle (LIF) und auf der VM, und außerdem eine Service-Richtlinie für die LIF. Erfahren Sie mehr über
network interface create
undnetwork interface service-policy create
in der "ONTAP-Befehlsreferenz".
Konfigurieren Sie Benutzer für die Generierung des Zugriffsschlüssels
-
Geben Sie LDAP als Name Service Database der Speicher-VM 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
Erfahren Sie mehr über
vserver services name-service ns-switch modify
in der "ONTAP-Befehlsreferenz". -
Benutzerdefinierte Rolle mit Zugriff auf den REST-API-Endpunkt des S3-Benutzers erstellen:
security login rest-role create -vserver <vserver-name> -role <custom-role-name> -api "/api/protocols/s3/services/*/users" -access <access-type>
In diesem Beispiels3-role
wird die Rolle für Benutzer auf der Storage-VM generiertsvm-1
, denen alle Zugriffsrechte, Lesen, Erstellen und Aktualisieren gewährt werden.security login rest-role create -vserver svm-1 -role s3role -api "/api/protocols/s3/services/*/users" -access all
Erfahren Sie mehr über
security login rest-role create
in der "ONTAP-Befehlsreferenz". -
Erstellen Sie eine LDAP-Benutzergruppe mit dem
security login
und fügen Sie die neue benutzerdefinierte Rolle für den Zugriff auf den REST-API-Endpunkt des S3-Benutzers hinzu. Erfahren Sie mehr übersecurity login create
im "ONTAP-Befehlsreferenz" .security login create -user-or-group-name <ldap-group-name> -application http -authentication-method nsswitch -role <custom-role-name> -is-ns-switch-group yes
In diesem Beispiel
ldap-group-1
wird die LDAP-Gruppe in erstelltsvm-1
, und die benutzerdefinierte Rolles3role
wird ihr für den Zugriff auf den API-Endpunkt hinzugefügt, zusammen mit der Aktivierung des LDAP-Zugriffs im Modus „Fast BIND“.security login create -user-or-group-name ldap-group-1 -application http -authentication-method nsswitch -role s3role -is-ns-switch-group yes -second-authentication-method none -vserver svm-1 -is-ldap-fastbind yes
Weitere Informationen finden Sie unter "Verwenden Sie LDAP Fast Bind für die NSswitch-Authentifizierung für ONTAP NFS SVMs".
Erfahren Sie mehr über
security login create
in der "ONTAP-Befehlsreferenz".
Das Hinzufügen der benutzerdefinierten Rolle zur LDAP-Gruppe ermöglicht Benutzern in dieser Gruppe einen eingeschränkten Zugriff auf die ONTAP /api/protocols/s3/services/{svm.uuid}/users
Endpunkt. Durch Aufrufen der API können die LDAP-Gruppenbenutzer ihre eigenen Zugriffs- und Geheimschlüssel für den Zugriff auf den S3-Client generieren. Sie können die Schlüssel nur für sich selbst und nicht für andere Benutzer generieren.
-
Erstellen Sie eine benutzerdefinierte Rolle mit Zugriff auf den S3-Benutzer-REST-API-Endpunkt:
security login rest-role create -vserver <vserver-name> -role <custom-role-name> -api "/api/protocols/s3/services/*/users" -access <access-type>
In diesem Beispiel s3-role
Rolle wird für Benutzer auf der Speicher-VM generiert svm-1
, dem alle Zugriffsrechte Lesen, Erstellen und Aktualisieren gewährt werden.
security login rest-role create -vserver svm-1 -role s3role -api "/api/protocols/s3/services/*/users" -access all
Erfahren Sie mehr über security login rest-role create
in der "ONTAP-Befehlsreferenz".
-
Erstellen Sie eine Domänenbenutzergruppe mit dem
security login
und fügen Sie die neue benutzerdefinierte Rolle für den Zugriff auf den REST-API-Endpunkt des S3-Benutzers hinzu. Erfahren Sie mehr übersecurity login create
im "ONTAP-Befehlsreferenz" .security login create -vserver <vserver-name> -user-or-group-name domain\<group-name> -application http -authentication-method domain -role <custom-role-name>
In diesem Beispiel die Domänengruppe
domain\group1
entsteht insvm-1
und die benutzerdefinierte Rolles3role
wird für den Zugriff auf den API-Endpunkt hinzugefügt.security login create -user-or-group-name domain\group1 -application http -authentication-method domain -role s3role -vserver svm-1
Erfahren Sie mehr über
security login create
in der "ONTAP-Befehlsreferenz".
Das Hinzufügen der benutzerdefinierten Rolle zur Domänengruppe ermöglicht Benutzern in dieser Gruppe einen eingeschränkten Zugriff auf die ONTAP /api/protocols/s3/services/{svm.uuid}/users
Endpunkt. Durch Aufrufen der API können die Domänengruppenbenutzer ihre eigenen Zugriffs- und Geheimschlüssel für den Zugriff auf den S3-Client generieren. Sie können die Schlüssel nur für sich selbst und nicht für andere Benutzer generieren.
Generieren Sie als S3- oder LDAP-Benutzer eigene Zugriffsschlüssel
Ab ONTAP 9.14.1 können Sie eigene Zugriffs- und geheime Schlüssel für den Zugriff auf S3-Clients generieren, sofern Ihr Administrator Ihnen die Rolle zum Generieren eigener Schlüssel eingeräumt hat. Sie können Schlüssel nur für sich selbst generieren, indem Sie den folgenden ONTAP REST-API-Endpunkt verwenden.
Dieser REST-API-Aufruf verwendet die folgende Methode und den folgenden Endpunkt. Weitere Informationen zu diesem Endpunkt finden Sie in der Referenz "API-Dokumentation" .
HTTP-Methode | Pfad |
---|---|
POST |
/API/Protokolle/s3/Services/{svm.uuid}/Benutzer |
Verwenden Sie für Domänenbenutzer das folgende Format für den S3-Benutzernamen: user@fqdn
, Wo fqdn
ist der vollqualifizierte Domänenname der Domäne.
curl
--request POST \
--location "https://$FQDN_IP /api/protocols/s3/services/{svm.uuid}/users " \
--include \
--header "Accept: */*" \
--header "Authorization: Basic $BASIC_AUTH"
--data '{"name":"user1@example.com"}'
{ "records": [ { "access_key": "4KX07KF7ML8YNWY01JWG", "_links": { "next": { "href": "/api/resourcelink" }, "self": { "href": "/api/resourcelink" } }, "name": "user1@example.com", "secret_key": "<secret_key_value>" } ], "num_records": "1" }
Wenn bereits ein S3-Benutzer vorhanden ist, können Sie dessen Zugriffs- und Geheimschlüssel neu generieren. Dieser REST-API-Aufruf verwendet die folgende Methode und den folgenden Endpunkt.
HTTP-Methode | Pfad |
---|---|
PATCH |
/api/protocols/s3/services/{svm.uuid}/users/{name} |
curl
--request PATCH \
--location "https://$FQDN_IP /api/protocols/s3/services/{svm.uuid}/users/{name} " \
--include \
--header "Authorization: Basic $BASIC_AUTH" \
--data '{"regenerate_keys":"True"}'
{ "records": [ { "access_key": "DX12U609DMRVD8U30Z1M", "_links": { "self": { "href": "/api/resourcelink" } }, "name": "user1@example.com", "secret_key": "<secret_key_value>" } ], "num_records": "1" }