Automatyzowanie procesu generowania tokenów

Przeglądasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
Informacje

W przypadku używania SAML z interfejsem Edge API proces uzyskiwania dostępu OAuth2 i odświeżania tokenów z potwierdzenia SAML jest nazywany procesem kodu dostępu. Podczas procesu obsługi kodu dostępu używasz przeglądarki, aby uzyskać jednorazowy kod dostępu, który następnie służy do uzyskania tokenów OAuth2.

Twoje środowisko może jednak obsługiwać automatyzację w przypadku typowych zadań programistycznych, takich jak automatyzacja testów lub ciągła integracja/ciągłe wdrażanie (CI/CD). Aby zautomatyzować te zadania przy włączonym SAML, musisz mieć sposób uzyskania i odświeżenia tokenów OAuth2 bez konieczności kopiowania i wklejania kodu dostępu z przeglądarki.

Informacje o użytkownikach komputerów

Apigee Edge obsługuje użytkowników komputerów w organizacji korzystającej z SAML. Użytkownicy komputerów służą wyłącznie do automatyzacji i nie mają do nich bezpośredniego dostępu.

Użytkownik komputera może uzyskać tokeny OAuth2 bez konieczności podawania kodu dostępu. Oznacza to, że możesz całkowicie zautomatyzować proces uzyskiwania i odświeżania tokenów OAuth2 za pomocą interfejsu Edge API.

Etapy automatyzacji procesu generowania tokenów

Aby zautomatyzować proces generowania tokenów:

Step Opis
1 Tworzenie użytkownika komputera w strefie tożsamości SAML
2 Przypisywanie wymaganych ról do użytkownika komputera w organizacji Edge
3 Uzyskiwanie tokenów OAuth2 użytkowników komputera

Film: obejrzyj krótki film, aby dowiedzieć się, jak zautomatyzować dostęp do interfejsów API Apigee Edge przy użyciu danych logowania użytkownika komputera.

Zarządzanie użytkownikami komputerów w strefach tożsamości SAML

Apigee udostępnia interfejs wiersza poleceń zarządzania użytkownikami komputera do tworzenia kont użytkowników maszyn i zarządzania nimi. Instrukcje korzystania z interfejsu wiersza poleceń zarządzania użytkownikami komputera zostały opisane w kolejnych sekcjach.

Użyj interfejsu wiersza poleceń

Aby użyć interfejsu wiersza poleceń zarządzania użytkownikami komputera, najpierw pobierz i cofnij ten plik: usermgmt.tar.gz(1)

Format wywoływania interfejsu wiersza poleceń jest taki:

usermgmt_platform [command] [flags]

W tabeli poniżej znajdziesz podsumowanie obsługiwanych platform oraz odpowiadające im polecenie wywołujące interfejs wiersza poleceń zarządzania użytkownikami komputera. Pliki wykonywalne znajdują się w katalogu usermgmt.

Platforma 32-bitowa 64-bitowa
Linux usermgmt_linux_386 usermgmt_linux_amd64
Mac usermgmt_darwin_386 usermgmt_darwin_amd64
Windows usermgmt_windows_386 usermgmt_windows_amd64

W tabeli poniżej znajdziesz podsumowanie polecenia, które można określić.

Polecenie Więcej informacji
create Tworzenie użytkownika maszyny w strefie tożsamości
delete Usuwanie użytkownika maszyny ze strefy tożsamości
help Pomoc dotycząca korzystania z interfejsu wiersza poleceń
list Wyświetlanie listy wszystkich użytkowników komputera w strefie tożsamości
reset Resetowanie hasła użytkownika komputera w strefie tożsamości

Opcjonalnie możesz przekazać jedną z tych flag, aby wyświetlać pomoc dotyczącą określonego polecenia: -h lub --help

Zaloguj się w interfejsie wiersza poleceń

