卖家颁发的许可证Amazon License Manager - Amazon License Manager
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

卖家颁发的许可证Amazon License Manager

独立软件供应商 (ISV) 可以使用Amazon License Manager管理软件许可证并将其分发给最终用户。作为颁发机构,您可以使用 License Manager 控制面板集中跟踪卖家颁发的许可证的使用情况。

License Manager 使用开放、安全的行业标准来表示许可证,并允许客户以加密方式验证其真实性。License Manager 将每个许可证与非对称密钥关联。作为 ISV,您拥有不对称Amazon KMS密钥并将其存储在您的帐户中。

卖家颁发的许可证要求跨区域复制许可证元数据。License Manager 会自动将每个卖家颁发的许可证及其相关信息复制到其他地区。

License Manager 支持多种不同的许可模式,包括:

  • 永久— 无过期日期的终身许可证,授权用户无限期使用软件。

  • 浮动-具有多个应用程序实例的可共享许可证。许可证可以是预付费的,并且可以向其添加一组固定的授权。

  • 订阅-具有过期日期的许可证,除非特别停用,否则可以自动续订。

  • 基于使用情况-根据使用情况具有特定条款的许可证,例如 API 请求数量、事务数量或存储功能。

您可以在 License Manager 中创建许可证,并使用AmazonIAM 身份或通过 License Manager 生成的无记名令牌。使用的客户数Amazon帐户可以将许可证授权重新分发给Amazon在其各自组织中的身份。拥有分布式授权的客户可以通过与 License Manager 的软件集成,从该许可证中签出和签入所需的授权。

Entitlements

License Manager 将许可证功能捕获为授权许可证中。应享权利的特点可以是数量有限或数量无限。有限授权的一个例子是 “40 GB 数据传输”。无限数量权利的一个示例是 “白金级别”。

许可证捕获所有授予的授权、激活和到期日期以及颁发者详细信息。许可证是一个版本控制的实体,每个版本都是不可变的。只要更改许可证,许可证版本就会更新。

要签出或签入有限授权,ISV 应用程序必须指定每个受限容量的数量。对于无限制的授权,ISV 应用程序可以简单地指定相关授权以便签出或再次签入。最后,有限的功能还支持一个 “超量” 标志,该标志指示最终用户是否可以超过其对初始授权的使用。License Manager 跟踪并向 ISV 报告使用情况以及任何过剩情况。

许可证使用

License Manager 允许您通过维护所有已签出授权的计数,跨多个区域集中跟踪许可证。License Manager 还跟踪用户的身份和与每次签出关联的基础资源标识符(如果可用)以及签出时间。您可以通过 CloudWatch 事件跟踪此时间序列数据。

许可证可以处于以下状态之一:

  • 已创建-许可证已创建。

  • Updated-许可证已更新。

  • 已停用-许可证已停用。

  • Deleted (已删除)-许可证被删除。

Requirements

要开始使用此功能,您需要具有调用以下 License Manager API 操作的权限。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "license-manager:CreateLicense", "license-manager:CreateLicenseVersion", "license-manager:ListLicenses", "license-manager:ListLicenseVersions", "license-manager:GetLicense", "license-manager:DeleteLicense", "license-manager:CheckoutLicense", "license-manager:CheckInLicense", "license-manager:ExtendLicenseConsumption", "license-manager:GetLicenseUsage", "license-manager:CreateGrant", "license-manager:CreateGrantVersion", "license-manager:DeleteGrant", "license-manager:GetGrant", "license-manager:ListDistributedGrants" ], "Resource": "*" } ] }

如果您将与 License Manager 集成,所以没有Amazon帐户可以使用 Amazon Web Services Marketplace ,您必须创建一个使软件应用程序能够调用 License Manager API 的角色。例如,您可以使用AmazonCLI。首先,使用create-role命令以创建名为AWSS 许可证管理员消费角色.

aws iam create-role --role-name AWSLicenseManagerConsumptionRole --description "Role used to consume licenses using Amazon License Manager" --max-session-duration 3600 --assume-role-policy-document file://trust-policy-document.json

以下是trust-policy-document.json.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": { "Federated": "openid-license-manager.amazonaws.com" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringLike": { "openid-license-manager.amazonaws.com:sub": "66a9bbf5-0896-460f-a1a9-de535dcc175b" } } } }

然后,使用attach-role-policy命令添加AWSS 许可证管理员消费政策 Amazon托管策略添加到AWSS 许可证管理员消费角色角色。

aws iam attach-role-policy --policy-arn arn:aws:iam::aws:policy/service-role/AWSLicenseManagerConsumptionPolicy --role-name AWSLicenseManagerConsumptionRole

创建卖家颁发的许可证

按照以下过程创建一个许可证块,使用Amazon Web Services Management Console. 或者,您可以使用创建许可证API 操作。

