跳到主要内容

CLI用户访问级别

通过 Solace CLI 提供的每个命令都有特定的范围和访问级别要求。因此,CLI 用户只能使用 CLI 提供的命令,如果该用户的配置访问级别足以满足命令的范围。

为每个 CLI 用户账户分配访问级别,以控制用户被允许执行的命令类型。以下访问级别可用:

CLI 用户不能执行 CLI 命令,除了与用户自身账户的登录和显示偏好设置相关的几个命令.

  • 只读

CLI 用户可以执行 CLI 命令以显示事件代理的操作信息,但不能更改其配置。监控应用程序通常使用只读访问级别.

  • 网格管理器

CLI 用户可以执行 CLI 命令以显示事件代理的操作信息,并执行一些事件代理配置——包括与客户端连接、网格连接和客户端安全功能相关的所有方面。此访问级别适用于需要访问这些命令但不允许全局读写访问的用户。负责管理事件网格的管理用户通常会被授予网格管理器访问级别.

  • 读写

CLI 用户可以执行 CLI 命令以显示事件代理的操作信息,并执行大多数事件代理配置——包括创建具有无访问级别的其他 CLI 用户账户.负责配置事件代理或消息 VPN 服务的管理用户通常会被授予读写访问级别.

  • 管理员

CLI 用户可以在事件代理上执行所有 CLI 命令。这包括控制事件代理范围内的认证和授权参数以及创建其他管理员用户.(此访问级别只能应用于全局范围的命令.)

有关每个访问级别提供的功能的详细信息,请参阅 CLI 命令访问级别功能.

CLI命令范围

CLI 用户可以被配置为管理整个事件代理和/或消息 VPN 的子集。为了允许这种级别的控制,为每个 CLI 用户账户分配了以下不同范围的访问级别:

  • 全局

全局访问级别决定了用户在整个事件代理中被允许做什么.

  • 消息 VPN

一个或多个消息 VPN 访问级别决定了 CLI 用户在消息 VPN 内被允许做什么.

分配的全局访问级别是全面的,并优先于消息 VPN 访问级别。它为 CLI 用户提供了对所有 CLI 命令的相同访问级别,包括具有消息 VPN 范围的命令.要进行配置,请参阅配置全局访问级别.

除了全局访问级别外,还分配了消息 VPN 访问级别,以便具有无或只读全局访问级别的用户可以根据需要被授予对消息 VPN 范围的 CLI 命令的增加访问权限。分配的消息 VPN 访问级别只能增加——不能减少——CLI 用户从其分配的全局访问级别中实际获得的消息 VPN 访问级别。消息 VPN 访问级别可以通过以下方式分配:

  • 默认消息 VPN 访问级别

这在所有已配置的消息 VPN 中提供了一致的消息 VPN 访问级别。始终为 CLI 用户分配默认消息 VPN 访问级别,但如果它大于用户的分配全局访问级别,则它只影响 CLI 用户对消息 VPN 范围的 CLI 命令的访问.有关更多信息,请参阅配置消息 VPN 默认访问级别.

  • 消息 VPN 异常

这些是默认消息 VPN 访问级别的每个消息 VPN 异常。这些异常可以增加或减少指定消息 VPN 的分配默认消息 VPN 访问级别.有关更多信息,请参阅配置消息 VPN 访问级别异常.

分配全局范围和消息 VPN 范围的访问级别允许根据用户的行政角色授予适当的访问权限。考虑以下两个示例:

  • 系统范围的管理员可以被分配全局访问级别为管理员,这允许该用户运行事件代理上的任何命令,无论是全局范围的还是消息 VPN 范围的命令.
  • 需要在消息 VPN 内监控操作统计信息的用户可以被分配全局访问级别为无,并为该消息 VPN 分配读取访问级别的消息 VPN.

出于安全原因,只有少数管理员应该被授予具有全局访问级别为“读写”或“管理员”的 CLI 用户账户的访问权限.一般来说,消息 VPN 范围的 CLI 命令包含“message-vpn”关键字,或者它们包含在具有“message-vpn”关键字的 CLI 模式中。例如,配置客户端用户名、持久端点和分布式缓存的命令是基于每个消息 VPN 创建的:

solace(configure)# client-username <username> message-vpn <vpn-name>
solace(configure/client-username)# acl-profile <name>
...
solace(configure)# message-spool message-vpn <vpn-name>
solace(configure/message-spool)# create queue <name>
...
solace(configure)# message-vpn <vpn-name>
solace(configure/message-vpn)# distributed-cache-management

