Activate Session 命令详情
更新时间:2025/06/26
在Gitcode上查看源码修订记录
| openUBMC版本号 | 修订日期 | 修订人 | 修订内容 |
|---|---|---|---|
| 25.06 | 2025/06/26 | pengqiang-gs | 初稿,新增命令详情 |
基本信息
功能说明
标准命令,激活挑战之后的会话。 While a Session ID is returned from the response to the Get Session Challenge command, the session must be activated using the Activate Session command before it can be used for sending other authenticated commands.
权限
ReadOnly
命令信息
请求信息
| 字节顺序 | 域取值说明 |
|---|---|
| 1 | Authentication Type for Challenge [7:4] - reserved [3:0] - Authentication Type. This value must match with the Authentication Type used in the Get Session Challenge request for the session. In addition, for multi-session channels this value must also match the authentication type used in the Session Header. 0h = none. No hashing or authentication done on session packets. Authentication Code field is not present. 1h = MD2 2h = MD5 3h = reserved 4h = straight password / key 5h = OEM proprietary all other = reserved |
| 2 | Maximum privilege level requested. Indicates the highest privilege level that may be requested for this session. This privilege level must be less than or equal to the privilege limit for the channel and the privilege limit for the user in order for the Activate Session command to be successful(completion code = 00h). Once the Activate Session command has been successful, the requested privilege level becomes a ‘session limit’ that cannot be raised beyond the requested level, even if the user and/or channel privilege level limits would allow it. I.e. it takes precedence over the channel and user privilege level limits. [7:4] - reserved [3:0] - Requested Maximum Privilege Level 0h = reserved 1h = Callback level 2h = User level 3h = Operator level 4h = Administrator level 5h = OEM Proprietary level all other = reserved |
| 3:18 | For multi-session channels: (e.g. LAN channel): Challenge String data from corresponding Get Session Challenge response. For single-session channels that lack session header (e.g. serial/modem in Basic Mode): Clear text password or AuthCode. |
| 19:22 | Initial Outbound Sequence Number = Starting sequence number that remote console wants used for messages from the BMC. (LS byte first). Must be non-null in order to establish a session. 0000_0000h = reserved. If the Activate Session command is executed after a session has been established, the Outbound Sequence Number will be reset to the given value. This will take effect for the corresponding Activate Session response and subsequent commands under the session. |
响应信息
| 字节顺序 | 域取值说明 |
|---|---|
| 1 | Completion Code 00h = success 81h = No session slot available (BMC cannot accept any more sessions) 82h = No slot available for given user. (Limit of user sessions allowed under that name has been reached) 83h = No slot available to support user due to maximum privilege capability. (An implementation may only be able to support a certain number of sessions based on what authentication resources are required. For example, if User Level Authentication is disabled, an implementation may be able to allow a larger number of users that are limited to User Level privilege, than users that require higher privilege.) 84h = session sequence number out-of-range 85h = invalid Session ID in request 86h = requested maximum privilege level exceeds user and/or channel privilege limit |
| 2 | Authentication Type for remainder of session The primary use of this parameter is to report whether per-message authentication will be used for IPMI message packets that follow the Activate Session packet. Per-message authentication is a channel configuration option that is set using the Get User Name command. If per-message authentication is disabled, the Authentication Type will be returned as ‘none’, and all subsequent packets for the session can either use ‘none’ as the authentication type or use the Authentication Type that was used in the request. Otherwise this value will be set to the Authentication Type that was used in the request. Note that Activate Session requests and responses are always required to be authenticated per what is returned by the Get Session Challenge command for the user. [7:4] - reserved [3:0] - Authentication Type 0h = none. No hashing or authentication done on session packets. Authentication Code field is not present. 1h = MD2 2h = MD5 3h = reserved 4h = straight password / key 5h = OEM proprietary all other = reserved |
| 3:6 | Session ID use this for remainder of session. While atypical, the BMC is allowed to change the Session ID from the one that passed in the request. |
| 7:10 | Initial inbound seq# Sequence number that BMC wants remote console to use for subsequent messages in the session. The BMC returns a nonnull value for multi-session connections and returns null (all 0’s) for single-session connections. |
| 11 | Maximum privilege level allowed for this session [7:4] - reserved [3:0] - Maximum Privilege Level allowed 0h = reserved 1h = Callback level 2h = User level 3h = Operator level 4h = Administrator level 5h = OEM Proprietary level all other = reserved |
命令样例
样例1:激活当前会话
- 请求:
- 响应: