Einen ONTAP REST API-Aufruf mit OAuth 2.0 ausführen
Die OAuth 2.0 Implementierung in ONTAP unterstützt REST API Clientanwendungen. Ein einfacher REST API Aufruf mit curl kann verwendet werden, um mit OAuth 2.0 zu beginnen. Das folgende Beispiel ruft die ONTAP Cluster-Version ab.
Bevor Sie beginnen
Sie müssen die OAuth 2.0 Funktion für Ihren ONTAP Cluster konfigurieren und aktivieren. Dies umfasst die Definition eines Autorisierungsservers.
Schritt 1: Zugriffstoken abrufen
Sie benötigen ein Zugriffstoken, um es mit dem ONTAP REST API-Aufruf zu verwenden. Die Token-Anforderung erfolgt außerhalb von ONTAP und die genaue Vorgehensweise hängt vom Autorisierungsserver und dessen Konfiguration ab. Das Token kann über einen Webbrowser, mit einem curl-Befehl oder mithilfe einer Programmiersprache angefordert werden.
Zur Veranschaulichung ist nachfolgend ein Beispiel dafür dargestellt, wie ein Zugriffstoken von Keycloak mithilfe von curl angefordert werden kann.
curl --request POST \
--location 'https://superzap.dev.netapp.com:8443/realms/peterson/protocol/openid-connect/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'client_id=dp-client-1' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'client_secret=5iTUf9QKLGxAoYa1iR33vlD5A2xq09V7'
Das zurückgegebene Token sollte kopiert und gespeichert werden.
Schritt 2: Den REST API-Aufruf ausführen
Nachdem Sie über ein gültiges Zugriffstoken verfügen, kann mit dem Zugriffstoken und dem curl Befehl ein REST API Aufruf ausgeführt werden.
Die beiden Variablen im curl-Beispiel sind in der folgenden Tabelle beschrieben.
| Variable | Beschreibung |
|---|---|
$FQDN_IP |
Der vollqualifizierte Domainname oder die IP-Adresse des ONTAP Management-LIF. |
$ACCESS_TOKEN |
Das vom Autorisierungsserver ausgestellte OAuth 2.0 Zugriffstoken. |
Diese Variablen sind zuerst in der Bash-Shell-Umgebung festzulegen, bevor das curl-Beispiel ausgeführt wird. Im Linux-CLI kann zum Festlegen und Anzeigen der FQDN-Variable folgender Befehl eingegeben werden:
FQDN_IP=172.14.31.224 echo $FQDN_IP 172.14.31.224
Nachdem beide Variablen in Ihrer lokalen Bash-Shell definiert sind, kann der curl-Befehl kopiert und in die CLI eingefügt werden. Mit Enter werden die Variablen ersetzt und der Befehl ausgeführt.
curl --request GET \
--location "https://$FQDN_IP/api/cluster?fields=version" \
--include \
--header "Accept: */*" \
--header "Authorization: Bearer $ACCESS_TOKEN"