代码仓
中
Get auth token
更新时间: 2025/06/26
在AtomGit上查看源码

39h-获取身份验证令牌(Get-auth-token) ​

修订记录 ​

openUBMC版本号修订日期修订内容
25.062025/06/26初稿,新增命令详情

基本信息 ​

功能说明 ​

获取身份验证令牌。

权限 ​

UserMgmt

命令信息 ​

请求信息 ​

字节顺序域取值说明
NetFn30h
CMD94h
1:3Manufacturer ID,LS Byte first。长度固定3个字节,例如,某厂家ID是2011,对应十六进制为0x0007DB,则字节序为第1个字节为DBh、第2个字节为07h、第3个字节为00h。
4Sub command,子命令=39h
5SSO对应BMC的角色组ID
data1-1:Role ID
2-普通用户
3-操作员
4-操作员(带内身份验证令牌最高为操作员)
6会话类型
0-WEB(包括WEB或通过WEB打开KVM)
1-redfish
7[bit7:2]-预留
[bit1:0]-user type:
0-仅本地用户
1-域用户
8IP协议
data1–1:IP协议
0-IPv4
1–IPv6
9:24会话最终用户的IPv4(byte9~byte12)或IPv6地址,MSByte first,用于校验获取token与使用该token建立会话是否是同一人,防止token被盗用。
下面是会话源端(如SMM)的用户名(可能是本地用户名,也可能是LDAP账号),LDAP账号时可能需要分帧,对于内部redfish会话时,byte25~byte27都填0。
25[7:1]:reserved
[0]:级联标志
0=是最后一帧数据
1=后面还有数据
26Offset,写入的数据偏移,从0开始。
当数据较长需要多次写入时,一定要从头到尾按顺序写入,不能乱序。
27Length,写入长度.
28:N写入的数据

响应信息 ​

字节顺序域取值说明
1Completion Code
2:4Manufacturer ID,LS Byte first。长度固定3个字节,例如,某厂家ID是2011,对应十六进制为0x0007DB,则字节序为第1个字节为DBh、第2个字节为07h、第3个字节为00h。
5:Ntoken

命令样例 ​

获取身份验证令牌 ​

请求:

ipmicmd -k "0f 00 30 94 db 07 00 39 02 01 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00" smi 0

响应:

0f 31 00 94 c0

示例假定设备繁忙,仅返回完成码C0h。请求为IPv6地址 ::1 的内部Redfish会话申请普通用户令牌;成功时当前实现返回64字节令牌,超过用户指南中ipmicmd的36字节限制,读取完整成功响应应使用ipmitool。

返回到索引 ​