"clients":[]

本节是一个数组,包含使用此 RADIUS 服务器的每个 RADIUS 客户机 (NAS) 的详细信息。

格式

“clients”:[
  {
    “name”:”client1”,
    “client-id”:”xxx”,
    …
  },
  {
    “name”:”client2”,
    “client-id”:”xxx”,
    …
  },
  …
]

"name": " client1 "
客户端条目的名称值。 此值对所有客户端而言必须是唯一的。
"obf-secret": "fgb3A1/rOkxW0ogmlJ5Ex23PMrn9/vDrb93YFMwJ/Jg="
经过混淆处理的密钥值。 可作为“secret”选项的更佳替代方案。

要在 Windows 系统上生成此值,请执行以下命令(位于 C:\Program Files\IBM\IbmRadius\

IbmRadius.exe -obf
        "the-client-secret"
在 Linux 系统上使用以下命令。
/opt/ibm/ibm_radius/ibm_radius_64 --obf
        "the-client-secret"
"voice-in-choice": false
将用户已注册的语音 2FA 添加到 2FA 选项列表中,供用户在身份验证过程中使用。
"verify-message": "您是否批准来自 client1 的此请求?"
发送到用于 2FA 批准的设备上的消息,用于提示用户。 默认情况下,发送的消息是"Do you approve this request from {name} ?"其中 {name} 即为该 "name":"client" 值。
"user-name-attr": "userName"
根据用户 Verify 所含属性的匹配情况,将提供给 RADIUS 的用户名映射到相应 IBM® Verify 用户。 otherUserName例如,RADIUS 用户名可能会被添加到一个名为 的 IVerify 用户自定义属性中。 该自定义属性指定
"user-name-attr": "urn:ietf:params:scim:schemas:extension:ibm:2.0:User:customAttributes.otherUserName"
默认情况下,系统会使用用户属性 "userName" 来查找与RADIUS用户名匹配的用户 Verify
"ignore-isvalidated": false

当设置为 true 时,RADIUS 客户端可以使用未经验证的 2FA 方法。

"use-first-device": false
当设置为 true 且 为 "auth-method" "password-and-device"时,RADIUS 客户端将使用该用户列表中排在首位的设备,即使用户在 2FA 中拥有多台设备也是如此。
"提示词": {}
此配置块用于自定义“ 2FA ”选项提示。 此配置块中可以包含以下条目:
"choice-start": "{prompt}"
字符串“ {prompt} ”会紧跟在“ 2FA ”选项列表之前输出。
"choice-end": "{prompt}"
在列出 2FA 选项之后,会立即输出 {prompt} 字符串。 此 {prompt} 范围内的任何 %T 值都会被替换为一个数字,该数字代表选项的总数。
"trans-email": "{prompt}"
“trans-sms”: "{prompt}"
"totp": "{prompt}"
"电子邮件": "{prompt}"
"短信": "{prompt}"
"voice": "{prompt}"
“设备在线状态”: "{prompt}"
"device-biometric": "{prompt}"
这些参数用于为每种 2FA 类型自定义提示词选项。 可以应用以下替换:
  • %I “ 2FA ”选项索引
  • %N 与 2FA 选项名称相关联的值(例如,一个电子邮件地址)
  • %T 选项总数
prompts 例如,如果配置是
"prompts": {
    "choice-start": "Choose one of:\n",
    "email": "%I) %D\n",
    "sms": "%I) %D\n",
    "totp": "%I) TOTP\n",
    "choice-end": "Your choice (1->%T) "
},
那么生成的 2FA 选项可能如下所示:
Choose one of:
1) us**@us.ibm.com
2) #######4567
3) TOTP
Your choice (1->3)
"secret":"passw0rd"

该值是必需的。 此密码是 IBM RADIUS 服务器和 RADIUS 客户机 (NAS) 之间的共享密钥。 该值用于在服务器和客户机之间加密密码和签署响应包。

注意: 此密钥可以采用混淆形式设置。 使用 命令 IbmRadius.exe -obf <password> 生成混淆版本,并使用以下替代设置:
“obf-client-secret”:”KsjKZsKrbbgNaPe7+kYIcOyWzZdzYNtF4KlCyYoNEFA=”,
.
"address":"192.168.0.129"

该值是必需的。 此地址是 RADIUS 客户机 (NAS) 来自的 IP 地址包,以及返回响应的位置。 此地址用于将 RADIUS 客户机 (NAS) 与相应的密钥值相匹配。

