Sample

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}${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ć.