Automatyzowanie procesu generowania tokenów

Przeglądasz dokumentację Apigee Edge.
Przejdź do Dokumentacja Apigee X.
informacje.

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 hasła. Za pomocą kodu dostępu musisz użyć przeglądarki, aby uzyskać jednorazowy kod dostępu, a następnie użyć go do uzyskania protokołu OAuth2. tokeny.

Twoje środowisko może jednak obsługiwać automatyzację w przypadku typowych zadań 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.

Informacje o użytkownikach komputerów

Apigee Edge obsługuje użytkowników maszyny w organizacji z włączoną obsługą SAML. Użytkownicy maszyn są wykorzystywani wyłącznie do automatyzacji i nie mają bezpośredniego dostępu do człowieka.

Użytkownik komputera może uzyskiwać tokeny OAuth2 bez konieczności podawania kodu dostępu. Oznacza to, że można całkowicie zautomatyzować proces uzyskiwanie i odświeżanie tokenów OAuth2 przy użyciu interfejsu Edge API.

Etapy automatyzacji procesu generowania tokenów

Aby zautomatyzować proces generowania tokenów:

Krok Opis
1 Tworzenie użytkownika maszyny w strefie tożsamości SAML
2 Przypisywanie wymaganych ról użytkownikowi 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 Apigee Edge API za pomocą danych logowania użytkownika maszyny.

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

Apigee udostępnia interfejs wiersza poleceń (CLI) do zarządzania użytkownikami maszyn, który umożliwia tworzenie kont użytkowników maszyn i zarządzanie nimi. Instrukcje korzystania z interfejsu wiersza poleceń zarządzania użytkownikami maszyn zostały opisane w kolejnych sekcjach.

Używanie interfejsu wiersza poleceń

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

Format wywoływania interfejsu wiersza poleceń jest następujący:

usermgmt_platform [command] [flags]

W tabeli poniżej znajdziesz podsumowanie obsługiwanych platform i odpowiadające im polecenie wywołujące interfejs wiersza poleceń zarządzania użytkownikiem 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 poleceń, które można określić.

Polecenie Więcej informacji
create Tworzenie użytkownika komputera w strefie tożsamości
delete Usuwanie użytkownika komputera ze strefy tożsamości
help Pomoc w korzystaniu z interfejsu wiersza poleceń
list Wyświetlanie listy wszystkich użytkowników maszyny 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świetlić pomoc dotyczącą określonego polecenia: -h lub --help.

Logowanie się w interfejsie wiersza poleceń

Gdy po raz pierwszy uruchomisz interfejs wiersza poleceń w ciągu 24 godzin, pojawi się prośba o podanie danych logowania do konta 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 interfejsu wiersza poleceń

Aby wyświetlić informacje o wykorzystaniu interfejsu wiersza poleceń, użyj polecenia usermgmt_platform pomocy. Listę obsługiwanych platform znajdziesz w artykule Korzystanie z interfejsu wiersza poleceń.

usermgmt_platform help

Wyświetlane są następujące 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, podaj w wierszu poleceń 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ą następujące informacje pomocy:

Lists the machine users in an identity zone.

Usage:
  usermgmt list [flags]

Flags:
  -h, --help   help for list

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

Utwórz użytkownika maszyny w strefie tożsamości za pomocą polecenia usermgmt_platform create. Listę obsługiwanych platform znajdziesz w artykule Korzystanie z 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 komunikacie:
    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 Cię o to poprosimy, wpisz hasło ponownie.
    Password: password
    Re-enter password: password 

    Użytkownik zostanie utworzony.

    Created machine user machineuser1@mycompany.com

Wyświetl wszystkich użytkowników maszyny w strefie tożsamości

Wyświetl wszystkich użytkowników maszyn w strefie tożsamości za pomocą polecenia usermgmt_platform list. Listę obsługiwanych platform znajdziesz w artykule Korzystanie z interfejsu wiersza poleceń.

  1. Wpisz to polecenie:
    usermgmt_platform list
    Zostanie wyświetlona lista stref tożsamości:
    myzone1
    myzone2
  2. Wpisz nazwę strefy w komunikacie:
    Enter a zone name: myzone1

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

    Machine users in the zone:
    machineuser1@mycompany.com
        

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

Możesz zresetować hasło użytkownika maszyny w strefie tożsamości za pomocą polecenia usermgmt_platform reset. Listę obsługiwanych platform znajdziesz w artykule Korzystanie z 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 komunikacie:
    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 Cię o to poprosimy, wpisz hasło ponownie.
    Enter the new password: password
    Re-enter password: password

    Hasło zostało zresetowane.

    Reset password for machine user machineuser1@mycompany.com

Usuń użytkownika komputera w strefie tożsamości

Aby usunąć użytkownika maszyny w strefie tożsamości, użyj polecenia usermgmt_platform delete. Listę obsługiwanych platform znajdziesz w artykule Korzystanie z interfejsu wiersza poleceń.

  1. Wpisz to polecenie:
    usermgmt_platform delete
    Zostanie wyświetlona lista stref tożsamości:
    myzone1
    myzone2
  2. Wpisz nazwę strefy w komunikacie:
    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 

    Użytkownik komputera został usunięty.

    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 z włączoną obsługą SAML i przypisz mu wymagane role (na przykład administrator organizacji). zgodnie z opisem w artykule Dodawanie użytkowników.

Uzyskiwanie tokenów OAuth2 użytkownika komputera

Możesz zautomatyzować proces generowania tokenów i obsługiwać jego buforowanie dla użytkowników maszyn korzystających z acurl(1) i get_token(1), zgodnie z opisem w sekcji Protokół OAuth2 dla użytkowników komputerów i użytkowników 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ść, dane logowania użytkownika komputera nie zostaną przejęte.

  2. Wygeneruj tokeny początkowego dostępu i odświeżania, wywołując punkt końcowy tokena SAML, jak pokazano 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'

    W celu autoryzacji przekaż zarezerwowane dane logowania klienta OAuth2 (ZWRnZWNsaTplZGdlY2xpc2VjcmV0) w polu Authorization. Podczas rozmowy wydrukowane są tokeny dostępu i odświeżania, stdout

  3. Przekaż token dostępu do wywołania interfejsu Edge Management API w postaci nagłówka Bearer:
    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 token odświeżania do SAML tak jak 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 \
      -d 'grant_type=refresh_token&refresh_token=REFRESH_TOKEN'

(1) Copyright 2023 Google LLC
Narzędzia usermgmt, acurl i get_token są dostępne jako „Oprogramowanie” pod umowy regulującej korzystanie przez Ciebie z Google Cloud Platform, w tym z Usługi Szczegółowe warunki są dostępne na stronie https://cloud.google.com/terms/service-terms.