使用控制台创建许可证

  1. 通过以下网址打开 License Managerhttps://console.aws.amazon.com/license-manager/.

  2. 选择卖家颁发的许可证从左侧菜单中。

  3. 选择创建许可证.

  4. 适用于许可证元数据,请提供以下信息:

    • 许可证名称-向买家显示的名称,最多 150 个字符。

    • 许可证说明-可选描述,最多 400 个字符,将此许可证与其他许可证区分开来。

    • 产品 SKU-商品 SKU。

    • Recipient-收件人的姓名(公司或个人)。

    • 主区域-Amazon许可证的区域。尽管许可证可以在全球范围内使用,但您只能在本地区更改许可证。在创建许可证后,您无法更改其主区域。

    • 许可证开始日期-激活的日期。

    • 许可结束日期-许可证的结束日期(如果适用)。

  5. 适用于功耗配置,请提供以下信息:

    • 续订频率-是否每周、每月或根本不续订。

    • 功耗配置-选择临时冲减配置选项如果许可证要用于连续连接,或借用如果要脱机使用许可证。Enter最长存续时间 (分钟)来设置许可证的可用性长度。

  6. 适用于发布者,请提供以下信息:

    • 输入Amazon KMS密钥-License Manager 使用此密钥签名并验证颁发者。有关更多信息,请参阅许可证的加密签名

    • 颁发者名称-卖家的企业名称。

    • 登记卖家-一个可选的公司名称。

    • 协议 URL许可协议的 URL。

  7. 适用于授权中,提供有关许可证授予收件人的功能的以下信息:

    • 名称-收件人的姓名。

    • 单位类型-选择单位类型,然后提供最大计数。

    • Check允许签入如果收件人必须在续订前签入许可证。

    • Check允许的超量如果收件人可以使用超出最大计数的资源。此选项可能会对收件人产生额外费用。

  8. 选择创建许可证.

向客户授予许可证

添加新许可证后,您可以将许可证授予具有Amazon帐户使用Amazon Web Services Management Console. 接收者必须接受授权才能使用许可证。有关更多信息,请参阅在 License Manager 中授予许可

或者,如果客户没有Amazon帐户,您可以使用 License Manager API 使客户能够使用许可证.

使用控制台向客户授予许可证

  1. 通过以下网址打开 License Managerhttps://console.aws.amazon.com/license-manager/.

  2. 选择卖家颁发的许可证从左侧菜单中。

  3. 选择许可证 ID 以打开其详细信息页面。

  4. 适用于授权中,选择创建授权.

  5. 适用于授予详细信息,请提供以下信息:

    • 授予名称-授权名称 这用于启用搜索功能。

    • Amazon账户 ID-Amazon许可证收件人的帐号。

    • 许可权限-选择消耗如果收件人只能使用已授予的权利,分发如果收件人可以将授予的权利分发给其他Amazon帐户。

    • 主区域-Amazon许可证的区域。

  6. 选择创建授权.

为没有Amazon账户

如果您的客户没有Amazon帐户,您可以使用授权的方式与为客户使用Amazonaccount. 按照以下过程获取临时Amazon凭据为您的客户提供Amazonaccount. API 调用必须在本地区进行。

获取用于调用 License Manager API 的临时证书

  1. 调用创建令牌API 操作来获取编码为 JWT 令牌的刷新令牌。

  2. 调用获取访问权限API 操作,指定从CreateToken,以接收临时访问令牌。

  3. 调用AssumeRoleWithWebIdentityAPI 操作,指定您从GetAccessToken,并使用AWSS 许可证管理员消费角色角色,以获取临时Amazon凭证。

使用许可证

License Manager 允许多个用户同时使用单个许可证中具有有限功能的授权。调用签出许可证API 操作。以下是参数描述。

  • 钥匙指纹— 受信任的许可证颁发者。

    示例:发行人:发行人指纹

  • 产品 SKU— 此许可证的产品标识符,由许可证颁发者在创建许可证时定义。同一商品 SKU 可能存在于多个 ISV 中。因此,可信密钥指纹起着重要作用。

    示例:

  • 授权— 检出的功能。如果指定了无限制功能,则数量为零。例如:

    "Entitlements": [ { "Name": "DataTransfer", "Unit": "Gigabytes", "Value": 10 }, { "Name": "DataStorage", "Unit": "Gigabytes", "Value": 5 } ]
  • Beneficiary— 软件即服务 (SaaS) ISV 可以通过包含客户标识符代表客户签出许可证。License Manager 限制对 SaaS ISV 帐户中创建的许可证存储库的调用。

    示例:user@domain.com

  • 节点编号— 用于将许可证节点锁定到应用程序的单个实例的标识符。

    例如:10.0.21.57

删除卖家颁发的许可证

删除许可证后,您可以重新创建许可证。许可证及其数据将保留六个月,并以只读模式供许可证颁发者和许可证授予者使用。

可以使用以下过程删除您使用Amazon Web Services Management Console. 或者,您可以使用删除许可证API 操作。

使用控制台删除许可证

  1. 打开 License Manager 控制台:https://console.aws.amazon.com/license-manager/.

  2. 选择卖家颁发许可证从左侧菜单中。

  3. 选择许可证旁边的单选按钮,选择要删除的许可证。

  4. 选择 Delete。当系统提示进行确认时,输入delete,然后选择Delete.