LDAP- oder Domänenbenutzern wird ermöglicht, eigene ONTAP S3-Zugriffsschlüssel zu generieren.
Ab ONTAP 9.14.1 können ONTAP-Administratoren benutzerdefinierte Rollen erstellen und diese lokalen oder Domänengruppen oder Lightweight Directory Access Protocol (LDAP)-Gruppen zuweisen, sodass die Benutzer, die zu diesen Gruppen gehören, ihre eigenen Zugriffs- und geheimen Schlüssel für den S3-Clientzugriff generieren können.
Auf Ihrer Storage-VM sind einige Konfigurationsschritte erforderlich, damit die benutzerdefinierte Rolle erstellt und dem Benutzer zugewiesen werden kann, der die API zur Generierung des Zugriffsschlüssels aufruft.
|
|
Wenn LDAP deaktiviert ist, besteht die Möglichkeit, "Externe Verzeichnisdienste für den ONTAP S3-Zugriff konfigurieren"Benutzern das Generieren von Zugriffsschlüsseln zu ermöglichen. |
Stellen Sie Folgendes sicher:
-
Es wurde eine S3-fähige Storage-VM mit einem S3-Server erstellt. Siehe "Eine SVM für S3 erstellen".
-
In dieser Storage-VM wurde ein Bucket erstellt. Siehe "Einen Bucket erstellen".
-
DNS ist auf der Speicher-VM konfiguriert. Siehe "DNS-Dienste konfigurieren".
-
Ein selbstsigniertes Stammzertifizierungsstellenzertifikat (CA-Zertifikat) des LDAP-Servers ist auf der Storage-VM installiert. Siehe "Selbstsignierte Root-CA-Zertifikate auf der SVM installieren".
-
Auf der Storage-VM ist ein LDAP-Client mit aktiviertem TLS konfiguriert. Siehe "LDAP-Client-Konfigurationen für ONTAP NFS-Zugriff erstellen".
-
Die Client-Konfiguration dem Vserver zuordnen. Siehe "LDAP-Client-Konfigurationen mit ONTAP NFS SVMs verknüpfen". Weitere Informationen zu
vserver services name-service ldap createfinden sich in der "ONTAP-Befehlsreferenz". -
Wenn Sie eine Datenspeicher-VM verwenden, eine Management-Netzwerkschnittstelle (LIF) auf der VM sowie eine Dienstrichtlinie für die LIF erstellen. Weitere Informationen zu
network interface createundnetwork interface service-policy createfinden sich in der "ONTAP-Befehlsreferenz".
Benutzer für die Generierung von Zugriffsschlüsseln konfigurieren
-
LDAP als Namensdienstdatenbank der Storage-VM für die Gruppe und das Passwort zu LDAP angeben:
ns-switch modify -vserver <vserver-name> -database group -sources files,ldap ns-switch modify -vserver <vserver-name> -database passwd -sources files,ldapWeitere Informationen zu
vserver services name-service ns-switch modifyfinden sich in der "ONTAP-Befehlsreferenz". -
Eine benutzerdefinierte Rolle mit Zugriff auf den S3-Benutzer-REST-API-Endpunkt erstellen:
security login rest-role create -vserver <vserver-name> -role <custom-role-name> -api "/api/protocols/s3/services/*/users" -access <access-type>In diesem Beispiel wird dies3-roleRolle für Benutzer auf der Storage-VMsvm-1generiert, 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
Weitere Informationen zu
security login rest-role createfinden sich in der "ONTAP-Befehlsreferenz". -
Eine LDAP-Benutzergruppe wird mit dem
security loginBefehl erstellt, und die neue benutzerdefinierte Rolle für den Zugriff auf den S3-User-REST-API-Endpunkt wird hinzugefügt. Weitere Informationen zusecurity login createfinden sich in der "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 yesIn diesem Beispiel wird die LDAP-Gruppe
ldap-group-1insvm-1erstellt, und die benutzerdefinierte Rolles3rolewird ihr für den Zugriff auf den API-Endpunkt hinzugefügt. Zusätzlich wird der LDAP-Zugriff im Fast-Bind-Modus aktiviert.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 sich unter "LDAP Fast Bind für die nsswitch-Authentifizierung für ONTAP NFS SVMs verwenden".
Weitere Informationen zu
security login createfinden sich in der "ONTAP-Befehlsreferenz".
Durch Hinzufügen der benutzerdefinierten Rolle zur LDAP-Gruppe erhalten Benutzer dieser Gruppe eingeschränkten Zugriff auf den ONTAP /api/protocols/s3/services/{svm.uuid}/users Endpoint. Durch Aufruf der API können die Benutzer der LDAP-Gruppe ihre eigenen Zugriffs- und geheimen Schlüssel zum 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 einer benutzerdefinierten 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 wird die s3-role Rolle für Benutzer auf der Storage-VM svm-1 generiert, 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
Weitere Informationen zu security login rest-role create finden sich in der "ONTAP-Befehlsreferenz".
-
Eine Domänenbenutzergruppe wird mit dem
security login-Befehl erstellt, und die neue benutzerdefinierte Rolle für den Zugriff auf den S3 User REST API Endpoint wird hinzugefügt. Weitere Informationen zusecurity login createfinden sich in der "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 wird die Domänengruppe
domain\group1insvm-1erstellt, und die benutzerdefinierte Rolles3rolewird ihr 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
Weitere Informationen zu
security login createfinden sich in der "ONTAP-Befehlsreferenz".
Durch Hinzufügen der benutzerdefinierten Rolle zur Domänengruppe erhalten Benutzer dieser Gruppe eingeschränkten Zugriff auf den ONTAP /api/protocols/s3/services/{svm.uuid}/users Endpoint. Durch Aufruf der API können die Benutzer der Domänengruppe ihre eigenen Zugriffs- und geheimen Schlüssel zum Zugriff auf den S3-Client generieren. Sie können die Schlüssel nur für sich selbst und nicht für andere Benutzer generieren.
Als S3- oder LDAP-Benutzer eigene Zugriffsschlüssel generieren
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 zugewiesen hat. Schlüssel können ausschließlich für Sie selbst über den folgenden ONTAP REST API-Endpunkt generiert werden.
Dieser REST-API-Aufruf verwendet die folgende Methode und den folgenden Endpunkt. Weitere Informationen zu diesem Endpunkt sind in der Referenz "API-Dokumentation" zu finden.
| HTTP-Methode | Pfad |
|---|---|
POST |
/api/protocols/s3/services/{svm.uuid}/users |
Für Domänenbenutzer wird folgendes Format für den S3-Benutzernamen verwendet: user@fqdn, wobei fqdn die vollqualifizierte Domain der Domäne ist.
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 ein S3-Benutzer bereits existiert, können dessen Zugriffs- und geheimen Schlüssel neu generiert werden. 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"
}