4.5. 使用 IdM API 命令管理基于主机的访问控制


以下示例显示了如何使用 IdM API 命令管理基于主机的访问控制(HBAC)的常见场景。

使用 IdM API 命令管理 HBAC 的示例

创建 HBAC 规则

在本例中,您创建一个将处理 SSH 服务访问的基本规则。

api.Command.hbacrule_add("sshd_rule")
将用户添加到 HBAC 规则中

在本例中,您将用户 john 添加到 sshd_rule HBAC 规则中。

api.Command.hbacrule_add_user("sshd_rule", user="john")
将组添加到 HBAC 规则中

在本例中,您将组 developers 添加到 sshd_rule HBAC 规则中。

api.Command.hbacrule_add_user("sshd_rule", group="developers")
从 HBAC 规则中删除用户

在本例中,您从 sshd_rule HBAC 规则中删除用户 john

api.Command.hbacrule_remove_user("sshd_rule", user="john")
注册新的目标 HBAC 服务

在将其附加到 HBAC 规则前,您必须注册一个目标服务。在本例中,您注册 chronyd 服务。

api.Command.hbacsvc_add("chronyd")
将注册的服务附加到 HBAC 规则中

在本例中,您将 sshd 服务附加到 sshd_rule HBAC 规则中。默认情况下,该服务在 IPA 中注册,因此无需事先使用 hbacsvc_add 进行注册。

api.Command.hbacrule_add_service("sshd_rule", hbacsvc="sshd")
将主机添加到 HBAC 规则中

在本例中,您要 workstations 主机组添加到 sshd_rule HBAC 规则中。

api.Command.hbacrule_add_host("sshd_rule", hostgroup="workstations")
测试 HBAC 规则

在本例中,您对 workstation.ipa.test 主机使用 sshd_rule HBAC 规则。它以来自用户 john 的服务 sshd 为目标。

api.Command.hbactest(user="john", targethost="workstation.ipa.test", service="sshd", rules="sshd_rule")
启用 HBAC 规则

在本例中,您启用 sshd_rule HBAC 规则。

api.Command.hbacrule_enable("sshd_rule")
禁用 HBAC 规则

在本例中,您禁用 sshd_rule HBAC 规则。

api.Command.hbacrule_disable("sshd_rule")
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.