"mask": "255.255.255.255"
该值是可选的,并且缺省为 "255.255.255.255"。 此设置是 "address" 配置设置随附的网络掩码,用于将传入客户机与 RADIUS 客户机匹配。 “*” "255.255.255.255" 表示匹配的客户端必须拥有与“ "address" *”完全相同的 IP 地址。 掩码 "0.0.0.0" 表示任何传入客户机都可能与此客户机匹配。 掩码 "255.255.0.0" 与其前两个 IP 地址八位元和 "address" 中前两个 IP 地址八位元相一致的传入客户机匹配。 如果有多个匹配的客户机,那么将选择匹配“更具体的”的掩码。 例如,对于两个客户机:
Client1 address: 192.168.0.0, mask: 255.255.255.0

Client2 address: 192.168.0.1, mask: 255.255.255.255
  • 如果传入客户机地址为 192.168.0.1,那么将与 Client2 相匹配 。
  • 如果传入客户机地址为 192.168.0.2,那么将与 Client1 相匹配 。
  • 如果传入客户机地址为 192.168.1.1,那么将没有任何客户机与之相匹配。
"auth-method":"password-then-smsotp"

该值是可选的,并且缺省为 “password”。 此方法是认证用户时所需的认证方法。 可接受的值如下所示:

表 1. 允许的值
描述
device 仅验证了设备 2FA 的操作。 密码值将被忽略。 除此之外,此身份验证方法的工作原理与 “密码和设备 ”方式相同。
密码 仅需要有效密码。
password-and-totp 必须在单个值中提供密码和 TOTP 值。 您可以配置将密码值还是 TOTP 值放在值的首位。 请参阅 password-first 设置。 要配置用于分隔两个值的字符,请参阅 password-separator 设置。
password-then-totp 提供有效密码后,会发送后续 RADIUS 质询来请求 TOTP 值。
password-then-smsotp 提供有效密码后,会将 SMS 消息发送到用户注册的具有 OTP 值的移动设备。 然后会发送 RADIUS 质询来请求 SMSOTP 值。
password-then-emailotp 提供有效密码后,将向用户发送带有 OTP 值的电子邮件消息。 然后会发送一个 RADIUS 质询来请求 EmailOTP 值。
password-then-transsmsotp 提供有效密码后,会将带有 OTP 值的 SMS 消息发送到用户概要文件中的手机号码。 然后会发送一个 RADIUS 质询来请求 OTP 值。 不同于 password-then-smsotp,不需要为 SMS OTP 注册用户的手机号码。
password-then-transemailotp 提供有效密码后,会将带有 OTP 值的电子邮件消息发送到用户概要文件中的电子邮件地址。 然后会发送一个 RADIUS 质询来请求 OTP 值。 不用于 password-then-emailotp,不需要为电子邮件 OTP 注册用户的电子邮件地址。
password-then-choice-then-otp

提供有效密码后,会发送 RADIUS 质询,请求您选择要使用的某个用户的 OTP 注册。 发送选项后,会发送 RADIUS 质询来请求选项的 OTP 值。

注意:

如果仅在一个 OTP 方法中注册该用户,那么会跳过选择质询步骤,并且会直接向用户质询 OTP 值。

如果用户没有注册任何 OTP,那么 reject-on-missing-auth-method 生效。

password-and-device 提供有效密码后,会发送 RADIUS 质询来请求选择要使用的用户的某个有效注册设备。

发送设备选项后,会发送与设备支持的最高优先级认证机制相对应的 RADIUS 质询。

注意:
  • 认证机制(例如,Face、Fingerprint 或 User Presence)可由管理员配置。 如果启用了多个机制,那么将按优先级顺序处理这些机制。 将始终选择所选设备支持的最高优先级机制。
  • 要使已注册的设备有效,它必须支持至少一个由管理员配置的有效认证机制。
  • 如果只存在一个支持有效机制的注册设备,那么将跳过设备选择步骤。 将向用户质询该设备的优先级机制。
  • 如果不存在支持有效机制的已注册设备,那么将发出 REJECT 响应。
密码和TOTP或设备

如果在用户提供的密码中检测到 TOTP 值,则采用与“password-and-totp”方法等效的处理方式。 有关更多信息,请参阅 password-and-totp

如果在用户提供的密码中未检测到TOTP值,则采用与“密码和设备”方法等效的方式。 有关更多信息,请参阅 “密码与设备”

注意: 如果用户的密码以六个数字和一个分隔符开头或结尾,RADIUS 服务器可能会将其误认为嵌入式 TOTP 值。 例如,"密码优先"选项设置为 false,且密码以六个数字和分隔符开头。 同样地,如果该选项设置为 true,且密码以分隔符和六位数字结尾,也会出现相同的情况。 无论哪种情况,设备推送都无法作为 RADIUS 身份验证的第二重验证因素。 RADIUS 服务器将其解释为 TOTP 值,并尝试对其进行验证。 验证失败,身份验证被拒绝。
totp 该密码被视为仅为一个TOTP(基于时间的一次性密码)值,且仅对TOTP 2FA 进行验证。 未进行 1FA 验证。
"password-first":false
该值是可选的,并且缺省为 false。 此设置控制密码是否是用户为 password-and-totp 认证方法提交的密码-分隔符-OTP 并置中的第一个值。

