配置弹性负载均衡(ELB)的IP白名单
引导式阅读
Java
配置弹性负载均衡(ELB)的IP白名单
作者
C***
上架时间
2021-07-02 08:06:45

版本说明

本示例基于华为云SDK V2.0版本开发,高版本示例正在开发中。

功能介绍

负载均衡器用户可以通过添加白名单的方式控制访问负载均衡监听器的IP。通过白名单能够设置允许特定IP访问,而其它IP不许访问。您可以通过本示例了解白名单的基本使用。

准备工作

白名单管理

初始化客户端

参数获取可参照准备工作中token认证方式。

String user = "replace-with-your-username"; String password = "replace-with-your-password"; String projectId = "replace-with-your-projectId"; String userDomainId = "replace-with-your-domainId"; String authUrl = "https://iam.example.com/v3"; // endpointUrl OSClientV3 osclient = OSFactory.builderV3().endpoint(authUrl) .credentials(user, password, Identifier.byId(userDomainId)) .scopeToProject(Identifier.byId(projectId)).authenticate();

创建白名单

创建白名单,控制监听器的访问权限。若开启了白名单功能,只有白名单中放通的IP可以访问该监听器的后端服务。

创建所需部分参数

名称 类型 描述
listenerId string 白名单关联的监听器ID。
enableWhitelist boolean 是否开启白名单访问控制开关。true:开启;false:关闭。
whitelist string 白名单IP列表。可以是ip,例如192.168.10.123;也可以是一个网段,例如192.168.10.1/24;不同的值之间用逗号分隔。

代码展示

// Create a Whitelist String lsnr_id = "******"; NeutronWhitelist whitelist_test = NeutronWhitelist.builder().listenerId(lsnr_id).enableWhitelist(true) .whitelist("192.168.0.0/24,192.168.1.0/24").build(); osclient.networking().lbaasV2().lbWhitelist().create(whitelist_test);

说明:其他参数具体请参考API Explorer

查询白名单列表

查询白名单

// List all Whitelists osclient.networking().lbaasV2().lbWhitelist().list();

说明

  • 1、支持条件过滤查询,如根据白名单关联的监听器ID、白名单IP等查询。支持分页查询。具体请参考API Explorer
  • 2、分页查询使用的参数为marker、limit、page_reverse。marker和page_reverse只有和limit一起使用时才会生效,单独使用无效。

查询白名单详情

根据指定ID查询白名单详情

// Query a Whitelist String wl_id = "******"; osclient.networking().lbaasV2().lbWhitelist().get(wl_id);

说明:更多信息请参考API Explorer

更新白名单

根据指定ID更新白名单,可以打开或关闭白名单,或更新访问控制的IP

// Update a Whitelist NeutronWhitelistUpdate whitelist_update = NeutronWhitelistUpdate.builder().whitelist("192.168.0.0/24,192.168.1.0/25").build(); osclient.networking().lbaasV2().lbWhitelist().update(whitelist_update, wl_id);

说明:更多信息请参考API Explorer

删除白名单

根据指定ID删除白名单

// Delete a Whitelist osclient.networking().lbaasV2().lbWhitelist().delete(wl_id);

说明:更多信息请参考API Explorer

参考

更多信息请参考弹性负载均衡 ELB