自定义 WorkSpace 品牌 - Amazon WorkSpaces
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

自定义 WorkSpace 品牌

Amazon WorkSpaces 允许您使用 API 使用自己的品牌徽标、IT 支持信息、忘记密码链接和登录消息自定义登录页面的外观,从而为用户创造熟悉的 WorkSpaces 体验。 WorkSpace您的品牌将在用户的 WorkSpace 登录页面中显示给他们,而不是默认的 WorkSpaces 品牌。

支持以下客户端:

  • Windows

  • Linux

  • Android

  • MacOS

  • iOS

  • Web Access

注意

要使用中的 ClientBranding API 修改品牌元素Amazon GovCloud (US) Region,请使用 WorkSpaces 客户端版本 5.10.0。

导入自定义品牌

要导入您的客户端品牌自定义,请使用包含以下元素的操作 ImportClientBranding。有关更多信息,请参阅 ImportClientBranding API 参考

重要

客户端品牌属性面向公众。确保您不包含敏感信息。


               WorkSpaces 客户登录屏幕
  1. 支持链接

  2. 徽标

  3. 忘记密码链接

  4. 登录消息

自定义品牌元素
品牌元素 描述 要求和建议
支持链接 允许您指定支持电子邮件链接,供用户联系以寻求帮助 WorkSpaces。您可以使用 SupportEmail 属性或使用 SupportLink 属性提供指向您支持页面的链接。
  • 对于每种平台类型,SupportEmailSupportLink 参数相互排斥。您可以为每种平台类型指定单个参数,但不能同时指定两者。

  • 默认电子邮件地址是 workspaces-feedback@amazon.com

  • 长度限制:最小长度为 1。最大长度为 200。

徽标 允许您使用 Logo 属性自定义组织的徽标。
  • 唯一接受的图像格式是从 .png 文件转换的二进制数据对象。

  • 建议的分辨率:

    • Android:978 x 190

    • 台式机:319 x 55

    • iOS@2x:110 x 200

    • iOS@3x:1650 x 300

忘记密码链接 允许您使用用户忘记密码时可以访问的 ForgotPasswordLink 属性添加网址 WorkSpace。 长度限制:最小长度为 1。最大长度为 200。
登录消息 允许您使用登录屏幕上的 LoginMessage 属性自定义消息。
  • 长度限制:长度下限为 0。与 HTML 标签和不同的字体大小集成时的最大长度为 2000 个字符。对于没有 HTML 标签的默认情况,建议将登录消息保持在 600 个字符以内。

  • 支持的 HTML 标签:a, b, blockquote, br, cite, code, dd, dl, dt, div, em, i, li, ol, p, pre, q, small, span, strike, strong, sub, sup, u, ul

以下是供使用的 ImportClientBranding示例代码片段。

Amazon CLI 版本 2

警告

导入自定义品牌会覆盖您在该平台中使用自定义数据指定的属性。它还会使用默认自定义品牌属性值覆盖您未指定的属性。您必须包含不想覆盖的任何属性的数据。

aws workspaces import-client-branding \ --cli-input-json file://~/Downloads/import-input.json \ --region us-west-2

导入 JSON 文件应与以下示例代码类似:

{ "ResourceId": "<directory-id>", "DeviceTypeOsx": { "Logo": "iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAYAAABytg0kAAAAC0lEQVR42mNgQAcAABIAAeRVjecAAAAASUVORK5CYII=", "ForgotPasswordLink": "https://amazon.com/", "SupportLink": "https://amazon.com/", "LoginMessage": { "en_US": "Hello!!" } } }

以下 Java 代码片段示例将徽标图像转换为 base64 编码的字符串:

// Read image as BufferImage BufferedImage bi = ImageIO.read(new File("~/Downloads/logo.png")); // convert BufferedImage to byte[] ByteArrayOutputStream baos = new ByteArrayOutputStream(); ImageIO.write(bi, "png", baos); byte[] bytes = baos.toByteArray(); //convert byte[] to base64 format and print it String bytesBase64 = Base64.encodeBase64String(bytes); System.out.println(bytesBase64);

