我正在学习谷歌云存储,JSON api,简单上传:
https://cloud.google.com/storage/docs/json_api/v1/how-tos/simple-upload
示例显示发送一篇如下所示的帖子:
POST https://www.googleapis.com/upload/storage/v1/b/myBucket/o?uploadType=media&name=myObject HTTP/1.1
Content-Type: image/jpeg
Content-Length: [NUMBER_OF_BYTES_IN_FILE]
Authorization: Bearer [YOUR_AUTH_TOKEN]
[JPEG_DATA]
然后我创建了一个“服务帐户”应用编程接口。
但是我如何从我新创建的服务帐户中找到要使用的[您的授权令牌]
?
谷歌云使用OAuth2.0来处理身份验证。根据您的需要,有多种生成令牌的技术。如果你正在使用谷歌的一个客户端库编写一个程序,那么大部分细节都会由你来处理。谷歌有一个关于细节的冗长指南:https://developers.google.com/identity/protocols/OAuth2
您希望作为服务号进行身份验证。服务帐户通常通过创建名为JWT的令牌请求文档进行身份验证,并使用与服务号关联的私钥对其签名,然后将JWT与Google交换为令牌。这个过程在这里描述:https://developers.google.com/identity/protocols/OAuth2#serviceaccount
在桌面上,如果您想作为服务帐户进行身份验证,一种简单的方法是使用gcloud作为服务帐户进行身份验证,然后向其索要令牌:
$> gcloud auth activate-service-account myaccount@gserviceaccounts.com --key-file=creds.json
$> gcloud auth print-access-token
是否可以使用来自Google API客户端Javascript库的承载令牌来授权Google云存储桶,而无需向用户请求https://www.googleapis.com/auth/devstorage范围。该桶具有对所有Google帐户的读写访问权限。
我想向成千上万,也许是数百万的用户授予对谷歌云存储桶的访问权限。我最初的计划是通过IAM角色使用他们的REST api授予访问权限。然而,在这个配额上 每个存储桶最多有100名成员拥有旧版IAM角色,每个存储桶最多有1500名成员拥有所有IAM角色。成员的示例包括个人用户、组和域。请参阅IAM标识。 这是否意味着,我只能为1500人提供阅读权限?如果是这样的话,有什么办法可以让成千上万的人进入?
使用oAuth 2.0,在“授权代码”授权授予中,我首先调用“/授权”,获取代码,然后在对“/令牌”的调用中使用该代码来获取访问令牌。 我的问题:为什么这是流?我想这是出于安全原因,但我想不出来。为什么实现是这样的,而不是在第一次调用(“/authorize”)后立即获取访问令牌? 为什么我们需要这个代码?
我有一个具有统一访问控制的Google云存储桶,我在权限中添加了“诱惑者”。它说该对象是公共的,但当我尝试打开链接时,仍会收到此消息:“匿名调用方没有storage.objects.get access to the Google Cloud storage object”错误代码为“401”。我希望任何用户都能够访问该链接。我该怎么做?提前谢谢! 向你问好本
我的问题是:为什么这是流动?我想是出于安全原因,但我想不通。为什么实现是这样的,而不是在第一次调用(“/authorize”)之后立即获得访问令牌? 我们为什么需要这个代码?
我正在创建一个android应用程序,使用youtube API播放,然后是最喜欢的YouTubeVideos。我已经(我想是正确的)使用AccountManager和oauth2为用户获得了Auth令牌。 我想知道的是,下一步该去哪里?我想创建一个YouTube的实例,这样我就可以喜欢这些视频。在看了构造函数后,我不知道如何将访问令牌合并到其中。我有我的Client_ID和Client_Secr