分配访问级别

有关分配访问级别的信息,请参阅使用外部认证配置默认 CLI 用户访问级别.

创建和管理CLI用户账户

您创建和删除用户账户以及更改现有用户账户的访问级别和密码的能力取决于您使用的用户账户的全局访问级别。每个全局访问级别的通用限制如下:

  • 具有全局访问级别为管理员的 CLI 用户可以无限制地创建、删除或更改其他 CLI 用户账户.
  • 具有全局访问级别为读写的 CLI 用户账户可以:
    • 只能创建或删除具有全局访问级别为无的其他 CLI 用户账户
    • 为任何 CLI 用户账户设置消息 VPN 访问级别
    • 更改其自身用户账户和具有无访问级别的用户账户的密码
  • 具有全局访问级别为网格管理器、只读或无的 CLI 用户账户只能更改其自身用户账户的密码.

当对 CLI 用户账户进行访问级别和密码更改时,这些更改不会影响使用该用户账户的任何活动会话.更改将在用户下次登录该 CLI 用户账户时生效.

有关 CLI 用户账户配置的具体信息,请参阅配置内部 CLI 用户账户.

CLI命令访问级别功能

可以为 CLI 用户分配多种可能的全局访问级别和消息 VPN 访问级别,具有各种功能和限制.

CLI 用户只能看到他们被授权执行的命令。这意味着,例如,帮助命令不会显示未经授权的命令,CLI 制表符自动完成不会为用户未被授权的命令完成命令。此外,CLI 命令中使用的通配符字符不会允许用户查看或访问他们未被授权的网络资源,例如消息 VPN 或客户端配置文件.

要确定执行命令所需的最低访问级别,您可以查找用于定义或设置配置参数的命令在 CLI 命令参考中的使用情况。在命令的显示帮助中,MINIMUM REQUIRED SCOPE/ACCESS LEVEL: 部分列出了所需的访问级别.

img示例

solace(admin/cspf)# neighbor ?
COMMAND:
neighbor <physical-router-name>

DESCRIPTION:
Enter neighbor admin mode

MINIMUM REQUIRED SCOPE/ACCESS LEVEL:
global/mesh-manager

PARAMETERS:
<physical-router-name> - [1..64 chars] Physical Router name of the
neighbor; may contain wildcard characters *
and ?

或者,您可以查看 CLI 命令范围和访问级别要求部分,以获取所有命令及其所需访问级别的列表.

全局访问级别

下表提供了可以分配给 CLI 用户的可能全局访问级别的信息,以及这些访问级别所呈现的许多功能和限制.

