W poniższych przykładach zakładamy, że token został już uzyskany za pomocą konta usługi:
TOKEN=$(gcloud auth print-access-token)
Zakładamy też, że w przypadku ${CLIENT_PROJECT}
masz już ustawiony identyfikator projektu Google Cloud.
Wyświetlanie obecnych klientów
Poniższe polecenie zwraca wszystkich klientów, do których element wywołujący ma dostęp:
curl -X GET -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer ${TOKEN}" \"https://sasportal.googleapis.com/v1alpha1/customers"
Aby ułatwić sobie pracę, zapisz zwróconą nazwę klienta w zmiennej:
CUSTOMER_NAME=customers/...
Tworzenie nowej konfiguracji urządzenia
Najpierw ustaw ${FCCID}
i ${SN}
urządzenia, które chcesz utworzyć:
FCCID=f1 SN=sn1
Następnie utwórz konfigurację urządzenia za pomocą tego polecenia:
curl -X POST -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer ${TOKEN}" \ "https://sasportal.googleapis.com/v1alpha1/${CUSTOMER_NAME}/devices" \ -d "{ \"fcc_id\": \"$FCCID\", \"serial_number\": \"$SN\", \"preloaded_config\": { \"call_sign\": \"cs1\", \"category\": \"DEVICE_CATEGORY_A\"}}"
Polecenie zwraca nowo utworzoną konfigurację urządzenia. Dla wygody zapisz nazwę urządzenia w zmiennej:
DEVICE_NAME=customers/.../devices/...
Wyświetlanie listy bieżących urządzeń
To polecenie wyświetla listę istniejących urządzeń.
curl -X GET -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \ "https://sasportal.googleapis.com/v1alpha1/${CUSTOMER_NAME}/devices"
Pobieranie urządzenia według nazwy
Poniższe polecenie pobiera urządzenia według nazwy.
curl -X GET -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \ "https://sasportal.googleapis.com/v1alpha1/${DEVICE_NAME}"
Aktualizowanie obecnego urządzenia
To polecenie aktualizuje istniejące urządzenia.
curl -X PATCH -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \ "https://sasportal.googleapis.com/v1alpha1/${DEVICE_NAME}" \
Weryfikacja tożsamości i certyfikatu CPI
Aby wygenerować ciąg tajny, użyj tego przykładu:
curl -X POST -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \ "https://sasportal.googleapis.com/v1alpha1/installer:generateSecret" \ -d "{}"
Zwraca wartość w tym formacie:
{ "secret": "<generated secret>" }
Ciąg tajny musi zostać zakodowany w tokenie JWT. Użyj formatu tokena internetowego JSON. Zakładamy, że zmienna ${SECRET}
zawiera ciąg tajny, zmienna ${ENCODED_SECRET}
zawiera ciąg JWT, a zmienna ${CPI_ID}
zawiera identyfikator platformy CPI do zweryfikowania.
Poniższe polecenie weryfikuje tożsamość i certyfikat CPI.
curl -X POST -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \ "https://sasportal.googleapis.com/v1alpha1/installer:validate" \ -d "{ \"installer_id\": \"${CPI_ID}\", \"secret\": \"${SECRET}\", \"encoded_secret\": \"${ENCODED_SECRET}\" }"
Instalator certyfikowany może teraz zainstalować stację CBSD, która ma wszystkie wymagane parametry.
Wieloetapowa rejestracja stacji CBSD
W kolejnych 2 sekcjach opisujemy 2 sposoby rejestracji urządzenia CBSD w kilku krokach. Możesz przeprowadzić wieloetapową rejestrację urządzenia CBSD z parametrami podpisanymi wcześniej przez certyfikowanego instalatora profesjonalnego lub z kontem certyfikowanego instalatora profesjonalnego.
z parametrami urządzenia podpisanymi wcześniej przez dostawcę platformy tożsamości;
Ten przykład pokazuje, jak utworzyć nieaktywną konfigurację urządzenia z parametrami instalacji CBSD zakodowanymi wcześniej przez certyfikowanego instalatora profesjonalnego, dzięki czemu konfigurację mogą tworzyć nawet użytkownicy bez certyfikatu CPI.
Użyj klucza prywatnego CPI do zakodowania parametrów CBSD. W tym celu używamy formatu tokena sieciowego JSON.
Zakładamy, że ciąg znaków JWT został ustawiony na ${ENCODED_DEVICE}
, a identyfikator platformy CPI na ${CPI_ID}
.
Konfigurację nieaktywnego urządzenia można utworzyć za pomocą tego polecenia:
curl -X POST -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer ${TOKEN}" \ "https://sasportal.googleapis.com/v1alpha1/${CUSTOMER_NAME}/devices:createSigned" \ -d "{ \"installer_id\": \"${CPI_ID}\", \"encoded_device\": \"${ENCODED_DEVICE}\", \"parent\": \"${CUSTOMER_NAME}\" }"
Następnie CBSD musi wysłać do SAS prośbę o rejestrację, aby ją zakończyć.
Na koncie CPI
Najpierw musisz potwierdzić tożsamość instalatora certyfikowanego, zanim spróbujesz zweryfikować konfigurację urządzenia. Gdy to zrobisz, użyj tego polecenia, aby utworzyć nieaktywną konfigurację urządzenia:
curl -X POST -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \ "https://sasportal.googleapis.com/v1alpha1/${DEVICE_NAME}:signDevice" \ -d "${DEVICE}"
Zakładamy, że zmienna ${DEVICE} zawiera reprezentację JSON parametrów rejestracji CBSD w tym formacie.
Następnie CBSD musi wysłać do SAS prośbę o rejestrację, aby ją zakończyć.