Prisma Cloud:运行 IAM 配置查询时出现 API 异常错误
2993
Created On 04/24/24 18:53 PM - Last Modified 05/07/24 13:55 PM
Symptom
尝试使用 API 发布搜索 IAM 配置查询 (RQL) 时收到错误消息。
Environment
- Prisma Cloud IAM 策略
- API 终结点
Cause
- Prisma Cloud 对 Cloud-Resource 查询和 IAM 配置查询使用不同的 API 终端节点。
Resolution
- 对于 cloud.resource 查询,API 终端节点为
{{api-endpoint}}/search/config
- 但对于 IAM 配置查询,API 终端节点为
{{api-endpoint}}/iam/api/v4/search/permission
Additional Information
- 以下链接不涵盖 IAM 配置 RQL 查询的详细信息。
“执行配置搜索”
https://pan.dev/prisma-cloud/api/cspm/search-config/
使用 Postman 的 API 调用示例:
- Cloud.resource RQL
POST: https://{{api-endpoint}}/search/config
Body:
{
"heuristicSearch": true,
"query": "config from cloud.resource where cloud.type = 'aws' AND api.name = 'aws-s3api-get-bucket-acl' AND json.rule = "acl.grantsAsList[?(@.grantee=='AllUsers')].permission contains ReadAcp or acl.grantsAsList[?(@.grantee=='AllUsers')].permission contains FullControl",
"timeRange": {
"type": "to_now",
"value": "epoch"
},
"limit": 100,
"withResourceJson": false
}
- IAM 配置 RQL
POST: https://{{api-endpoint}}/iam/api/v4/search/permission
Body:
{
"query": "config from iam where dest.cloud.type = 'AWS' and source.public = true AND dest.cloud.service.name = 's3' AND dest.cloud.resource.type = 'bucket' AND grantedby.cloud.policy.condition ( 'aws:SourceArn' ) does not exist AND grantedby.cloud.policy.condition ( 'aws:VpcSourceIp' ) does not exist AND grantedby.cloud.policy.condition ( 'aws:username' ) does not exist AND grantedby.cloud.policy.condition ( 'aws:userid' ) does not exist AND grantedby.cloud.policy.condition ( 'aws:ResourceAccount' ) does not exist"
}