config.json 文件

此配置文件必须为 JSON 格式。 它包含两个部分:ibm-auth-api 和凭证提供者。

格式

{
    "ibm-auth-api":{
        "client-id":"????????-????-????-????-????????????",
        "ofb-client-secret":"**********",
        "protocol":"https",
        "host":"tenant.verify.ibm.com",
        "port":443,
        "max-handles":16
    },
    "credential-provider":{
        "username-format":"%D\\\\%U",
        /*"trace-file":"c:/credprov/credprov.log",*/
        "disable-builtin-password-logon": false,
        "auth-method":"winpwd-then-choice-then-otp"
    }
}

配置 ibm-auth-api

条目 样本值 描述
"client-id" "84e8da25-d7ed-47cc-9782-b852cb64365c" 该值是必需的。 必须创建一个 IBM® Verify API 客户端供登录功能 IBM Verify Gateway for Windows™ 使用。
"ofb-client-secret" "KsjKZsKrbbgNaPe7+kYIcOyWzZdzYNtF4KlCyYoNEFA=" 该值是必需的。 API 客户端 IBM Verify 在创建时会获得一个密码,必须在此配置项中进行设置。 obf-client-secret 以加密形式提供。
注意: 此外,也可以通过使用“client-secret”选项,以明文形式提供此 obf-client-secret。 例如,
"client-secret”:"XOpiba1XeP"
.
"obf-client-secret”:
              "asjKZsKrbbgNaPe7+kYIcOyWzZdzYNtF4KlCyYoNEFA=",
“协议” "HTTPS" 此值是可选的,缺省情况下为“https”。 Verify 该协议用于与服务器进行通信。 可以使用值“http”或者“https”。 使用 https 并且 cacert.pem 文件存在时,将验证 IBM Verify 服务器证书和服务器名称。
“主机” "租户。verify.ibm.com" 该值是必需的。 它会识别您正在使用的服务器 Verify
"port" 443 此值是可选的,缺省情况下为 443。 该端口是服务器 Verify 用于监听请求的端口。
"max-handles" 2 此值是可选的,缺省情况下为 16。 此值表示 IBM Verify Windows登录网关为进行用户身份验证而与服务器 IBM Verify 建立的并行连接的最大数量。 每个凭证提供程序接口从不会同时使用两个以上的连接,因此值为 2 是合适的。
"proxy" "http://proxy.ibm.com:1080" 此值是可选的,并且缺省为不使用代理,而使用直接连接。

设置代理以访问该 Verify 租户。 该值是主机名或点分数字 IP 地址。 数字 IPv6 地址必须写入 [方括号]。 要在该字符串中指定端口号,请在主机名末尾添加 :[port] 。 代理的端口默认设置为 port :1080. 代理字符串可以加前缀 [scheme]://,指定使用的代理类型。

http://
HTTP 代理。 未指定方案或代理类型时的缺省类型。
https://
HTTPS 代理。 对于 OpenSSL、Gnus 和 NSS,已在 7.52.0 中添加。
socks4://
SOCKS4 代理。
socks4a://
SOCKS4a 代理。 代理将解析 URL 主机名。
socks5://
SOCKS5 代理。
socks5h://
SOCKS5 代理。 代理将解析 URL 主机名。 如果没有模式前缀,那么它缺省为 http://
将代理字符串设置为 ""(空字符串)会显式禁止使用代理,即使为它设置了环境变量也是如此。

代理主机字符串还可以包括协议方案 http:// 以及嵌入式用户和密码。

SSL_CERT_FILE注意: 如果您使用的是 HTTPS 代理,请在运行 IBM Verify Gateway for Windows Login的Windows系统上设置 OpenSSL 环境变量。 此环境变量指示 CA 证书文件的名称和位置。
转到 “控制面板 ” > “系统和安全 ” > “高级系统设置 ” > “环境变量 ” > “系统变量 ”,然后指定该变量。 例如,
SSL_CERT_FILE = C:\
Program Files\IBM\WindowsLogin\
cacert.pem
"proxytunnel" true 此值是可选的,如果启用代理,那么缺省情况下为 true。

proxytunnel 参数设置为 true ,以便租户操作通过 HTTP 代理进行 Verify 隧道传输。 使用代理不同于通过代理建立隧道。 建立隧道意味着将 HTTP CONNECT 请求发送到代理,要求它连接到特定端口号上的远程主机,然后通过代理传递流量。 代理将允许 CONNECT 请求的特定端口号列入允许列表中。 通常,只允许端口 80 和 443。

