Облачное хранилище Google: предоставьте учетные данные пользователя / пароль для каждого объекта - PullRequest
0 голосов
/ 05 марта 2020

У меня есть веб-приложение, бэкэнд которого развернут в облачных функциях Google, и оно использует Google Cloud Storage для хранения документов конечных пользователей. Пользователи аутентифицируются в моем приложении с именем пользователя и паролем.

Можно ли предоставить конкретный c доступ для чтения к объекту в GCS для пользователей владельца объекта, так что если пользователь A владеет документом A в GCS, он единственный, кто имеет к нему доступ?

Спасибо

Ответы [ 2 ]

1 голос
/ 09 марта 2020

Условия облачного IAM может быть именно тем, что вы ищете.

В условиях облачного IAM вы можете предоставить доступ к ресурсам для идентификаторов (участников), только если настроено условия соблюдены. Например, это можно сделать, чтобы настроить временный доступ для пользователей в случае производственной проблемы или ограничить доступ к ресурсам только для сотрудников, выполняющих запросы из вашего корпоративного офиса.

Так что для каждого участника вы можно настроить что-то вроде этого:

"condition": {
    "title": Limit access to [Dedicated VM]
    "expression": "resource.type == "compute.googleapis.com/Instance" && resource.name == [Dedicated VM]"
}

Существует ограничение в 20 правил на человека, что в данном случае не должно иметь большого значения.

0 голосов
/ 06 марта 2020

В настоящее время вы можете контролировать доступ к корзинам только с помощью Identity and Access Management (IAM) или списков контроля доступа, как вы можете видеть в документации контроля доступа , вы также можете получить более подробную информацию о каждом из них. в соответствующих документах.

То, что вы пытаетесь сделать, невозможно, поскольку один из упомянутых вариантов зависит от наличия электронной почты Google и / или электронной почты группы Google или чего-то подобного для назначения ролей.

Возможный обходной путь - это то, что @lukaszberwid упомянул в комментариях, если у вас есть корзина для каждого пользователя, его доступ будет управляться независимо, поэтому он, вероятно, будет соответствовать потребностям вашего приложения.

Надеюсь, это поможет.

...