亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 Go 應用程序中使用默認憑據時出現 GCP 權限問題

在 Go 應用程序中使用默認憑據時出現 GCP 權限問題

Go
梵蒂岡之花 2023-08-07 16:41:32
我的應用程序相當小:import (    "context"    "fmt"    "log"    "google.golang.org/api/compute/v1")func main() {    ctx := context.Background()    computeService, err := compute.NewService(ctx)    urlMapCall := computeService.UrlMaps.List("my-prj")    urlMaps, err := urlMapCall.Do()    if err != nil {        log.Println(err)        return    }    for _, mp := range urlMaps.Items {        fmt.Println(mp.Name)    }}我收到錯誤:googleapi: Error 403: Required 'compute.urlMaps.list' permission for 'projects/my-prj', forbidden我已經設置了環境變量GOOGLE_APPLICATION_CREDENTIALS=$HOME/.gcp/my-prj-aef233we.json。此 JSON 代表的服務帳戶具有項目編輯器和計算管理員角色。當我這樣做時gcloud compute url-maps list,它可以毫無缺陷地工作。我究竟做錯了什么?
查看完整描述

3 回答

?
qq_笑_17

TA貢獻1818條經驗 獲得超7個贊

當您使用 gcloud 命令進行測試時,您很可能不會使用服務帳戶進行測試,而是使用個人帳戶進行測試。這意味著您沒有相同級別的許可,因此觀察到的行為會受到尊重。執行 agcloud config list查看當前配置和用戶。

對于該權限compute.urlMaps.list,3 個策劃角色包含該權限

roles/compute.viewer
roles/compute.networkViewer
roles/compute.instanceAdmin.v1

另外,不要忘記授予該角色roles/iam.serviceAccountUser

將其中之一添加到您的服務帳戶。


查看完整回答
反對 回復 2023-08-07
?
幕布斯7119047

TA貢獻1794條經驗 獲得超8個贊

我的同事發現了這個問題:我給的項目名稱 my-prj錯誤。A404可能幫助我更快地發現問題。

感謝其他答案,因為需要添加角色服務帳戶用戶。


查看完整回答
反對 回復 2023-08-07
?
一只斗牛犬

TA貢獻1784條經驗 獲得超2個贊

從 GCP 來看,我猜還需要啟用 servceAccountUser 角色

Roles/compute.admin 完全控制所有 Compute Engine 資源。

如果用戶將管理配置為作為服務帳戶運行的虛擬機實例,您還必須授予 Roles/iam.serviceAccountUser 角色。


查看完整回答
反對 回復 2023-08-07
  • 3 回答
  • 0 關注
  • 188 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號