php - 使用 Google Cloud API 获取用户权限
问题描述
我需要检查用户凭据是否有权访问项目并具有以下权限,例如。
compute.images.get,
compute.images.list,
compute.instanceGroups.get,
compute.instances.start,
compute.instances.delete,
compute.instanceTemplates.list
我正在使用以下 PHP 谷歌云库
https://github.com/googleapis/google-api-php-client
获取资源管理器对象,我正在尝试为项目执行 testIamPermissions 方法。
https://cloud.google.com/resource-manager/reference/rest/v1/projects/testIamPermissions
它使用 API 端点工作正常,但使用 PHP SDK 没有可用的方法,只有文件夹和操作对象可用。
我正在使用以下 JSON 文件
{
"type": "service_account",
"project_id": "p123",
"private_key_id": "p123",
"private_key": "p123",
"client_email": "test@p123.iam.gserviceaccount.com",
"client_id": 12345",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/p123.iam.gserviceaccount.com"
}
解决方案
我认为您应该查看与projects.testIamPermissions相关的文档,并查看文档参考中包含的 PHP 示例。
推荐阅读
- java - Azure webapp HTTP 状态 404 - 未找到
- python - 如何在 Python 中以最快的方式计算矩阵指数?
- php - 如何返回php数组中重复次数最多的值
- fiddler - 如何在 loadrunner 中导入提琴手保存会话(.saz)文件时创建 loadrunner 事务
- mysql - 在 Magnolia:用 MySQL 替换 H2:JackRabbit 无法实例化持久性管理器
- android - 如何更改 xml 文件中的可伸缩性
- pandas - 如何从数据框中的每一列中删除空值并根据键在 1 行中附加非空列值
- python - ValueError:预期 1D 或 2D 数组,得到 0D 数组
- node.js - 如何修复嵌套订阅以按顺序工作?
- jquery - 如果存在错误,则防止表单提交 ajax .submit() 和 .change()