级别功能和限制...
CLI 用户对最小的 CLI 命令有访问权限,并且没有 jail 文件系统访问权限。但是,具有此全局访问级别的 CLI 用户可以:
  • 使用 ?, help 和 tree 命令(未经授权的命令不显示)。
  • 使用 show authentication current-user 用户 EXEC 命令查看其自身的访问级别信息。
  • 如果用户通过内部数据库进行认证,则可以更改其自身的密码。
  • 根据需要导航通过命令模式以执行授权命令。
  • 注销当前会话。
  • 启用/禁用报警显示。
  • 设置用于分页输出的行数。
  • 启用/禁用严格的列包装。
  • 断开属于当前用户的 CLI 会话(但不包括当前会话)。
    具有全局访问级别为无的 CLI 用户可以通过为其分配默认消息 VPN 访问级别为只读或读写或消息 VPN 访问级别异常为只读或读写来获得对消息 VPN 命令的额外访问权限。 | | 只读
    (全局访问级别的默认值。)| 除了全局访问级别为无所提供的功能外,具有全局访问级别为只读的 CLI 用户还可以:
  • 使用 show 用户 EXEC 命令查看事件代理和消息 VPN 的状态和配置信息。
  • 清除事件(但不清除统计信息)。
  • 访问 jail 文件系统。
    具有全局访问级别为只读的 CLI 用户可以通过为其分配默认消息 VPN 访问级别或消息 VPN 访问级别异常为读写来获得在消息 VPN 级别的额外功能。 | | 网格管理器| 除了全局访问级别为只读所提供的功能外,具有网格管理器访问级别的 CLI 用户还可以:
  • 断开桥接。
  • 刷新客户端证书吊销列表。
  • 创建、修改和删除 MNR 邻居链接和队列。
  • 创建、修改和删除 DMR 的所有方面,包括集群、集群链接和 DMR 桥接。
  • 发出冗余回退活动和释放活动请求。
  • 启动和停止消息 spool 整理。
  • 清除桥接、压缩、ACL 日志、订阅匹配日志、消息 spool、复制、SMRP 和客户端的统计信息。
  • 创建、修改和删除客户端配置文件。
  • 创建、修改和删除重放日志。
  • 配置复制。
  • 配置客户端密码套件。
  • 配置消息 VPN 别名。
  • 配置消息 VPN 客户端认证。
  • 配置消息 VPN 桥接。
  • 配置消息 VPN 订阅导出策略。
  • 配置 REST 服务的 TLS。
  • 配置 SEMP 通过消息总线设置。
  • 配置 TLS CRIME 利用保护。
    具有全局访问级别为网格管理器的 CLI 用户可以通过为其分配默认消息 VPN 访问级别或消息 VPN 访问级别异常为读写来获得在消息 VPN 级别的额外功能。 | | 读写| 除了全局访问级别为网格管理器所提供的功能外,具有读写访问级别的 CLI 用户还可以执行大多数配置更改,包括:
  • 配置默认消息 VPN 访问级别
  • 创建消息 VPN 访问级别异常
  • 创建、删除或重命名具有无访问级别的内部认证 CLI 用户账户
  • 通过 reload 特权 EXEC 命令从当前配置文件重新启动事件代理 | | 管理员| CLI 用户对所有全局和消息 VPN 范围的 CLI 命令都有完全访问权限(它提供了有效的消息 VPN 访问级别为读写)。
    一些只能通过全局访问级别为管理员执行的配置更改或操作包括:
  • 创建、删除或重命名具有大于无的访问级别的内部认证 CLI 用户账户。
  • 更改任何 CLI 用户账户的全局访问级别。
  • 更改具有大于无的全局访问级别的 CLI 用户的认证配置。
  • 更改 LDAP 组中 CLI 用户的认证配置。
  • 通过 bootreload default-configreload config <config-file> 特权 EXEC 命令重新启动事件代理。
  • 在 CLI 的认证 CONFIG 级别进行更改。(唯一的例外是当 CLI 用户被授予足够的默认消息 VPN 访问级别时,可以在消息 VPN 级别进行更改。)
  • 更改事件代理当前运行的配置数据库文件——更改到不同的配置数据库可能会导致不同的认证配置。
  • 生成创建事件代理当前配置所需的命令序列。
  • 将配置文件复制到和从事件代理。
  • 创建事件代理配置文件的本地备份。
  • 显示位于事件代理目录中的文本文件的内容。
  • 显示内部调试信息。
  • 将多个诊断文件和命令输出收集到一个诊断文件中。
  • 在冗余部署中为事件代理设置预共享认证密钥。
  • 为事件代理设置服务器证书。 |

VPN访问级别

下表提供了可以分配给 CLI 用户的可能消息 VPN 访问级别的信息,以及这些访问级别所呈现的许多功能和限制.

级别功能和限制...
(默认消息 VPN 访问级别的默认值。)CLI 用户对消息 VPN 范围的 CLI 命令没有访问权限。
只读CLI 用户可以:
  • 使用 show 命令查看消息 VPN 的状态和配置信息
  • 清除消息 VPN 事件(但不清除统计信息) | | 读写| 除了消息 VPN 访问级别为只读所提供的功能外,具有消息 VPN 访问级别为读写的 CLI 用户还可以执行大多数消息 VPN 范围的配置更改。
    一些被禁止的配置更改或操作(需要更高的全局访问级别为读写或管理员,因为它们影响系统资源)包括:
  • 配置客户端配置文件
    全局系统管理员预计会创建定义消息 VPN 内客户端预期行为的客户端配置文件。然而,限制在消息 VPN 范围内的 CLI 用户确实可以访问显示客户端配置文件和将客户端配置文件分配给客户端用户名对象。
  • 创建或删除消息 VPN
  • 配置影响系统资源的消息 VPN 参数,例如:
    • export-policy
    • management-message-vpn
    • max-connections
    • max-subscriptions
    • semp-over-msgbus
    • max-egress-flows
    • max-endpoints
    • max-ingress-flows
    • max-spool-usage
    • max-transacted-sessions
  • 配置以下消息 VPN 参数:
    • 消息 VPN 认证
    • 复制桥接配置
    • 复制状态和复制 [no] shutdown |

访问级别关系

下图总结了每个访问级别之间的关系。更具体地说,它显示了每个访问级别如何包含前一个访问级别的权限,并且它还显示了默认情况下每个全局访问级别中包含的消息 VPN 访问级别权限.

img