例如, OTP 值是 1234,用户的密码是 Password,而分隔符为 :。 如果密码首位设置为 false,那么用户需输入“1234:Password”。 如果密码首位设置为 true,那么用户需输入“Password:1234”。

可以使用密码分隔符设置来配置分隔符。

"password-separator":":"
该值是可选的,并且缺省为 :。 此设置配置用于分隔用户为 "password-and-totp" 认证方法提交的密码和 OTP 值的字符。
"no-devices-in-choice":true
该值是可选的,并且缺省为 false。 如果设置为 true,那么用户的 IBM Verify 设备不会显示为认证方法选项。
"reject-on-missing-auth-method":false
该值是可选的,并且缺省为 true。 如果设置为 false,并且没有为第二个因子 OTP 注册用户,那么系统不会提示用户,并且将成功认证用户。 如果设置为 true,并且没有为第二个因子 OTP 注册用户,那么将不会对该用户进行认证。
"otp-prompt":"Enter OTP %C:"
此值是可选的,缺省情况下为英文字符串 "Enter OTP %C:"。 RADIUS 质询包中将返回此字符串,以输入 RADIUS 响应变量 "Reply-Message" (18)。 许多 RADIUS 客户机 (NAS) 在请求用户输入时显示此字符串。 提示中的任何 %C 都将替换为 OTP 关联,或者替换为 TOTP 的空字符串。 提示中的任何 %% 都将替换为单个 %
"user-name-append": "Verify@Realm"

此值为可选,缺省值为空字符串 ("")。 该值将附加到提供给 RADIUS 登录的用户名。 该值与用户名一起使用以在 Cloud Directory 中查找用户。 例如,如果 RADIUS 用户是“scott”和“user-name-append": "@VerifyRealm”,那么服务器将在用户注册表中找到“scott@VerifyRealm”。

"use-local-pwd-check":false
此值 在 Linux 系统上运行时不可用。 It is optional and defaults to false. 如果设置为 true,那么密码将向服务器的本地帐户数据库而不是云目录认证。
注意: 本地账户数据库和云目录中的用户名必须一致。 此选项不能与 use-external-ldap 一起使用。
"local-domain":"."
在 Linux 系统上运行时,此值不可用。 该选项仅在 use-local-pwd-checktrue 时生效,并会影响本地 Windows 密码身份验证检查。 当用户使用不包含 Windows 域值的用户名登录 RADIUS 时,RADIUS 服务器针对域设置为 "." 的 Windows 帐户验证用户。 当域名设置为“.”时, 该账户密码仅与本地账户数据库进行验证。 此选项允许使用“.” 可通过指定 Windows 域名称或空字符串值 "" 来覆盖此设置。
注意:
  • 如果名称包含“\”或“@”字符,那么 RADIUS 用户名被视为已指定域。 例如,mydomain\testusertestuser@mydomain.com
  • RADIUS 服务器使用 Windows 函数 LogonUserA() 以获取有关域值的其他详细信息。 参见 LogonUserA 函数 ( winbase.h ) - Win32 apps
