Korzystanie z narzędzi administracyjnych i interfejsów API Edge po włączeniu SSO w Apigee

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-flow określa passcode (sygnalizuje to starszemu skryptowi, że podawany jest token).
  • oauth-token zawiera nieprzetworzony ciąg znaków JWT uzyskany z get_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-url określa adres URL SSO w Apigee. Jeśli port lub protokół zostały zmienione z 9099 i HTTP, zmodyfikuj je.
  • oauth-flow określa password_grant.
  • machineUserEmail to adres e-mail automatycznego użytkownika maszyny.
  • oauth-password okreś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-provision służy do tworzenia organizacji, środowisk i hostów wirtualnych .
  • setup.sh sł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_FLOW określa passcode (sygnalizuje, że podawany jest token).
  • OAUTH_BEARER_TOKEN zawiera nieprzetworzony ciąg znaków JWT uzyskany z get_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_URL określa adres URL SSO w Apigee.
  • OAUTH_FLOW określa password_grant.
  • OAUTH_ADMIN_PASSWORD określa hasło użytkownika maszyny.