我正在学习Google Cloud Pub / Sub并遵循此官方文档:Writing and Responding to Pub/Sub Messages - Python
发生内部错误: 403未授权用户执行此操作。 (POST https://pubsub.googleapis.com/v1/projects/your-project-id/topics/your-topic:publish) 请参阅完整堆栈跟踪的日志。
我想这是由于某些身份验证问题?任何帮助将不胜感激。
答案 0 :(得分:7)
确保您使用的客户端有权发布到Pub / Sub。见details here。如果您的客户端属于与主题相同的项目,则通常不需要其他访问控制配置。确保您的客户是authenticated properly。
答案 1 :(得分:5)
以下是来自Google文档Troubleshooting 403 (Forbidden) error的一些说明:
如果出现此错误,请执行以下操作:
- 确保您已在云平台控制台中启用了Google Cloud Pub / Sub API。
- 确保发出请求的主体具有相关Google Cloud Pub / Sub资源所需的权限,
特别是如果您使用Google Cloud Pub / Sub进行跨项目 通信。- 如果您使用的是Dataflow,请确保@ cloudservices.gserviceaccount.com和计算引擎 服务帐号-compute@developer.gserviceaccount.com
拥有相关Google Cloud Pub / Sub的所需权限 资源。有关详情,请参阅Google Cloud Dataflow安全和权限 信息。- 如果您正在使用App Engine,请检查项目的“权限”页面,以查看是否将App Engine服务帐户列为编辑器。如果它 不是,将您的App Engine服务帐户添加为编辑器。一般, App Engine服务帐户的格式为
@ appspot.gserviceaccount.com。