"use-external-ldap":false
该值是可选的,并且缺省为 false。 根据已配置的 LDAP 传递身份源认证用户。 当设置为 true 时,必须指定 "identity-source" 值。 此选项不能与 use-local-pwd-check 一起使用。
"identity-source":"869e5652-bbb1-4f9b-8e55-0ae53d3bc30b"
仅当 "use-external-ldap" 设置为 true 时,此值才是必需的,否则它是可选的。 它指定用于认证用户的身份源。 可以从 https://<tenant>/verify/v1.0/authnmethods/password 的 GET 请求检索已配置的身份源以及标识的集合。
"choice-prompt":"Please select an authentication method from the list: \r\n"
此值为可选。 缺省情况下为空字符串:""。 允许配置选项行提示的前缀。 当需要用户选择认证方法时,会显示选项行提示及其前缀。
"choice-line-prompt":"Enter %I for %D \r\n"
此值为可选。 它允许定制选项提示中的每个选项。 对于每个可供用户使用的选项,都会生成一个选项提示。 缺省值为 "%I) %D\r\n",其中 %I 替换为选择选项的字符,%D 是选项描述。
"de-prompt":" 推送通知已发送到设备 [%D] 。"
此值为可选。 它允许定制 device/fingerprint/userpresence 提示。 默认值为 "A push notification has been sent to your device [%D]. Please refresh your IBM Verify application if you did not receive it." ,其中 %D 被设备描述替换。
"device-choice-prompt":"\r\nYou have multiple authenticators, please choose one by entering a number:"
当使用 时 “password-and-device”“auth-method” ,用户可能已注册了多台设备。 RADIUS 服务器提示用户选择要使用的设备。 此选择是选项列表的前缀。 它缺省设置为英文消息:"\r\nYou have multiple authenticators, please choose one by entering a number:"
注意: 某些 RADIUS 客户端无法处理回车和换行字符 \r\n 。如果客户端未做出正确响应,请在格式配置中省略这些字符后重试。
"device-choice-line-prompt":"\r\n%I/%T: %D"
当系统提示您选择设备时,此参数定义每个设备选项的格式。 缺省值为以下消息:"\r\n%I/%T: %D"
其中
  • %I - 替换为用户需要输入的设备的索引以选择设备。
  • %T - 替换为设备选项总数。
  • %D - 替换为用户设备描述。
注意: 某些 RADIUS 客户端无法处理回车和换行字符 \r\n 。如果客户端未做出正确响应,请在格式配置中省略这些字符后重试。
"transients-in-choice":false
如果 "transients-in-choice" 配置行设置为 "true",那么 OTP 认证选项(基于用户云目录概要文件属性列在 "transient-choices" 中的 OTP 认证选项)将包含在内,无论这些选项是否注册为接受 SMS 或电子邮件 OTP。
"transient-choices": ["emails", "phoneNumbers"]
此值为可选。 其缺省情况下为 ["emails","phoneNumbers"]。 此设置控制用户可以使用哪些瞬态 OTP 认证选项。
"no-enrollments-in-choice":false
此值为可选。 其缺省情况下为 false。 如果 "no-enrollments-in-choice" 配置行设置为 "true",那么用户的已注册 OTP 方法(包括 TOTP、电子邮件和 SMS)将不会作为认证选项包括在内。
"poll-device":false
此值为可选。 其缺省情况下为 false。 如果设置为 true,则服务器会轮询 Verify 以获取验证状态,而不是提示用户并等待响应。
"poll-timeout":"60"
此值为可选。 其缺省情况下为 60。 此属性用于设置在创建设备验证后,服务器进行轮询 Verify 的最大秒数。 如果 "poll-device" 设置为 false,那么它不起作用。
"poll-delay":"2"
此选项确定每次轮询之间的延迟(以秒为单位)。 RADIUS 服务器会定期进行 Verify 轮询,以确定是否接受或拒绝该设备上用户的身份验证。 缺省设置为每 2 秒轮询一次。 除非该值为 >= 1 and < (“poll-timeout” / 2)
"auth-method-order": [ "fingerprint", "userPresence" ]
定义了设备的 PUSH 方法及其执行顺序。
"id-link-attr": "userName"
当租户中定义了多个身份来源且启用了身份关联时,此配置项用于指定通过“user-name-attr”定位的用户中,用于标识用于验证密码的用户名的属性名称。 以下是一些值的示例:
  • "urn:ietf:params:scim:schemas:extension:ibm:2.0:user:linkedAccounts.myOnPremIdSource"
  • "emails.work"
  • "urn:ietf:params:scim:schemas:extension:ibm:2.0:user:customAttributes.myCustomAttribute"
  • "userName"
"用户名表": [ {{ "from": "{radius-user-name} ", "收件人": "{isv-user-name}" },... ]
提供了一个映射数组,将 Radius 客户端提供的用户名映射到用户名 Verify
"use-mapping-user-id": false
如果设置了“id-link-attr”,且此选项设为 true,则将使用通过“user-name-attr”定位到的用户的 MFA 设置,而非“id-link-attr”所引用的用于身份验证的设置。
"require-msg-auth": false
1.0.11.0 及更高版本的 RADIUS 服务器在检测到 Message-Authenticator 属性时,会始终对其签名进行验证。 它们总是在响应中添加一个 Message-Authenticator 属性签名。 “Message-Authenticator” 属性在 RFC 3579 的第 3.2 节中进行了规定。 如果此选项设置为 true,则 RADIUS 服务器必须在 Access-Request 数据包中检测到 Message-Authenticator 属性且该属性有效,才能处理该请求。
"reject-bad-packet": false
默认情况下,RADIUS 服务器会忽略格式不正确或签名不正确的请求。 当此选项设置为 true时,RADIUS 服务器会返回一个 Access-Reject 响应。