W tej sekcji opisujemy, jak uruchamiać narzędzia i polecenia administratora systemu Edge po włączeniu SSO w Apigee. Wiele zadań w Edge wymaga danych logowania administratora systemu, takich jak:
- tworzenie organizacji i środowisk,
- dodawanie i usuwanie komponentów Edge,
- uruchamianie poleceń
apigee-adminapi.sh.
Gdy włączysz logowanie jednokrotne w Edge, zwykle wyłączasz uwierzytelnianie podstawowe, aby jedynym sposobem uwierzytelniania było użycie dostawcy tożsamości OIDC/SAML. Dlatego musisz się upewnić, że konto administratora systemu zostało dodane do dostawcy tożsamości lub że utworzono lokalnego użytkownika maszyny na potrzeby automatyzacji.
Wywoływanie interfejsów API zarządzania Edge jako the administrator systemu
Wiele wywołań interfejsu API Edge wymaga podania danych logowania administratora systemu. W artykule Korzystanie z SAML w interfejsie API zarządzania Edge znajdziesz
instrukcje, jak uzyskiwać i odświeżać tokeny za pomocą narzędzia get_token podczas wywoływania interfejsu API zarządzania Edge.
Korzystanie z narzędzia apigee-adminapi.sh z SSO w Apigee
Za pomocą narzędzia apigee-adminapi.sh możesz wykonywać te same zadania konfiguracyjne Edge, które wykonujesz, wywołując interfejs API zarządzania Google Analytics. Zaletą narzędzia
apigee-adminapi.sh jest to, że:
- korzysta z prostego interfejsu wiersza poleceń,
- implementuje uzupełnianie poleceń na podstawie tabulatora,
- zawiera informacje o pomocy i użytkowaniu,
- może wyświetlić odpowiednie wywołanie interfejsu API, jeśli zdecydujesz się wypróbować interfejs API.
Po włączeniu SSO w Apigee masz 2 główne sposoby przekazywania danych logowania do narzędzia apigee-adminapi.sh w zależności od tego, czy jesteś administratorem, czy używasz automatycznego skryptu.
Wszystkie opcje dowolnego polecenia apigee-adminapi.sh, w tym
opcje określania danych logowania SSO, możesz wyświetlić, używając opcji -h w poleceniu. Przykład:
apigee-adminapi.sh orgs list -h
Przekazywanie tokena okaziciela (dla administratorów)
Ponieważ zmodernizowane SSO w Apigee nie obsługuje starszego przepływu kopiowania i wklejania /passcode, administratorzy muszą używać narzędzia get_token, aby ukończyć przepływ kodu urządzenia OAuth 2.0, a następnie przekazać wynikowy token do skryptu.
Najpierw uzyskaj token:
/opt/apigee/apigee-openldap/bin/get_token -u adminEmail
Następnie użyj tokena podczas wywoływania polecenia:
apigee-adminapi.sh orgs list --sso-url http://edge_sso_IP_DNS:9099 --oauth-flow passcode \ --admin adminEmail --oauth-token token_string
Gdzie:
oauth-flowokreślapasscode(sygnalizuje to starszemu skryptowi, że podawany jest token).oauth-tokenzawiera nieprzetworzony ciąg znaków JWT uzyskany zget_token.
Przekazywanie hasła (tylko dla użytkowników maszyn)
Jeśli automatyzujesz wdrożenia infrastruktury, możesz przekazywać dane logowania bezpośrednio za pomocą przepływu password_grant. Jeśli jednak włączona jest federacja SAML/OIDC, użytkownicy-cienie nie mogą logować się za pomocą hasła, aby zapobiec obejściu MFA. Najpierw musisz utworzyć jawnego użytkownika maszyny w OpenLDAP.
apigee-adminapi.sh orgs list --sso-url http://edge_sso_IP_DNS:9099 --oauth-flow password_grant \ --admin machineUserEmail --oauth-password machineUserPassword
Gdzie:
- Opcja
sso-urlokreśla adres URL SSO w Apigee. Jeśli port lub protokół zostały zmienione z 9099 i HTTP, zmodyfikuj je. oauth-flowokreślapassword_grant.- machineUserEmail to adres e-mail automatycznego użytkownika maszyny.
oauth-passwordokreśla hasło użytkownika maszyny.
Korzystanie z narzędzi Edge z SSO w Apigee
Wiele narzędzi Edge wymaga danych logowania administratora systemu, takich jak:
apigee-provisionsłuży do tworzenia organizacji, środowisk i hostów wirtualnych .setup.shsłuży do dodawania węzłów do istniejącego systemu.- Dowolne inne narzędzie, w którym musisz określić dane logowania administratora systemu w pliku konfiguracyjnym .
Te narzędzia przyjmują jako dane wejściowe plik konfiguracyjny, który określa dane logowania administratora systemu. Zanim włączysz logowanie jednokrotne, możesz to zrobić za pomocą tych właściwości:
ADMIN_EMAIL="adminEmail" APIGEE_ADMINPW="adminPWord"
Po włączeniu SSO w Apigee musisz użyć innych właściwości, aby określić dane logowania administratora systemu.
Używanie tokena okaziciela (dla administratorów)
W przypadku wdrożeń interaktywnych przez administratorów uzyskaj token za pomocą narzędzia get_token i podaj go za pomocą właściwości OAUTH_BEARER_TOKEN:
ADMIN_EMAIL="adminEmail" SSO_LOGIN_URL="http://edge_sso_IP_DNS:9099" OAUTH_FLOW="passcode" OAUTH_BEARER_TOKEN="token_string"
Gdzie:
OAUTH_FLOWokreślapasscode(sygnalizuje, że podawany jest token).OAUTH_BEARER_TOKENzawiera nieprzetworzony ciąg znaków JWT uzyskany zget_token.
Używanie hasła (tylko dla użytkowników maszyn)
W przypadku w pełni zautomatyzowanych wdrożeń podaj dane logowania użytkownika maszyny utworzonego za pomocą przepływu password_grant:
ADMIN_EMAIL="machineUserEmail" SSO_LOGIN_URL="http://edge_sso_IP_DNS:9099" OAUTH_FLOW="password_grant" OAUTH_ADMIN_PASSWORD="machineUserPassword"
Gdzie:
SSO_LOGIN_URLokreśla adres URL SSO w Apigee.OAUTH_FLOWokreślapassword_grant.OAUTH_ADMIN_PASSWORDokreśla hasło użytkownika maszyny.