第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

GCP - Python 創(chuàng)建 IoT 設備 PermissionDenied

GCP - Python 創(chuàng)建 IoT 設備 PermissionDenied

陪伴而非守候 2024-01-04 15:39:05
我正在嘗試通過 Python 腳本在 Google Cloud 上創(chuàng)建 IoT 設備。我已經(jīng)設置了項目、IoT 注冊表并驗證了我的 GCloud,并將 GOOGLE_APPLICATION_CREDENTIALS 鏈接到相應服務帳戶的 json。為什么我使用命令行創(chuàng)建帳戶,例如 gcloud iot devices create dev01 --project=... --region=... --registry=... ,它有效。但是,我的 Python 腳本(通過命令提示符運行)似乎沒有產(chǎn)生相同的結果。我使用https://cloud.google.com/iot/docs/samples/device-manager-samples#iot-core-create-rs256-python作為 iot_v1 參考。   # Generate Key    key = rsa.generate_private_key(backend=default_backend(), public_exponent=65537, key_size=2048)    # Get Public    public_key = key.public_key().public_bytes(serialization.Encoding.OpenSSH, serialization.PublicFormat.OpenSSH)    # Get Private    pem = key.private_bytes(encoding=serialization.Encoding.PEM,                            format=serialization.PrivateFormat.TraditionalOpenSSL,                            encryption_algorithm=serialization.NoEncryption())    # Decode to UTF-8    private_key_str = pem.decode('utf-8')    public_key_str = public_key.decode('utf-8')    # Write keys    with open('Key Pairs/'+deviceName+'_private.pem', 'wb') as file:        file.write(pem)    with open('Key Pairs/' + deviceName + '_public.pem', 'wb') as file:        file.write(public_key)    # Create Device    client = iot_v1.DeviceManagerClient()    parent = client.registry_path(PROJECTID, REGION, REGISTRY)    deviceTemplate = {        'id': deviceName,        "credentials": [            {                "public_key": {                    "format": iot_v1.PublicKeyFormat.RSA_X509_PEM,                    "key": public_key_str,                }            }        ]    }    client.create_device(request={'parent': parent, 'device': deviceTemplate})
查看完整描述

1 回答

?
慕的地8271018

TA貢獻1796條經(jīng)驗 獲得超4個贊

確保用于創(chuàng)建客戶端的服務帳戶至少roles/cloudiot.provisioner分配了角色(如果您不斷收到權限錯誤,請嘗試將角色添加roles/cloudiot.admin到服務帳戶,因為它應該授予對所有 IoT 設備的完全控制權)

一旦您確定服務帳戶具有正確的權限,您就可以利用iot_v1.DeviceManagerClient() 類credentials提供的參數(shù)來確保您指向服務帳戶密鑰文件。


查看完整回答
反對 回復 2024-01-04
  • 1 回答
  • 0 關注
  • 122 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號