Проверка настройки авторизации и инициализация проекта

Это руководство поможет вам убедиться, что настройка авторизации Fleet Engine завершена и что вы можете создать пробное средство доставки. В этом руководстве используется утилита командной строки gcloud для проверки подписи токена авторизации и создания средства доставки.

Чтобы завершить этот процесс, замените поля ниже данными, которые вы создали в ходе настройки:

Поле Заменить
PROJECT_ID Идентификатор вашего облачного проекта.
SERVICE_ACCOUNT_EMAIL_ADDRESS Адрес электронной почты сервисной учетной записи, которую вы создали с roles/fleetengine.deliverySuperUser . Подробности см. в разделе Роли IAM .
DELIVERY_VEHICLE_ID Случайный идентификатор средства доставки. Идентификатор может содержать максимум 64 символа.
  1. Используйте утилиту gcloud , чтобы войти в учетную запись Google Cloud и установить текущий активный проект на своей рабочей станции:

    gcloud auth login
    gcloud config set project PROJECT_ID
    
  2. Создайте заявку JSON Web Token (JWT) для создания средства доставки:

    cat > claim.jwt << EOM
    {
      "iss": "SERVICE_ACCOUNT_EMAIL_ADDRESS",
      "sub": "SERVICE_ACCOUNT_EMAIL_ADDRESS",
      "aud": "https://fleetengine.googleapis.com/",
      "iat": $(date +%s),
      "exp": $((`date +%s` + 3600)),
      "authorization": {
        "deliveryvehicleid": "DELIVERY_VEHICLE_ID"
      }
    }
    EOM
    
  3. Используйте gcloud , чтобы подписать этот JWT:

    gcloud beta iam service-accounts sign-jwt claim.jwt output.jwt \
      --iam-account=SERVICE_ACCOUNT_EMAIL_ADDRESS
    

    Подписанный JWT хранится в output.jwt .

    Более подробную информацию можно найти в руководстве по командной строке gcloud .

  4. Используйте curl , чтобы создать тестовое средство доставки на Fleet Engine:

    curl -X POST "https://fleetengine.googleapis.com/v1/providers/PROJECT_ID/deliveryVehicles?deliveryVehicleId=DELIVERY_VEHICLE_ID" \
      -H "Content-type: application/json" \
      -H "Authorization: Bearer $(cat output.jwt)" \
      --data-binary @- << EOM
    {
      "name": "providers/PROJECT_ID/deliveryVehicles/DELIVERY_VEHICLE_ID"
    }
    EOM
    

    Эта команда должна вывести название средства доставки. Если вы видите следующий текст, ваша установка прошла успешно!

    {
      "name": "providers/PROJECT_ID/deliveryVehicles/DELIVERY_VEHICLE_ID"
    }
    

    Подробности см. в разделе «Создание транспортного средства» в документации Fleet Engine.