Gdy po raz pierwszy uruchomisz interfejs wiersza poleceń w ciągu 24 godzin, pojawi się prośba o wpisanie danych logowania na konto zoneadmin.

Enter your Apigee credentials
Username: zoneadmin-username
Password: zoneadmin-password
If your user is opted with MFA, enter MFA code. Otherwise press enter to skip.
MFA: mfa-code_or_enter_to_skip

Interfejs wiersza poleceń zarządzania użytkownikami komputera przechowuje token dostępu na komputerze lokalnym, więc wystarczy zalogować się raz na 24 godziny.

Pomoc dotycząca korzystania z interfejsu wiersza poleceń

Wyświetl informacje o wykorzystaniu interfejsu wiersza poleceń przy użyciu polecenia usermgmt_platform help. Listę obsługiwanych platform znajdziesz w artykule Używanie interfejsu wiersza poleceń.

usermgmt_platform help

Wyświetlane są te informacje pomocy:

A command-line interface (CLI) to manage machine user accounts to automate
Apigee identity zone management. Use the CLI to create, list, delete,
and reset the password for machine users.

Usage:
  usermgmt [flags]
  usermgmt [command]

Available Commands:
  create  Creates a machine users in an identity zone.
  delete  Deletes a machine users in an identity zone.
  help    Help about any command
  list    Lists the machine users in an identity zone.
  reset   Resets the password for a machine user in an identity zone.

Flags:
  -h, --help               help for usermgmt

Use "usermgmt [command] --help" for more information about a command.

Aby wyświetlić pomoc dotyczącą konkretnego polecenia, w wierszu poleceń przekaż zarówno polecenie, jak i flagę -h lub --help.

Aby na przykład uzyskać pomoc dotyczącą polecenia list:

usermgmt_platform list -h

Wyświetlane są te informacje pomocy:

Lists the machine users in an identity zone.

Usage:
  usermgmt list [flags]

Flags:
  -h, --help   help for list

Tworzenie użytkownika maszyny w strefie tożsamości

Utwórz użytkownika maszyny w strefie tożsamości przy użyciu polecenia usermgmt_platform create. Listę obsługiwanych platform znajdziesz w artykule Używanie interfejsu wiersza poleceń.

  1. Wpisz to polecenie:
    usermgmt_platform create

    Zostanie wyświetlona lista stref tożsamości:

    myzone1
    myzone2
  2. Wpisz nazwę strefy w prompcie:
    Enter a zone name: myzone1
  3. Wpisz nazwę użytkownika komputera:
    Create a Machine User
    Username: machineuser1@mycompany.com
  4. Wpisz hasło użytkownika komputera. Gdy pojawi się prośba, wpisz ponownie hasło.
    Password: password
    Re-enter password: password 

    Utworzono użytkownika.

    Created machine user machineuser1@mycompany.com

Wyświetlanie listy wszystkich użytkowników komputera w strefie tożsamości

Wyświetl listę wszystkich użytkowników maszyn w strefie tożsamości przy użyciu polecenia usermgmt_platform list. Listę obsługiwanych platform znajdziesz w artykule Używanie interfejsu wiersza poleceń.

  1. Wpisz to polecenie:
    usermgmt_platform list
    Wyświetli się lista stref tożsamości:
    myzone1
    myzone2
  2. Wpisz nazwę strefy w prompcie:
    Enter a zone name: myzone1

    Zostanie wyświetlona lista użytkowników komputerów w strefie tożsamości:

    Machine users in the zone:
    machineuser1@mycompany.com
        

Resetowanie hasła użytkownika komputera w strefie tożsamości

