在 Firebase 中添加对另一个项目的访问权限
Posted
技术标签:
【中文标题】在 Firebase 中添加对另一个项目的访问权限【英文标题】:Add access to another project in Firebase 【发布时间】:2021-06-15 10:50:26 【问题描述】:是否可以在 Firebase 存储中授予对不同项目的访问权限?例如,假设我有两个 Firebase 项目,项目 A 和项目 B。有没有办法设置项目 B 的安全规则,以便项目 A 中的应用程序可以访问项目 b 中的 Firebase 存储?
我认为可以在安全规则中添加其他项目的项目 ID,但在文档中找不到类似的内容。
【问题讨论】:
【参考方案1】:您可以使用“Custom Claims”在用户帐户(可以是应用名称)上定义自定义属性,以用作存储安全规则中的验证。(请注意,此解决方案仅适用于单个项目使用)。
如果有特定需要将存储桶和用户放在单独的项目中,您还可以考虑使用“auth:import and auth:export”将用户帐户从一个项目移动到另一个项目,或者处理存储桶数据。
您的 auth:import 应如下所示:
firebase auth:import ACCOUNT_FILE \
--hash-algo=HASH_ALGORITHM \
--hash-key=KEY \
--salt-separator=SALT_SEPARATOR \
--rounds=ROUNDS \
--mem-cost=MEM_COST \
--parallelization=PARALLELIZATION \
--block-size=BLOCK_SIZE \
--dk-len=DK_LEN \
--hash-input-order=HASH_INPUT_ORDER
和你的 auth:export 一样
firebase auth:export ACCOUNT_FILE --format=FILE_FORMAT
【讨论】:
您确定声明将在 Firebase 项目之间共享吗?以上是关于在 Firebase 中添加对另一个项目的访问权限的主要内容,如果未能解决你的问题,请参考以下文章
授予 Redshift Cluster 对另一个账户拥有的 S3 存储桶的访问权限
Oracle 一个用户对另一个用户的完全(所有模式对象)权限