In den folgenden Beispielen wird davon ausgegangen, dass Sie bereits ein Token mit Ihrem Dienstkonto abgerufen haben:
TOKEN=$(gcloud auth print-access-token)
Außerdem gehen wir davon aus, dass Sie ${CLIENT_PROJECT}
bereits auf die Projekt-ID des Google Cloud-Projekts festgelegt haben.
Bestandskunden auflisten
Mit dem folgenden Befehl werden alle Kunden zurückgegeben, auf die der Anrufer Zugriff hat:
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"
Der Einfachheit halber sollten Sie den zurückgegebenen Kundennamen in einer Variablen speichern:
CUSTOMER_NAME=customers/...
Neue Gerätekonfiguration erstellen
Legen Sie zuerst die ${FCCID}
und ${SN}
des Geräts fest, das Sie erstellen möchten:
FCCID=f1
SN=sn1
Erstellen Sie dann mit dem folgenden Befehl die Gerätekonfiguration:
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\"}}"
Der Befehl gibt eine neu erstellte Gerätekonfiguration zurück. Der Einfachheit halber sollten Sie den Gerätenamen in einer Variablen speichern:
DEVICE_NAME=customers/.../devices/...
Aktuelle Geräte auflisten
Mit dem folgenden Befehl werden vorhandene Geräte aufgelistet.
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"
Gerät nach Name abrufen
Mit dem folgenden Befehl werden Geräte nach Namen abgerufen.
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} "
Vorhandenes Gerät aktualisieren
Mit dem folgenden Befehl werden vorhandene Geräte aktualisiert.
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} " \
CPI-Identität und -Zertifizierung validieren
Verwenden Sie das folgende Beispiel, um den geheimen String zu generieren:
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 "{}"
Dadurch wird ein Wert mit der folgenden Form zurückgegeben:
{ "secret": "<generated secret>" }
Der geheime String muss dann in ein JWT codiert werden. Verwende das JSON Web Token-Format. Es wird davon ausgegangen, dass Sie ${SECRET}
auf den geheimen String, ${ENCODED_SECRET}
auf den JWT-String und ${CPI_ID}
auf die ID des CPI festgelegt haben, der validiert werden soll.
Mit dem folgenden Befehl wird die Identität und die Zertifizierung des CPI bestätigt.
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}\ " }"
Der CPI kann jetzt eine CBSD installieren, die alle erforderlichen Parameter enthält.
Mehrstufige CBSD-Registrierung
Es gibt zwei Möglichkeiten, die mehrstufige CBSD-Registrierung durchzuführen, die in den folgenden beiden Abschnitten beschrieben wird. Sie können die mehrstufige CBSD-Registrierung mit Parametern durchführen, die zuvor von einem CPI oder mit einem CPI-Konto signiert wurden.
Mit zuvor durch einen CPI signierten Geräteparametern
Dieses Beispiel zeigt, wie Sie eine inaktive Gerätekonfiguration mit CBSD-Installationsparametern erstellen, die zuvor von einem CPI codiert wurden, sodass die Konfiguration auch von Nutzern ohne CPI erstellt werden kann.
Verwenden Sie den privaten Schlüssel des CPI, um die CBSD-Parameter zu codieren. Dazu verwenden wir das JSON Web Token-Format.
Es wird davon ausgegangen, dass Sie ${ENCODED_DEVICE}
auf den JWT-String und ${CPI_ID}
auf die ID des CPI festgelegt haben.
Die inaktive Gerätekonfiguration kann dann mit dem folgenden Befehl erstellt werden:
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} \" }"
Die CBSD muss dann eine Registrierungsanfrage an die SAS senden, um die Registrierung abzuschließen.
Mit einem CPI-Konto
Zuerst muss die Identität des CPI bestätigt werden, bevor Sie versuchen, eine Gerätekonfiguration zu validieren. Verwenden Sie anschließend den folgenden Befehl, um eine inaktive Gerätekonfiguration zu erstellen:
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} "
Wir gehen davon aus, dass Sie ${DEVICE} als JSON-Darstellung der CBSD-Registrierungsparameter in diesem Format festgelegt haben.
Die CBSD muss dann eine Registrierungsanfrage an die SAS senden, um die Registrierung abzuschließen.