Zresetuj hasło użytkownika komputera w strefie tożsamości przy użyciu polecenia usermgmt_platform reset. Listę obsługiwanych platform znajdziesz w artykule Używanie interfejsu wiersza poleceń.

  1. Wpisz to polecenie:
    usermgmt_platform reset

    Zostanie wyświetlona lista stref tożsamości:

    myzone1
    myzone2
  2. Wpisz nazwę strefy w prompcie:
    Enter a zone name: myzone1
  3. Wpisz nazwę użytkownika komputera, którego hasło chcesz zresetować:
    Reset User Password
    Enter the username for the machine user
    Username: machineuser1@mycompany.com
  4. Wpisz nowe hasło użytkownika komputera. Gdy pojawi się prośba, wpisz ponownie hasło.
    Enter the new password: password
    Re-enter password: password

    Hasło zostało zresetowane.

    Reset password for machine user machineuser1@mycompany.com

Usuwanie użytkownika maszyny w strefie tożsamości

Usuń użytkownika w strefie tożsamości za pomocą polecenia usermgmt_platform delete. Listę obsługiwanych platform znajdziesz w artykule Używanie interfejsu wiersza poleceń.

  1. Wpisz to polecenie:
    usermgmt_platform delete
    Wyświetli się lista stref tożsamości:
    myzone1
    myzone2
  2. Wpisz nazwę strefy w prompcie:
    Enter a zone name: myzone1
  3. Wpisz nazwę użytkownika komputera, którego chcesz usunąć:
    Delete User
    Enter the username for the machine user
    Username: machineuser1@mycompany.com 

    Konto użytkownika komputera zostało usunięte.

    Deleted user machineuser1@mycompany.com

Przypisz wymagane role użytkownikowi komputera w organizacji Edge

Za pomocą interfejsu użytkownika dodaj użytkownika komputera do organizacji Edge obsługującej SAML i przypisz mu wymagane role (na przykład administrator organizacji) zgodnie z opisem w sekcji Dodawanie użytkowników.

Pobieranie tokenów OAuth2 użytkownika komputera

Możesz zautomatyzować proces generowania tokenów i obsługiwać buforowanie tokenów w przypadku użytkowników maszyn za pomocą narzędzi acurl(1) i get_token(1) zgodnie z opisem w sekcjach OAuth2 dla użytkowników komputerów i Użytkownicy komputerów w strefach SAML.

Aby ręcznie pobrać tokeny OAuth2 użytkownika komputera za pomocą curl:

  1. Użyj preferowanego narzędzia do kodowania adresów URL, aby zakodować nazwę użytkownika i hasło użytkownika komputera.

    Ostrzeżenie: użyj wewnętrznego narzędzia do kodowania adresów URL, aby mieć pewność, że dane logowania użytkownika komputera nie zostaną przejęte.

  2. Wygeneruj tokeny dostępu początkowego i odświeżaj, wywołując punkt końcowy tokena SAML pokazanego w tym przykładzie:
    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 \
      https://zoneName.login.apigee.com/oauth/token -s \
      -d 'grant_type=password&username=machineusername&password=machineuserpassword'

    Aby przeprowadzić autoryzację, przekaż zarezerwowane dane logowania klienta OAuth2 (ZWRnZWNsaTplZGdlY2xpc2VjcmV0) w nagłówku Authorization. Wywołanie wyświetla tokeny dostępu i odświeża dla stdout.

  3. Przekaż token dostępu do wywołania interfejsu Edge Management API jako nagłówek okaziciela:
    curl -H "Authorization: Bearer ACCESS_TOKEN" \
      https://api.enterprise.apigee.com/v1/organizations/orgName
  4. Gdy token dostępu wygaśnie, możesz go odświeżyć, wysyłając go do punktu końcowego tokena SAML, zgodnie z poniższym przykładem:
    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 \
      https://zoneName.login.apigee.com/oauth/token \
      -d 'grant_type=refresh_token&refresh_token=REFRESH_TOKEN'

(1) Prawa autorskie 2023 Google LLC
Narzędzia usermgmt, acurl i get_token są udostępniane jako „Oprogramowanie” w ramach umowy regulującej korzystanie z Google Cloud Platform, w tym Szczegółowych warunków korzystania z usługi dostępnych na stronie https://cloud.google.com/terms/service-terms.