Activate Session 命令详情
更新时间:2025/06/26
在Gitcode上查看源码

修订记录

openUBMC版本号修订日期修订人修订内容
25.062025/06/26pengqiang-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

命令信息

请求信息

字节顺序域取值说明
1Authentication 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
2Maximum 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:18For 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:22Initial 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.

响应信息

字节顺序域取值说明
1Completion 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
2Authentication 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:6Session 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:10Initial 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.
11Maximum 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:激活当前会话

  • 请求:
  • 响应:

返回到索引