云办公服务用户管理
引导式阅读
Go
云办公服务用户管理
作者
c***r
上架时间
2023-11-17 08:44:21

版本说明

本示例基于华为云SDK V3.0版本开发

功能介绍

基于华为云 Java SDK对云办公用户进行操作的代码示例。 其中包括:对云办公用户进行操作的增(创建用户)、删(删除指定用户)、改(修改用户信息)、查(查询用户列表)。 本示例将以上操作整合,完成了从云办公用户的创建到查询、修改,再到删除的整个生命周期的覆盖。

前置条件

开通服务

申请开通云办公服务的具体操作请参考开通云办公服务API

获取AK/SK

开发者在使用前需先获取账号的ak、sk、projectId、endpoint。

您需要拥有华为云账号以及该账号对应的 Access Key(AK)和 Secret Access Key(SK)。请在华为云控制台“我的凭证-访问密钥”页面上创建和查看您的 AK/SK。更多信息请查看访问密钥。 endpoint 华为云各服务应用区域和各服务的终端节点,详情请查看地区和终端节点。 projectId 云服务所在项目 ID ,根据你想操作的项目所属区域选择对应的项目 ID 。

运行环境

Java JDK 1.8 及其以上版本,推荐通过Maven 安装依赖的方式使用JAVA版本SDK。

SDK获取和安装

在Maven 项目的 pom.xml 文件加入相应版本的依赖项即可。

以引入3.1.5版本的内容审核SDK为例:

<dependency> <groupId>com.huaweicloud.sdk</groupId> <artifactId>huaweicloud-sdk-workspace</artifactId> <version>3.1.5</version> </dependency>

示例代码

调用前请替换示例中的变量,请根据需要执行的方法注释掉无关方法,并执行Run Application。

package com.huawei.workspace.demo; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.core.http.HttpConfig; import com.huaweicloud.sdk.workspace.v2.WorkspaceClient; import com.huaweicloud.sdk.workspace.v2.model.CreateDesktopUserRequest; import com.huaweicloud.sdk.workspace.v2.model.CreateDesktopUserResponse; import com.huaweicloud.sdk.workspace.v2.model.CreateUserReq; import com.huaweicloud.sdk.workspace.v2.model.DeleteUserRequest; import com.huaweicloud.sdk.workspace.v2.model.DeleteUserResponse; import com.huaweicloud.sdk.workspace.v2.model.EditUserReq; import com.huaweicloud.sdk.workspace.v2.model.ListUsersRequest; import com.huaweicloud.sdk.workspace.v2.model.ListUsersResponse; import com.huaweicloud.sdk.workspace.v2.model.UpdateUserInfoRequest; import com.huaweicloud.sdk.workspace.v2.model.UpdateUserInfoResponse; import com.huaweicloud.sdk.workspace.v2.region.WorkspaceRegion; public class WorkspaceUsersManageDemo { public static void main(String[] args) { // 设置AK和SK // 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全; // 本示例以ak和sk保存在环境变量中来实现身份认证为例,运行示例前请先在本地环境中设置环境变量HUAWEICLOUD_SDK_AK和HUAWEICLOUD_SDK_SK。 String ak = System.getenv("HUAWEICLOUD_SDK_AK"); String sk = System.getenv("HUAWEICLOUD_SDK_SK"); String projectId = "<YOUR PROJECTID>"; ICredential auth = new BasicCredentials().withAk(ak).withSk(sk).withProjectId(projectId); HttpConfig config = HttpConfig.getDefaultHttpConfig(); config.withIgnoreSSLVerification(true); WorkspaceClient client = WorkspaceClient.newBuilder() .withCredential(auth) .withRegion(WorkspaceRegion.valueOf("cn-north-4")) // 示例中区域为北京四,根据实际调用区域替换 .withHttpConfig(config) .build(); // 查询用户列表 listUsers(client); // 创建用户 // createDesktopUser(client); // 修改用户信息 // updateUserInfo(client); // 删除指定用户 // deleteUser(client); } private static void listUsers(WorkspaceClient workspaceClient) { ListUsersRequest request = new ListUsersRequest(); try { ListUsersResponse listUsersResponse = workspaceClient.listUsers(request); System.out.println(listUsersResponse.toString()); } catch (ConnectionException | RequestTimeoutException e) { System.out.println(e.getMessage()); } catch (ServiceResponseException e) { System.out.println(e.getHttpStatusCode()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } private static void createDesktopUser(WorkspaceClient workspaceClient) { String userName = "<your userName string>"; String userEmail = "<your userEmail string>"; try { CreateUserReq createUserReq = new CreateUserReq(); createUserReq.setUserName(userName); createUserReq.setUserEmail(userEmail); CreateDesktopUserResponse createDesktopUserResponse = workspaceClient.createDesktopUser(new CreateDesktopUserRequest().withBody(createUserReq)); System.out.println(createDesktopUserResponse.toString()); } catch (ConnectionException | RequestTimeoutException e) { System.out.println(e.getMessage()); } catch (ServiceResponseException e) { System.out.println(e.getHttpStatusCode()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } private static void updateUserInfo(WorkspaceClient workspaceClient) { String userId = "{your userId string}"; try { EditUserReq editUserReq = new EditUserReq(); editUserReq.withDescription("description"); UpdateUserInfoResponse updateUserInfoResponse = workspaceClient.updateUserInfo(new UpdateUserInfoRequest().withBody(editUserReq).withUserId(userId)); System.out.println(updateUserInfoResponse.toString()); } catch (ConnectionException | RequestTimeoutException e) { System.out.println(e.getMessage()); } catch (ServiceResponseException e) { System.out.println(e.getHttpStatusCode()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } private static void deleteUser(WorkspaceClient workspaceClient) { String userId = "{your userId string}"; try { DeleteUserResponse deleteUserResponse = workspaceClient.deleteUser(new DeleteUserRequest().withUserId(userId)); System.out.println(deleteUserResponse.toString()); } catch (ConnectionException | RequestTimeoutException e) { System.out.println(e.getMessage()); } catch (ServiceResponseException e) { System.out.println(e.getHttpStatusCode()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } }

修订记录

发布日期 文档版本 修订说明
2022-10-17 1.0 文档首次发布