我可以通过执行以下操作从gcloud CLI中查看服务帐户使用情况:
gcloud policy-intelligence query-activity --activity-type=serviceAccountKeyLastAuthentication --project=<project_name>
我想在python脚本中复制此操作。
我正在尝试这样做,但不确定如何进行身份验证,尽管已启用API,但仍收到401错误。我正在遵循此文档。https://cloud.google.com/policy-intelligence/docs/activity-analyzer-service-account-authentication#iam-get-service-account-key-id-rest
import requests
r = requests.get(f"https://policyanalyzer.googleapis.com/v1/projects/{self.project_id}/locations/global/activityTypes/serviceAccountKeyLastAuthentication/activities:query?filter=activities.full_resource_name%3D%22%2F%2Fiam.googleapis.com%2Fprojects%2F{self.project_id}%2FserviceAccounts%2F{self.sa_email}%2Fkeys%2F{self.key_id}%22"
是否需要某种方法来验证我的请求调用?脚本的其余部分我使用python客户端库,使用discovery.build并进行验证:
credentials, project = google.auth.default()
self.crm = discovery.build("cloudresourcemanager", "v3", credentials=credentials)
似乎没有“策略分析器”Python库,所以我不确定下一步该怎么做。
最终目标是查看组织中每个服务帐户密钥的上次密钥身份验证时间。
谢谢!
1条答案
按热度按时间xqnpmsa81#
您可以查看此链接以获取Python代码示例
请注意,该特性仍处于预览阶段,并且还没有Python客户端。gcloud cli和REST是通过编程访问该特性的方法。