"connect-timeout" 10 此值是可选的,缺省情况下为 10 秒。 Verify 尝试连接服务器时等待的时间(以秒为单位)。 如果第一次尝试失败,将重试一次。
"timeout" 20 此值是可选的,缺省情况下为 20 秒。 IBM Verify Gateway for Windows Login 在服务器 Verify 连接上等待接收数据的时间(以秒为单位)。
“令牌类型” “持票人” 指定“access-token”的访问令牌类型。
"access-token" "abced..." 指定要用于该租户的访问令牌。 如果已知访问令牌,这可以作为使用“client-id”和“client-secret”选项的替代方案。
"ca-path" ""C:\Program\Files\IBM\WindowsLogin\cacert.pem" 指定一个文件,其中列出了租户服务器证书 Verify 的允许的证书颁发机构签名者。 此文本文件包含一个或多个 PEM CA公钥证书,格式为 base64。 默认情况下,它使用位于配置文件目录中的文件 cacert.pem
"origin-user-agent" "IBM Verify" 指定在请求中发送的用户代理,用于发起推送(设备)事务。
"proxy-ca-path" ""C:\Program\Files\IBM\WindowsLogin\cacert.pem" 指定一个包含代理服务器证书允许的证书颁发机构签名者列表的文件。 此文本文件包含一个或多个 PEM CA公钥证书,格式为 base64。 默认情况下,它使用位于配置文件目录中的文件 cacert.pem
"撤销-尽力而为" false 用于 TLS 与租户REST API之间的 Verify 通信。 这表示在证书分发点缺失或处于离线状态时,是否应忽略证书撤销检查——此行为仅适用于具备该功能的 TLS 后端。
"不可撤销" false 用于 TLS 与租户REST API之间的 Verify 通信。 这表示是否应针对存在此类行为的 TLS 后端禁用证书撤销检查。 此选项仅在 Windows 系统上受支持,但 Windows 的“不受信任的发布者”阻止列表除外,该列表无法被绕过。 此选项优先于“revoke-best-effort”。

配置 credential-provider

条目 样本值 描述
"trace-file" “C:\Temp\credprov.log” 此值是可选的,缺省情况下为不跟踪。
注意: 如果该文件 C:\Program Files\IBM\WindowsLogin\credprov.log 存在,则日志记录会自动启用,并在登录程序 Verify Gateway for Windows 启动的早期阶段生效。
"auth-method" "winpwd-then-choice-then-otp" 此值是可选的,缺省情况下为 "winpwd-then-choice-then-otp",定义用于认证用户的 MFA 方法。
"winpwd"
仅限 Windows 密码。
"winpwd-and-totp"
在同一输入框中同时输入 Windows 密码和基于时间的一次性密码。
"winpwd-then-smsotp"
先输入 Windows 密码,然后输入短信中的一次性验证码。
"winpwd-then-emailotp"
Windows 密码,随后输入电子邮件一次性验证码。
"winpwd-then-choice-then-otp"
输入Windows密码后,从可用的 2FA 验证方式中进行选择,随后输入选定的一次性验证码,或等待设备通知。
注: 如果只有一个选项,则跳过“选择”步骤。
"winpwd-then-device"
输入 Windows 密码后,等待设备通知。 如果为用户注册了多个设备,那么将显示“选项”步骤。
"winpwd-then-transient"
先输入 Windows 密码,然后输入一次性密码。 如果为用户注册了多个瞬态项,那么将显示“选项”步骤。
"accept-on-missing-auth-method" false 此值是可选的,缺省情况下为 false。 如果设置为 true,并且对于 auth-method,用户没有相应的已注册 2FA,那么允许用户仅使用其密码进行登录。
"password-first" false 此值是可选的,缺省情况下为 false。 如果设置为 true,并且 auth-method 为 winpwd-and-totp,那么在组合的密码和 TOTP 值输入中,必须先提供密码。 如果为 false,那么在组合输入中必须先提供 TOTP 值。
"otp-prompt" "请输入一次性密码 %C-" 此值是可选的,缺省值为“输入一次性验证码 %C-”。当提示用户输入其一个时间密码时,将显示此提示。 如果提示中显示 %C 字符串,那么对于 OTP 方法,会将其替换为关联值。 对于基于时间的 OTP,为空字符串。
"password-separator" “,” 此值是可选的,缺省为 ","。 对于 "windpwd-and-totp" 认证方法,此字符必须位于密码与 TOTP 组合输入之间。
"verify-method-order" ["fingerprint","userPresence"] 此值是可选的,缺省情况下为 ["fingerprint","userPresence"]。
"verify-message" “是否核准来自 winhost.ibm.com 的请求?” 此参数是可选的,缺省情况下为“是否核准来自 {hostname} 的请求?”, 其中 {hostname} 替换为正在运行 Verify Gateway for Windows 登录的推断主机名。 如果使用 "device" 认证方法,那么会在要求用户验证访问权时,在用户设备上显示此消息。
"choices" ["设备","临时","短信OTP","电子邮件OTP","语音OTP"] 此值定义 auth-method 为 "winpwd-then-choice-then-otp" 时,向用户显示的 2FA 的类型。
"transient-choices" [ {"choice": "phoneNumbers", "sub-choices": ["mobile", "work"]}, "emails" ] 此值是可选的,缺省情况下为 ["phoneNumbers","emails"]。 此值定义在启用了瞬态 2FA 时,向用户显示的瞬态 OTP 方法的类型。

