Edge for Private Cloud w wersji 4.19.01
W przypadku używania SAML z interfejsem Edge API proces uzyskiwania dostępu OAuth2 tokeny odświeżania z potwierdzenia SAML są nazywane przepływem kodu dostępu. Dzięki kodom uzyskać w przeglądarce jednorazowy kod dostępu, a następnie użyć go do uzyskania tokenów OAuth2.
Twoje środowisko programistyczne może jednak obsługiwać automatyzację w typowych zadaniach programistycznych, takich jak automatyzacja testów czy ciągła integracja / ciągłe wdrażanie. Automatyczne tych zadań po włączeniu SAML musisz uzyskać sposób na uzyskiwanie i odświeżanie tokenów OAuth2 bez przez skopiowanie i wklejenie hasła z przeglądarki.
Edge obsługuje automatyczne generowanie tokenów przez wykorzystanie użytkowników maszyn w ramach SAML organizacji non-profit. Użytkownik komputera może uzyskiwania tokenów OAuth2 bez konieczności podawania kodu dostępu. Oznacza to, że mogą całkowicie zautomatyzować procesu uzyskiwania i odświeżania tokenów OAuth2 przy użyciu interfejsu Edge Management API.
Istnieją 2 sposoby tworzenia użytkownika komputera dla organizacji SAML:
Każdą z tych metod opisujemy w dalszej części tego artykułu.
Nie możesz utworzyć użytkownika komputera w organizacji, która nie korzysta z SAML.
Utwórz użytkownika komputera za pomocą funkcji apigee-ssoadminapi.sh
Użyj funkcji apigee-ssoadminapi.sh
narzędzia do tworzenia użytkownika komputera w organizacji SAML. Patrz sekcja Korzystanie z:
apigee-ssoadminapi.sh. Możesz utworzyć jednego użytkownika komputera, który będzie używany przez wszystkie
w Twojej organizacji. Możesz też utworzyć osobnego użytkownika komputera dla każdej z nich.
Użytkownik komputera jest tworzony i przechowywany w magazynie danych Edge, a nie w tożsamości SAML dostawcy usług. Dlatego nie odpowiadasz za utrzymanie tego użytkownika przy użyciu Edge Interfejs API do zarządzania interfejsami Ui i Edge.
Podczas tworzenia użytkownika komputera musisz podać adres e-mail i hasło. Po podczas tworzenia użytkownika komputera, przypisujesz go do co najmniej 1 organizacji.
Aby utworzyć użytkownika komputera za pomocą funkcji apigee-ssoadminapi.sh
:
- Aby utworzyć użytkownika maszyny, użyj tego polecenia
apigee-ssoadminapi.sh
:apigee-ssoadminapi.sh saml machineuser add --admin SSO_ADMIN_NAME \ --secret SSO_ADMIN_SECRET --host Edge_SSO_IP_or_DNS \ -u machine_user_email -p machine_user_password
Gdzie:
- SSO_ADMIN_NAME to nazwa użytkownika administratora zdefiniowana w
Usługa
SSO_ADMIN_NAME
w plik konfiguracji użyty do skonfigurowania modułu Edge SSO. Wartość domyślna tossoadmin
- SSO_ADMIN_SECRET to hasło administratora określone przez
SSO_ADMIN_SECRET
w pliku konfiguracyjnym.
W tym przykładzie możesz pominąć wartości dla
--port
oraz--ssl
, ponieważ modułapigee-sso
używa wartości domyślnej wartości 9099 dla--port
i http dla--ssl
. Jeśli instalacja nie będzie używać tych wartości domyślnych, określ je odpowiednio. - SSO_ADMIN_NAME to nazwa użytkownika administratora zdefiniowana w
Usługa
- Zaloguj się w interfejsie Edge i dodaj adres e-mail użytkownika komputera do organizacji oraz przypisz użytkownika komputera na niezbędną rolę. Zobacz Dodawanie użytkowników globalnych dla: i innych.
Tworzenie użytkownika komputera przy użyciu Edge interfejs API zarządzania
Użytkownika komputera możesz utworzyć za pomocą interfejsu Edge Management API.
apigee-ssoadminapi.sh
.
Aby utworzyć użytkownika maszyny za pomocą interfejsu API do zarządzania:
- Aby uzyskać token dla użytkownika
ssoadmin
, użyj podanego niżej poleceniacurl
, nazwa użytkownika konta administratora organizacjiapigee-sso
:curl "http://Edge_SSO_IP_DNS:9099/oauth/token" -i -X POST \ -H 'Accept: application/json' / -H 'Content-Type: application/x-www-form-urlencoded' \ -d "response_type=token" -d "grant_type=client_credentials" \ --data-urlencode "client_secret=SSO_ADMIN_SECRET" \ --data-urlencode "client_id=ssoadmin"
Gdzie SSO_ADMIN_SECRET to hasło administratora ustawione podczas instalacji
apigee-sso
zgodnie z właściwościąSSO_ADMIN_SECRET
w tagu .To polecenie wyświetla token potrzebny do wykonania następnego wywołania.
- Za pomocą tego polecenia
curl
utwórz użytkownika maszyny i przekaż mu token otrzymane w poprzednim kroku:curl "http://edge_sso_IP_DNS:9099/Users" -i -X POST \ -H "Accept: application/json" -H "Content-Type: application/json" \ -d '{"userName" : "machine_user_email", "name" : {"formatted":"DevOps", "familyName" : "last_name", "givenName" : "first_name"}, "emails" : [ {"value" : "machine_user_email", "primary" : true } ], "active" : true, "verified" : true, "password" : "machine_user_password" }' \ -H "Authorization: Bearer token"
W kolejnych krokach będziesz potrzebować hasła użytkownika komputera.
- Zaloguj się w interfejsie Edge.
- Dodaj adres e-mail użytkownika komputera do organizacji i przypisz go do rolę niezbędną. Patrz sekcja Dodawanie na całym świecie.
Uzyskiwanie i odświeżanie tokenów użytkownika maszyny
Używanie interfejsu Edge API do uzyskiwania i odświeżania tokenów OAuth2 danych logowania, a nie kodu dostępu.
Aby uzyskać tokeny OAuth2 dla użytkownika komputera:
- Aby wygenerować token początkowego dostępu i odświeżania, użyj tego wywołania interfejsu API:
curl -H "Content-Type: application/x-www-form-urlencoded;charset=utf-8" \ -H "accept: application/json;charset=utf-8" \ -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \ http://Edge_SSO_IP_DNS:9099/oauth/token -s \ -d 'grant_type=password&username=m_user_email&password=m_user_password'
Zapisz tokeny na później.
- Przekaż token dostępu do wywołania interfejsu Edge Management API jako nagłówek Bearer:
curl -H "Authorization: Bearer access_token" \ http://MS_IP_DNS:8080/v1/organizations/org_name
Gdzie org_name to nazwa organizacji zawierającej użytkownika komputera.
- Aby później odświeżyć token dostępu, użyj następującego wywołania zawierającego odświeżenie
token:
curl -H "Content-Type:application/x-www-form-urlencoded;charset=utf-8" \ -H "Accept: application/json;charset=utf-8" \ -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \ http://edge_sso_IP_DNS:9099/oauth/token \ -d 'grant_type=refresh_token&refresh_token=refreshToken'