当前位置: 首页 > 知识库问答 >
问题:

通过API密钥访问桶中的JSON

潘琨
2023-03-14

我在Google Cloud上创建了一个存储桶,其中包含一个JSON文件。我希望通过某种基本形式的身份验证访问此JSON,例如API密钥

我在谷歌云上创建了一个API密钥,没有任何限制

当我尝试使用API密钥以文档格式执行GET请求时,例如:

https://storage.googleapis.com/BUCKETNAME/JSONNAME?API_KEY=APIKEYNAME

它返回以下内容

“匿名调用方没有storage.objects.get访问bucket”

我不知道为什么,因为我正在发送API密钥

或者,如果我将bucket/JSON文件设置为“public”,我可以通过以下URL轻松访问JSON:

https://storage.googleapis.com/BUCKETNAME/JSONNAME

不过,我真的不想让它完全打开...

我可以在这里做什么吗?我希望需要一个基本键(在标头或URL上)来访问JSON

谢啦!

共有2个答案

邢同
2023-03-14

不,您不能使用基本密钥访问Google云存储桶上的文件
有两个选项可以访问私有bucket中的文件。

  1. 使用Google Cloud Storage的REST-API。
    发出请求需要AccessToken(OAuth2.0)。
    确保配置IAM或ACL以访问存储桶。
  2. 使用签名URL访问文件。签名URL是允许下载/上传文件的短命url。

1、在谷歌云存储中下载对象
2。签名URL以访问程序上的文件。

衡子琪
2023-03-14

根据API密钥文档:

拥有API密钥后,您的应用程序可以将查询参数key=yourAPIKey附加到所有请求URL。

在您的问题中,您说您正在通过一个名为“API\u key”的参数传递API密钥,但文档中说要使用“key”。

 类似资料:
  • 我无法访问托管密钥库中的存储帐户密钥。下面是我的代码: 似乎$secret.secretValueText为空/null。如何正确检索存储帐户密钥?这就是出现的错误。

  • 我试图编译代码时遇到了这个异常。我已经安装了eclips工具包,我正在使用EclipseKepler 异常线程"main"java.lang.NoClassDefFoundError: org/apache/共用/日志/LogFactory在com.amazonaws.Amazon WebServiceClient.(Amazon WebServiceClient.java:56)在test_to

  • 我想查询hashicorp存储库路径中的特定字段 例如: 我尝试了类似于下面API的调用,但仍然无法获取

  • 我遇到了很多文章,很多文章建议使用OAuth over API密钥。据我所知,在OAuth中,我们最终获得了访问令牌,它的有效期为很多天。例如,QuickBooks online OAuth令牌的有效期为6个月。 因此,访问令牌等同于API Key。无论谁得到它,都应该像API密钥一样保护它。OAuth调用应该通过HTTPS进行,类似于基于API Key的调用。 相对于OAuth的另一个优势是授权

  • 问题内容: 如何通过密钥访问groupby对象中的相应groupby数据帧? 通过以下groupby: rand = np.random.RandomState(1) df = pd.DataFrame({‘A’: [‘foo’, ‘bar’] * 3, ‘B’: rand.randn(6), ‘C’: rand.randint(0, 20, 6)}) gb = df.groupby([‘A’])

  • 我正在使用secrets gradle插件读取我在本地应用程序中输入的API密钥。财产。 我已将此代码添加到根 对于应用程序 这是我的 然后当我试图从任何类/应用程序不在那里。我是不是错过了什么台阶?已经尝试了几个小时,但没有找到任何方法来实现这一点。