您可以为 "phoneNumbers" 指定子选项。 客户通常使用此选项来将电话号码限制为“手机”。

字符串和/或详细对象可在 "transient-choice" 数组中相互混合,以允许与早期版本兼容。

"no-mfa-on-unlock" true | false 此条目缺省为 false。 设置为 true 时,不请求任何 2FA 输入,只需要密码即可解锁桌面。
"poll-timeout" 60 此值是可选的,缺省情况下为 60 秒。 此值指定等待用户核准或拒绝设备的推送通知的时间长度。 如果超时,将自动拒绝该请求。
"poll-rate-ms" 1000 此值是可选的,缺省情况下为 1000 毫秒。 此值指定登录功能 Verify Gateway for Windows 向服务器 Verify 查询的频率,以确定设备的推送请求是被拒绝还是被批准。 这会影响 IBM Verify Gateway for Windows登录对设备推送通知的响应速度。
注意: 较低的轮询频率会导致每秒向 Verify 服务器发送大量请求,从而增加其负载。
"ignore-isvalidated" false 此值是可选的,缺省情况下为 false。 当设置为 true 时,登录功能 Verify Gateway for Windows 允许使用未经过验证的 2FA 方法。
"username-format" “%D\\%U” 此值是可选的,缺省情况下为“%D\\%U”。 它定义了如何将 Windows 用户域和名称映射到用户名 Verify 。 在提供的字符串中,所有 %D 将被替换为 Windows 用户的域,所有 %U 将被替换为 Windows 用户名。 值 %D%U 在字符串中是可选的。
"disable-builtin-password-logon" false 此值是可选的,缺省情况下为 false。 如果设置为 true,则 Windows 内置密码凭据提供程序将被禁用,仅保留登录凭据提供程序 Verify Gateway for Windows 。 如果设置为 false,则 Windows 登录界面会将两者都作为选项提供。 在生产环境中,请将此值设置为 true,以确保用户无法通过选择 Windows 凭据提供程序来绕过登录凭据提供程序 Verify Gateway for Windows
“rdp-only” false 此值是可选的,缺省情况下为 false。 如果设置为 true,则“ Verify Gateway for Windows 登录凭据提供程序”仅用于远程桌面登录。 而不会用于其他登录类型,例如本地桌面登录。
“no-mfa-account” “DOMAIN\\User” 此值是可选的,缺省情况下没有可以绕过 MFA 的帐户。 如果设置了此帐户,那么会将每个用户登录与此帐户进行比较。 比较不区分大小写。 如果匹配,则用户使用“winpwd”身份验证方法,该方法无需 2FA 或访问服务器 Verify 。 登录时只需输入 Windows 密码。 这是一个特殊账户,即使服务 Verify 不可用,也能访问该设备。
注意: 您可能需要阻止该账户通过RDP进行访问。 Windows 管理员可以阻止此访问。
"username-table"
"username-table": [ 
{ "from": "testuser1", "to": "testuser1@x.y.com" },
{ "from": "testuser2", "to": "testuser2@x.y.com" } 
]
此属性将用户名映射到新值。 如果用户名不在表中,那么将“按现状”使用。
“trace-rollover” 0 指定在保存文件并创建新的空跟踪文件时,该跟踪文件的近似最大大小(以字节为单位)。 跟踪文件通过在文件名后附加当前时间戳的方式进行保存。
"trace-localtime" false 指定跟踪文件的时间戳是否应采用本地时间。 默认情况下,时间戳使用UTC时间。
"trace-prefix-all" false 指定是否应在所有跟踪行前添加时间戳。 默认情况下,REST API 请求/响应跟踪捕获的 Verify 行仅在第一行添加前缀。
“默认不安全模式” false 如果无法连接到租户 Verify REST API,则允许仅使用密码登录,无需提供 2FA。
"username-attr" uid 在使用 Active Directory 时,可用于访问 2FA 的用户名 Verify 可从当前登录的 Active Directory 用户的某个属性中获取。
"用户名-CD-属性" "urn:ietf:params:scim:schemas:extension: ibm:2.0:User:customAttributes.userAlias " 通过查找具有该属性且其值与 Windows 登录用户名相匹配的用户 Verify ,来定位用户 Verify “ 2FA ”。
"username-attr-strict" false 如果设置为 false,那么当 Active Directory 用户不包含 "username-attr" 属性时,登录系统将使用 Windows 用户名来定位 2FA 对应的用户 Verify
"用户名属性格式" "%A" 用于映射“username-attr”值的字符串。 任何 %A 都会被替换为属性值,从而允许将字符串常量作为前缀和/或后缀添加。 默认值只是“%A”,即不进行任何修改。