从客户端对 NSX Advanced Load Balancer 控制器 的 API 调用必须先进行身份验证:通过基于会话的 HTTP 身份验证或 HTTP 基本身份验证。API 访问使用 HTTP 基本身份验证与访问虚拟服务的客户端使用基本身份验证(由服务引擎提供身份验证代理)无关。

无论使用哪种方法,经过验证的 API 调用仍受正常身份验证设置的限制。控制器可以通过本地数据库或远程数据库(例如 LDAP)验证用于身份验证的用户帐户,可以将这些帐户限制为特定的租户,或者这些帐户具有有限的角色或访问级别。为了提高安全性,将默认停用 HTTP 基本身份验证。

使用 CLI 启用 HTTP 基本身份验证

可以使用以下 CLI 命令激活 HTTP 基本身份验证。

bash# shell
: > configure systemconfiguration
: systemconfiguration> portal_configuration
: systemconfiguration:portal_configuration> allow_basic_authentication
Overwriting the previously entered value for allow_basic_authentication
: systemconfiguration:portal_configuration> exit
: systemconfiguration> exit

截断的结果视图:

+-------------------------------------+----------------------------------+
| Field                               | Value                            |
+-------------------------------------+----------------------------------+
| uuid                                | default                          |
| portal_configuration                |                                  |
|   enable_https                      | True                             |
|   redirect_to_https                 | True                             |
|   enable_http                       | True                             |
|   enable_clickjacking_protection    | True                             |
|   allow_basic_authentication        | True                             |
|   password_strength_check           | False                            |
+-------------------------------------+----------------------------------+

通过 API 激活 HTTP 基本身份验证

可以在“/api/systemconfiguration”中的“portal_configuration”下面将“allow_basic_authentication”设置为 True 以激活 HTTP 基本身份验证方法。

截断的结果视图:

--snip--
    docker_mode: false,
    portal_configuration: 
    {
        use_uuid_from_input: false,
        redirect_to_https: true,
        sslprofile_ref: "https://10.10.5.27/api/sslprofile/sslprofile-0-1",
        allow_basic_authentication: true,
        enable_clickjacking_protection: true,
        enable_https: true,
        sslkeyandcertificate_refs: 
        [
            "https://10.1.1.10/api/sslkeyandcertificate/sslkeyandcertificate-ae6c1033-859b"
        ],
        password_strength_check: false,
        enable_http: false
    },
    --snip--