Пожалуйста, убедитесь, что у вас есть доступ к этому ресурсу на правах ВЛАДЕЛЬЦА

#google-cloud-platform #google-cloud-storage #google-iam

# #google-облачная платформа #google-облачное хранилище #google-iam

Вопрос:

У меня есть ведро с каким-то предметом внутри него.

 gsutil acl ch -u AllUsers:R gs://object-path
 

Я получаю следующую ошибку

 Please ensure you have OWNER-role access to this resource.
 

Я становлюсь владельцем объекта, когда я нажимаю на три точки, чтобы проверить, а также,

Когда я бегу

 gsutil acl get gs://object-path
 

Я получаю

 {"email":"ci-tool-access@project-name.iam.gserviceaccount.com",
   "entity":"ci-tool-access@project-name.iam.gserviceaccount.com",
   "role":"OWNER"
}
 

Мои разрешения IAM для всего проекта, а не только для ресурсов облачного хранилища, устанавливаются в качестве владельца просто для повторения. Выполняется

 gsutil acl get gs://bucket-path
 

дает мне это

 [
  {
    "entity": "project-owners.....",
    "projectTeam": {
      "projectNumber": "...",
      "team": "owners"
    },
    "role": "OWNER"
  }
]
 

Выполняется gcloud projects get-iam-policy <PROJECT_ID>
вывод:

 - members:- serviceAccount:ci-tool-access@project-name.iam.gserviceaccount.com   
role: roles/owner
 

и gcloud auth list

 ACTIVE  ACCOUNT
*       ci-tool-access@project-name.iam.gserviceaccount.com
 

Это не дает мне покоя, есть какие-нибудь идеи, что может происходить, что мешает мне изменить ACL на объекте? Для унифицированных разрешений корзины установлено значение false, поэтому у меня должен быть детальный доступ к каждому объекту

Комментарии:

1. Для команды gsutil acl get gs://object-path , где вывод показывает, что идентификатор, который gsutil используется, имеет ВЛАДЕЛЬЦА? Какое удостоверение gsutil используется? Учетная запись пользователя или службы? У этого удостоверения нет ВЛАДЕЛЬЦА.

2. gsutil использует учетную запись, авторизованную в gcloud sdk. я получаю следующий вывод { "email": "ci-tool-access@project-name.iam.gserviceaccount.com", "entity": "ci-tool-access@project-name.iam.gserviceaccount.com", "role": "OWNER" }

3. Покажите команду, которая генерирует этот вывод. Вы хотите просмотреть выходные данные gcloud projects get-iam-policy <PROJECT_ID> . Это определяет роли, назначенные идентификатору для проекта.

4. Сообщение об ошибке сообщает вам, что идентификатор, который вы используете, не имеет ВЛАДЕЛЬЦА. Дважды проверьте идентификатор, который использует gsutil. Что gcloud auth list показывает? Посмотрите на YOUR_HOMEDIR/.boto файл. Просмотрите раздел [Учетные данные] — что настроено? Отредактируйте свой вопрос с подробностями из ваших комментариев.

5. Там должен быть .boto файл. При условии, что вы не настроили авторизацию в файле .boto`, тогда gcloud используются учетные данные. Используете ли вы текущую версию инструментов? gcloud components update в приглашении с повышенными правами (Windows). Может быть , тебе стоит начать все сначала gcloud init .