5.9. 审计 API 访问
您可以审核 API 调用给定角色可以访问。为每个角色重复这个过程将导致为每个角色对可访问的 API 进行全面的报告。对于您需要的步骤:
- 作为目标角色中的用户提供的身份验证文件。
- JSON 格式的访问令牌。
- 您要审核的每个服务的 API 的策略文件。
流程
- 首先,在所需角色中提供用户的身份验证文件。
捕获 Keystone 生成的令牌并将其保存到文件中。您可以通过运行任何 openstack-cli 命令并使用 --debug 选项将提供的令牌输出到 stdout 来完成此操作。您可以复制此令牌并将其保存到访问文件中。使用以下命令来作为单一步骤执行此操作:
openstack token issue --debug 2>&1 | egrep ^'{\"token\":' > access.file.json
创建策略文件。这可以在托管感兴趣的容器化服务的 overcloud 节点上完成。以下示例为 cinder 服务创建一个策略文件:
ssh heat-admin@CONTROLLER-1 sudo podman exec cinder_api \ oslopolicy-policy-generator \ --config-file /etc/cinder/cinder.conf \ --namespace cinder > cinderpolicy.json
使用这些文件,您现在可以审核问题中的角色,以访问 cinder 的 API:
oslopolicy-checker --policy cinderpolicy.json --access access.file.json