以下 Python 代码片段示例将徽标图像转换为 base64 编码的字符串:

# Read logo into base64-encoded string with open("~/Downloads/logo.png", "rb") as image_file: f = image_file.read() base64_string = base64.b64encode(f) print(base64_string)

Java

警告

导入自定义品牌会覆盖您在该平台中使用自定义数据指定的属性。它还会使用默认自定义品牌属性值覆盖您未指定的属性。您必须包含不想覆盖的任何属性的数据。

// Create WS Client WorkSpacesClient client = WorkSpacesClient.builder().build(); // Read image as BufferImage BufferedImage bi = ImageIO.read(new File("~/Downloads/logo.png")); // convert BufferedImage to byte[] ByteArrayOutputStream baos = new ByteArrayOutputStream(); ImageIO.write(bi, "png", baos); byte[] bytes = baos.toByteArray(); // Create import attributes for the plateform DefaultImportClientBrandingAttributes attributes = DefaultImportClientBrandingAttributes.builder() .logo(SdkBytes.fromByteArray(bytes)) .forgotPasswordLink("https://aws.amazon.com/") .supportLink("https://aws.amazon.com/") .build(); // Create import request ImportClientBrandingRequest request = ImportClientBrandingRequest.builder() .resourceId("<directory-id>") .deviceTypeOsx(attributes) .build(); // Call ImportClientBranding API ImportClientBrandingResponse response = client.importClientBranding(request);

Python

警告

导入自定义品牌会覆盖您在该平台中使用自定义数据指定的属性。它还会使用默认自定义品牌属性值覆盖您未指定的属性。您必须包含不想覆盖的任何属性的数据。

import boto3 # Read logo into bytearray with open("~/Downloads/logo.png", "rb") as image_file: f = image_file.read() bytes = bytearray(f) # Create WorkSpaces client client = boto3.client('workspaces') # Call import API response = client.import_client_branding( ResourceId='<directory-id>', DeviceTypeOsx={ 'Logo': bytes, 'SupportLink': 'https://aws.amazon.com/', 'ForgotPasswordLink': 'https://aws.amazon.com/', 'LoginMessage': { 'en_US': 'Hello!!' } } )

PowerShell

#Requires -Modules @{ ModuleName="AWS.Tools.WorkSpaces"; ModuleVersion="4.1.56"} # Specify Image Path $imagePath = "~/Downloads/logo.png" # Create Byte Array from image file $imageByte = ([System.IO.File]::ReadAllBytes($imagePath)) # Call import API Import-WKSClientBranding -ResourceId <directory-id> ` -DeviceTypeLinux_LoginMessage @{en_US="Hello!!"} ` -DeviceTypeLinux_Logo $imageByte ` -DeviceTypeLinux_ForgotPasswordLink "https://aws.amazon.com/" ` -DeviceTypeLinux_SupportLink "https://aws.amazon.com/"

要预览登录页面,请启动 WorkSpaces 应用程序或 Web 登录页面。

注意

更改最多可能需要 1 分钟才会显示。

描述自定义品牌

要查看您当前拥有的客户端品牌自定义的详细信息,请使用操作 DescribeCustomBranding。以下是使用的示例脚本 DescribeClientBranding。有关更多信息,请参阅 DescribeClientBranding API 参考

aws workspaces describe-client-branding \ --resource-id <directory-id> \ --region us-west-2

删除自定义品牌

要删除您的客户端品牌自定义,请使用操作 DeleteCustomBranding。以下是使用的示例脚本 DeleteClientBranding。有关更多信息,请参阅 DeleteClientBranding API 参考

aws workspaces delete-client-branding \ --resource-id <directory-id> \ --platforms DeviceTypeAndroid DeviceTypeIos \ --region us-west-2
注意

更改最多可能需要 1 分钟才会显示。