域范围内的委派服务帐户能否获得品牌帐户授权?

时间:2020-03-04 03:11:56

标签: python google-api youtube-data-api youtube-livestreaming-api

我正在制作一个脚本,用于更新实时流的标题和描述。我已阅读available documentation,并已完成以下一般步骤:

  1. 创建一个YouTube品牌帐户;批准将其用于实时流式传输
  2. 建立API凭据-我正在使用内部GSuite OAuth设置
  3. 向服务帐户添加权限

当我使用API​​ Explorer并手动选择品牌帐户时,这一切都可以正常工作。但是,当我采用生成的Python代码并合并适用的服务帐户代码时,会出现权限错误。

request = youtube.liveBroadcasts().update(
    part="contentDetails,snippet,status",
    body={
        "contentDetails": {
            "enableClosedCaptions": True,
            "enableContentEncryption": True,
            "enableDvr": True,
            "enableEmbed": False,
            "recordFromStart": True,
            "startWithSlate": False,
            "monitorStream": {
                "enableMonitorStream": True,
                "broadcastStreamDelayMs": 5
            }
        },
        "id": "<video_id_here>",
        "snippet": {
            "scheduledStartTime": "2020-03-04T01:27:02Z",
            "title": "New Foorbar Title"
        },
        "status": {
            "privacyStatus": "public"
        }
    }
response = request.execute()

unauthorized_client:未授权客户端检索访问令牌 使用此方法,或者客户无权使用任何范围 请求。


我尝试将主题字段设置为在其自己的帐户设置中找到的主要帐户的电子邮件(x@example.com),x@example.iam.gserviceaccount.com电子邮件和品牌电子邮件x@pages.plusgoogle.com。我浏览了几乎所有与此相关的内容,this issue tracker似乎是最有用的(但令人沮丧!)。

这使我了解到不可能在品牌帐户上实现全自动API授权。

有人对这个问题有见识吗?我缺少一些琐碎的东西吗?还是Google的固定限制?

0 个答案:

没有答案