管理虚拟私有云(VPC)的网络相关操作
引导式阅读
Java
管理虚拟私有云(VPC)的网络相关操作
作者
C***
上架时间
2021-06-28 11:10:21

版本说明

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

功能介绍

网络ACL是一个子网级别的可选安全层,通过与子网关联的出方向/入方向规则控制出入子网的数据流。

图1 安全组与网络ACL

网络ACL与安全组类似,都是安全防护策略,当您想增加额外的安全防护层时,就可以启用网络ACL。安全组只有“允许”策略,但网络ACL可以“拒绝”和“允许”,两者结合起来,可以实现更精细、更复杂的安全访问控制。

准备工作

1、获取华为云VPC开发工具包(SDK)

2、华为云 Java SDK 支持认证方式:token认证

3、华为云 Java SDK 支持 Java JDK 1.8 及其以上版本。

示例接口摘要

初始化客户端

String user = "******"; String password = "******"; String projectId = "******"; String userDomainId = "******"; String authUrl = "******"; OSClient.OSClientV3 osclient = OSFactory.builderV3().endpoint(authUrl) .credentials(user, password, Identifier.byId(userDomainId)) .scopeToProject(Identifier.byId(projectId)).authenticate();

查询网络列表

功能介绍

查询提交请求的租户的所有网络,单次查询最多返回2000条数据,超过2000后会返回分页标记分页。查询请参考分页查询

接口实现代码示例:

//List all networks List<? extends Network> listResp = osclient.networking().network().list(); if (null != listResp && listResp.size() > 0) { System.out.println("List all Network success, size = " + listResp.size()); } else { System.out.println("List all Network failed"); } //List networks with filter Map<String, String> filteringParams = new HashMap<>(); filteringParams.put("status", "ACTIVE"); List<? extends Network> listWithFilterResp = osclient.networking().network().list(filteringParams); if (null != listWithFilterResp && listWithFilterResp.size() > 0) { System.out.println("List Network with filter success, size = " + listWithFilterResp.size()); } else { System.out.println("List Network with filter failed"); }

查询网络

功能介绍

查询网络详情。

接口实现代码示例:

//Get a Network Network getResp = osclient.networking().network().get(networkId); if (null != getResp) { System.out.println("Get a Network success, id = " + getResp.getId()); } else { System.out.println("Get a Network failed"); }

创建网络

功能介绍

创建网络。

接口实现代码示例:

//Create a Network String networkName = "******"; String tenantId = "******"; Network network = NeutronNetwork.builder().name(networkName).adminStateUp(true).tenantId(tenantId).isShared(false).build(); Network createResp = osclient.networking().network().create(network); if (null != createResp) { System.out.println("Create a Network success, id = " + createResp.getId()); } else { System.out.println("Create a Network failed"); }

更新网络

功能介绍

更新网络。

接口实现代码示例:

//Update a Network String networkId = "******"; NetworkUpdate networkUpdate = NeutronNetworkUpdate.builder().name(networkName).shared(false).build(); Network updateResp = osclient.networking().network().update(networkId, networkUpdate); if (null != updateResp) { System.out.println("Update a Network success, id = " + updateResp.getId()); } else { System.out.println("Update a Network failed"); }

删除网络

功能介绍

删除网络。

接口实现代码示例:

//Delete a network ActionResponse rep = osclient.networking().network().delete(networkId); if (rep.isSuccess()) { System.out.println("Delete a network success"); } else { System.out.println("Delete a network failed"); }

参考

更多信息请参考虚拟私有云VPC服务