AMI 製品の契約価格AWS License Manager - AWS Marketplace

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AMI 製品の契約価格AWS License Manager

契約価格の Amazon マシンイメージ (AMI) ベースの製品の場合は、AWSLicense Manager を使用して、ライセンスを製品に関連付けます。

AWS License Managerは、顧客が購入したライセンス (エンタイトルメントとも呼ばれる) をアプリケーションで追跡および更新できるようにするライセンス管理ツールです。このセクションでは、製品をと統合する方法について説明します。AWS License Manager。統合が完了したら、製品リストをAWS Marketplace。

の詳細AWS License Manager「」を参照してください。AWS License ManagerユーザーガイドAWS License Managerの セクションAWS CLIコマンドリファレンス

注記
  • 契約の有効期限が切れると、お客様は AMI の新しいインスタンスを起動できません。ただし、契約期間中は、任意の数のインスタンスを起動できます。これらのライセンスはノードロックされておらず、特定のインスタンスに関連付けられていません。

  • プライベートオファーの作成— 出品者は、の非公開オファー作成ツールを使用して、商品の非公開オファーを生成できます。AWS Marketplace 管理ポータル。

  • レポート作成— データフィードを設定するために、Amazon S3 バケットをReportのセクションAWS Marketplace 管理ポータル。詳細については、販売者レポートとデータフィード を参照してください。

ライセンスモデル

AWS Marketplaceと の統合AWS License Managerは 2 つのライセンスモデルをサポートしています。

設定可能なライセンスモデル

構成可能ライセンスモデル (数量化可能ライセンスモデルとも呼ばれる) は、購入者がライセンスを取得した後、購入者に特定の量のリソースを付与します。

価格設定ディメンションと単価を設定します。次に、購入者は購入するリソースの数量を選択できます。

例 価格ディメンションと単価あたり

価格ディメンション (データバックアップなど) と単価 (30ドル/ユニットなど) を設定できます。

購入者は、5 個、10 個、または 20 個購入できます。

製品は使用量を追跡して測定し、消費されたリソースの量を測定します。

構成モデルでは、エンタイトルメントは、次の 2 つのいずれかにカウントされます。

ドローダウンライセンス

ライセンスは、使用時に許可されたライセンス数のプールから引き出されます。その資格は永久にチェックアウトされ、ライセンスプールに戻すことはできません。

例 限られた量のデータを処理する

ユーザーには 500 GB のデータを処理する権利があります。データを処理し続けると、500 GBのライセンスがすべて消費されるまで、500 GBのプールから数量が引き出されます。

ドローダウンライセンスでは、CheckoutLicense消費されたライセンスユニットをチェックアウトする API オペレーション。

例 S3へのバックアップの単位数/年

Amazon S3 (Amazon S3) に、1 年間最大 1024 ユニットのデータをバックアップできるストレージ製品があります。アプリケーションは、複数の Amazon EC2 インスタンスを使用して起動できます。アプリケーションには、データを追跡および集計するメカニズムがあります。ソフトウェアがCheckoutLicense消費された数量を更新するために、バックアップごとに、または一定間隔でプロダクト ID を使用する API オペレーション。

この例では、ソフトウェアが呼び出されます。CheckoutLicense10単位のデータをチェックアウトします。合計容量が顧客が購入したバックアップ制限に達すると、API 呼び出しは失敗します。

リクエスト

linux-machine ~]$ aws license-manager checkout-license\ --product-sku "2205b290-19e6-4c76-9eea-377d6bf7la47" \ --checkout-type "PERPETUAL" \ --key-fingerprint "aws:294406891311:AWS/Marketplace:issuer-fingerprint" \ --entitlements "Name=DataConsumption, Value=l0, Unit=Count" \ --client-token "AKIAIOSFODNN7EXAMPLE"

[Response] (レスポンス)

{ "CheckoutType": "PERPETUAL", "EntitlementsAllowed": [ { "Name": "DataConsumption", "Count": 10, "Units": "Count", "Value": "Enabled" } }, "Expiration": "2021-04-22Tl9:02: 36", "IssuedAt": "2021-04-22Tl8:02:36", "LicenseArn": "arn:aws:license-manager::294406891311:license:l-16bf01b...", "LicenseConsumptionToken": "AKIAIOSFODNN7EXAMPLE" }

浮遊ライセンス

ライセンスは、使用後に許可されたライセンス数のプールに戻されます。

例 固定された上限からのユーザー数の割合

1 人のユーザーには、アプリケーションで 500 人の同時ユーザーに対する権利が与えられます。ユーザーがログインしてログアウトすると、ユーザーは引き出され、500人のユーザーのプールに戻ります。ただし、500 人の同時ユーザーが固定の上限であるため、アプリケーションはプールから 500 人を超えるユーザーを引き出すことはできません。

フローティングライセンスの場合は、CheckInLicenseライセンスユニットをエンタイトルメントプールに戻すための API オペレーション。

例 1 年間の同時ユーザー数

製品の料金は、同時ユーザー数に基づいて行われます。顧客は1年間10ユーザー分のライセンスを購入します。顧客は、次の方法でソフトウェアを起動します。AWS Identity and Access Management(IAM) 権限。ユーザーがログインすると、アプリケーションはCheckoutLicense数量を 1 減らすための API オペレーション。ユーザーがログアウトすると、アプリケーションはCheckInLicenseAPI オペレーション。電話しなければCheckInLicenseの場合、ライセンスユニットは 1 時間後に自動的にチェックインされます。

注記

次のリクエストでは、key-fingerprintはプレースホルダ値ではなく、すべてのライセンスが公開されるフィンガープリントの実際の値です。

リクエスト

linux-machine ~]$ aws license-manager checkout-license\ --product-sku "2205b290-19e6-4c76-9eea-377d6bf7la47" \ --checkout-type "PROVISIONAL" \ --key-fingerprint "aws:294406891311:AWS/Marketplace:issuer-fingerprint" \ --entitlements "Name=ReadOnlyUSers, Value=l0, Unit=Count" \ --client-token "AKIAIOSFODNN7EXAMPLE"

[Response] (レスポンス)

{ "CheckoutType": "PROVISIONAL", "EntitlementsAllowed": [ { "Name": "ReadOnlyUsers", "Count": 10, "Units": "Count", "Value": "Enabled" } }, "Expiration": "2021-04-22Tl9:02: 36", "IssuedAt": "2021-04-22Tl8:02:36", "LicenseArn": "arn:aws:license-manager::294406891311:license:l-16bf01b...", "LicenseConsumptionToken": "AKIAIOSFODNN7EXAMPLE" }

階層型ライセンスモデル

階層型ライセンスモデルは、購入者がライセンスを購入した後、特定のレベル、またはアプリケーション機能の階層を購入者に付与します。

ベーシック、中級、プレミアムなど、製品の階層を作成します。次に、購入者は定義済みの階層の1つを選択します。

アプリケーションは、アプリケーションの使用状況を追跡または測定する必要はありません。

階層型ライセンスモデルでは、資格はカウントされず、代わりに顧客が調達したサービスの階層を示します。

バンドルされた機能を一緒に提供する場合は、階層型ライセンスモデルを使用することをお勧めします。

例 ベーシック、中級、プレミアムティアの

お客様は、ソフトウェアの 3 つの可能な階層のうちの 1 つの契約に署名できます。ベーシック、中級、プレミアム。これらの階層にはそれぞれ独自の価格設定があります。ソフトウェアは、顧客がサインアップした階層をCheckoutLicenseAPI オペレーションと、リクエストで可能なすべての階層を指定する。

リクエストの応答には、顧客が調達した階層に対応するエンタイトルメントが含まれます。この情報に基づいて、ソフトウェアは適切な顧客体験を提供できます。

リクエスト

linux-machine ~]$ aws license-manager checkout-license\ --product-sku "2205b290-19e6-4c76-9eea-377d6bf7la47" \ --checkout-type "PROVISIONAL" \ --key-fingerprint "aws:294406891311:AWS/Marketplace:issuer-fingerprint" \ --entitlements "Name=BasicTier, Unit=None" "Name=IntermediateTier, Unit=None" \ "Name=PremiumTier, Unit=None"

応答

{ "CheckoutType": "PROVISIONAL", "EntitlementsAllowed": [ { "Name": "IntermediateTier", "Units": "None" } }, "Expiration": "2021-04-22Tl9:02:36", "IssuedAt": "2021-04-22Tl8:02:36", "LicenseArn": "arn:aws:license-manager::294406891311:license:l-16bf01b...", "LicenseConsumptionToken": "AKIAIOSFODNN7EXAMPLE" }

統合ワークフロー

以下の手順は、AMI 製品と統合するワークフローを示しています。AWS License Manager:

  1. 出品者が商品を作成したのはAWS License Manager統合。

  2. 出品者は商品をAWS Marketplace。

  3. 購入者は次の場所で製品を見つけますAWS Marketplaceそれを購入します。

  4. ライセンスが購入者に送られますAWS アカウント。

  5. 購入者は、Amazon Elastic Compute Cloud (Amazon EC2) インスタンス、Amazon Elastic Container Service (Amazon ECS) タスク、または Amazon Elastic Kubernetes Service (Amazon EKS) ポッドソフトウェアを起動してソフトウェアを使用し、お客様は IAM ロールを使用してデプロイします。

  6. ソフトウェアは購入者のライセンスを読み取りますAWS License Managerアカウントにアクセスし、購入したエンタイトルメントを検出し、それに応じて機能をプロビジョニングします。

    注記

    License Manager は追跡や更新を行いません。これは販売者のアプリケーションによって行われます。

License Manager および

製品を公開する前に、次を行う必要があります。

  1. で新しい AMI 製品を作成するAWS Marketplace 管理ポータル、その製品コードを書き留めます。

  2. 製品積載フォーム (PLF) に必要な価格情報を入力し、処理のために当社に返送してください。

  3. を呼び出すために必要な IAM アクセス権限を持つアプリケーションを実行するタスクまたは Pod の IAM ロールを使用します。CheckoutLicense,ExtendLicenseConsumption, およびCheckInLicense

    必要な IAM 権限は、次の IAM ポリシーで詳しく説明されています。

    { "Version":"2012-10-17", "Statement":[ { "Sid":"VisualEditorO", "Effect":"Allow", "Action":[ "license-manager:CheckoutLicense", "license-manager:GetLicense", "license-manager:CheckInLicense", "license-manager:ExtendLicenseConsumption", "license-manager:ListReceivedLicenses" ], "Resource":"*" } ] }
  4. にテストコールを発信するRegisterUsage定義したすべての料金ディメンションのレコードを使用した API オペレーション。

AMI ベースの製品をAWS License Manager

AMI ベースの製品を License Manager と統合するには、AWS License ManagerAPI。を使用して Amazon EC2 インスタンスを起動します。AWS MarketplaceAMI ベースの製品。

注記

「」を完了していることを確認してください。License Manager および以下の手順を実行する前に

AMI ベースの製品を License Manager と統合するには

  1. ライセンスマネージャーでテストライセンスを作成する のステップを完了します。統合をテストするには、License Manager でテストライセンスを作成する必要があります。

  2. を実行GetLicenseステップ 1 で取得したライセンス Amazon リソースネーム (ARN) を使用する API オペレーション。の値をメモしておきます。KeyFingerprintでの属性GetLicense後で使用するために、レスポンス。

  3. 最新のパブリックをダウンロードして含めるAWSアプリケーションの SDK。

  4. 購入者がアプリケーションのライセンスを使用する権利があることを確認するには、CheckoutLicenseAPI オペレーション。ステップ 1 で取得したテストライセンスのエンタイトルメントの詳細とキーフィンガープリントを使用します。

    ライセンスのエンタイトルメントが見つからない場合、またはエンタイトルメントの最大数を超えた場合、CheckoutLicenseAPI オペレーションの結果NoEntitlementsAllowedException。エンタイトルメントが有効であるか、使用できる場合は、CheckoutLicenseオペレーションは、要求されたエンタイトルメントとその値を含む正常なレスポンスを返します。

  5. (フローティングエンタイトルメントにのみ必要)CheckinLicenseを使用した API オペレーションLicenseConsumptionTokenそれはで受け取ったCheckoutLicenseレスポンス。このアクションにより、以前にチェックアウトしたエンタイトルメントが使用可能なエンタイトルメントのプールに解放されます。

  6. 手順 1 で作成したテストライセンスと License Manager の統合を正常に検証したら、コード内のキーフィンガープリントをaws:294406891311:AWS/Marketplace:issuer-fingerprint。これで、によって発行されたライセンスを使用する準備が整いました。AWS Marketplace。

AMI 製品へのアプリケーション構築のリリースプロセスに従い、製品をAWS Marketplace製品公開プロセスに従います。

ライセンスマネージャーでテストライセンスを作成する

バージョン 2 のAWS Command Line Interface(AWS CLI) をクリックして、テストライセンスを作成します。AWS License Manager。このテストライセンスは、AWS License Manager統合。テストが完了したら、テストライセンスを削除できます。実際のライセンスは、AWS Marketplace別のキーフィンガープリントで。

AWS Marketplaceでは、2 種類のエンタイトルメントがサポートされます。AWS License Manager。ただし、1 つの製品に対して有効にできるタイプは 1 つだけです。テストライセンスを含むライセンスを作成するときは、次のいずれかのタイプの資格を指定する必要があります。

階層エンタイトルメント— 階層型ライセンスモデルでは、お客様に特定のアプリケーション機能の使用資格が与えられます。顧客は購入するユニットの数量を定義することはできません。ただし、定義済みのパッケージまたは階層を 1 つ選択できます。顧客は後で契約を変更して別の階層にサブスクライブできます。

設定可能なエンタイトルメント— 構成可能なライセンスモデルは、顧客がライセンスを調達するときに、一定量のリソースに対する権利を付与します。顧客は、サブスクリプションプロセス中に購入するユニットの数量を選択し、ユニット価格に基づいて請求されます。顧客は複数のディメンションを購読することもできます。

で使用するための必須パラメータCheckoutLicenseAPI の操作は次のとおりです。

  • CheckoutType— 有効な値は以下のとおりです。PerpetualまたはProvisional:

    • Perpetual— チェックアウトされたエンタイトルメントの数がプールから使い果たされる場合に使用されます。例: 購入者は500GBのデータを処理する権利があります。データを処理し続けると、量は引き出され、500 GBのプールから使い果たされます。ライセンスが期限切れか、まもなく期限切れになるかに関する購入済みライセンスのステータスを取得して、顧客に通知を送信します。

    • Provisional— フローティングライセンスエンタイトルメントに使用され、エンタイトルメントがプールからチェックアウトされ、使用後に返却されます。例: ユーザーは、アプリケーション内で500人の同時ユーザーを受ける権利があります。ユーザーがログインしてログアウトすると、ユーザーは引き出され、500人のユーザーのプールに戻ります。浮遊エンタイトルメントの詳細については、「」を参照してください。販売店が発行したAWS License Manager および

  • ClientToken— 大文字と小文字を区別する一意の識別子で、正確な結果が得られ、試行回数に関係なく同じであることを保証します。各リクエストには、ランダムな汎用一意識別子 (UUID) を使用することをお勧めします。

  • Entitlements— チェックアウトするエンタイトルメントのリスト。

    • 階層化されたエンタイトルメントについては、NameそしてUnitプロパティを次のように行います。

      {

      "Name": "<Entitlement_Name>",

      "Unit": "None"

      }

    • 設定可能なエンタイトルメントについては、Name,Unit, およびValueプロパティを次のように行います。

      {

      "Name": "<Entitlement_Name>",

      "Unit": "<Entitlement_Unit>",

      "Value": <Desired_Count>{

      }

  • KeyFingerprint— このキーフィンガープリントを使用して、ライセンスがAWS Marketplace。によって発行されたライセンスのキーフィンガープリントAWS Marketplaceその内容は次のとおりです。

    aws:294406891311:AWS/Marketplace:issuer-fingerprint

  • Product SKU— グローバル一意識別子 (GUID) 形式の製品 ID がAWS Marketplaceの製品。

例 設定可能なエンタイトルメントの

以下に示したのは、を使用するリクエストの例です。CheckoutLicenseという名前の設定可能なエンタイトルメントをチェックアウトする API オペレーションPowerUsers

aws license-manager checkout-license \ product-sku "2205b290-19e6-4c76-9eea-377d6bf71a47" \ checkout-type "PROVISIONAL" \ client-token "79464194dca9429698cc774587a603a1" \"Statement":[ entitlements "Name=PowerUsers,Value=1,Unit=Count" \ key-fingerprint "aws:294406891311:AWS/Marketplace:issuer-fingerprint"

例 階層化されたエンタイトルメントの

以下に示したのは、を使用するリクエストの例です。CheckoutLicenseという名前の機能エンタイトルメントをチェックアウトする API オペレーションEnterpriseEdition

aws license-manager checkout-license \ --product-sku "2205b290-19e6-4c76-9eea-377d6bf71a47" \ --checkout-type "PROVISIONAL" \ --client-token "79464194dca9429698cc774587a603a1" \ --entitlements "Name=EnterpriseEdition,Unit=None" \ --key-fingerprint "aws:294406891311:AWS/Marketplace:issuer-fingerprint"

AMI ベースの製品のテストライセンスを作成するには

  1. ローカル環境からAWS CLIv2 をインストールしたら、以下のスクリプティングを実行します。このスクリプトは、テストライセンスを作成し、適切な製品の詳細を設定します。

    #!/bin/bash # Replace with intended product ID on AWS Marketplace PRODUCT_ID=<REPLACE-WITH-PRODUCT-ID> # Replace with license recipient's AWS Account ID BENEFICIARY_ACCOUNT_ID=<REPLACE-WITH-BENEFICIARY-ACCOUNT-ID>\ # Replace with your product's name PRODUCT_NAME="Test Product" # Replace with your seller name on AWS Marketplace SELLER_OF_RECORD="Test Seller" # Replace with intended license name LICENSE_NAME="AWSMP Test License" # Replace with desired contract dimensions # More info here: https://docs.aws.amazon.com/license-manager/latest/APIReference/API_Entitlement.html CONFIGURABLE_ENTITLEMENTS='[ { "Name": "ReadOnly", "MaxCount": 5, "Overage": false, "Unit": "Count", "AllowCheckIn": true } ]' TIERED_ENTITLEMENTS='[ { "Name": "EnterpriseUsage", "Value": "Enabled", "Unit": "None" ]' # Format "yyyy-mm-ddTHH:mm:ss.SSSZ" # This creates a validity period of 10 days starting the current day # Can be updated to desired dates VALIDITY_START=$(date +%Y-%m-%dT%H:%M:%S.%SZ) VALIDITY_END=$(date -v +10d +%Y-%m-%dT%H:%M:%S.%SZ) # Configuration for consumption of the license as set on Marketplace products CONSUMPTION_CONFIG='{ "RenewType": "None", "ProvisionalConfiguration": { "MaxTimeToLiveInMinutes": 60 } }' # License's home Region HOME_REGION=us-east-1 # License issuer's name ISSUER=Self # Run AWS CLI command to create a license aws license-manager create-license \ --license-name "${LICENSE_NAME}" \ --product-name "${PRODUCT_NAME}" \ --product-sku "${PRODUCT_ID}" \ --issuer Name="${ISSUER}" \ --beneficiary "${BENEFICIARY_ACCOUNT_ID}" \ --validity Begin="${VALIDITY_START}",End="${VALIDITY_END}" \ --entitlements "${CONFIGURABLE_ENTITLEMENTS}" \ # Replace with `TIERED_ENTITLEMENTS` if desired --home-region "${HOME_REGION}" \ --region "${HOME_REGION}" \ --consumption-configuration "${CONSUMPTION_CONFIG}" \ --client-token $(uuidgen)
  2. を使用してライセンスを付与しますAWS License Managerconsole. 詳細については、次を参照してください。エンタイトルメントの配信License Manager および

  3. にサインインします。AWS アカウントそれは購入者アカウントとして機能します。に移動します。AWS License Managerコンソールを使用して、付与されたライセンスを受け入れてアクティブ化します。詳細については、次を参照してください。付与されたライセンスを管理するLicense Manager および

  4. 環境で次のコマンドを実行します。

    aws license-manager checkout-license \ product-sku "${PRODUCT_ID}" \ checkout-type "PROVISIONAL" \ key-fingerprint "aws:294406891311:AWS/Marketplace:issuer-fingerprint" \ entitlements "${CONFIGURABLE_ENTITLEMENTS}" \ client-token $(uuidgen)

    前のコマンドはPROVISIONALの値としてCheckoutTypeパラメータ。エンタイトルメントがドローダウンライセンスを使用している場合は、PERPETUALの値。

License Manager および

顧客の License Manager アカウントに保存されているライセンスを管理するために、ソフトウェアは次の API 呼び出しを使用できます。

  • GetLicense— ライセンスの有効期限が切れているか、まもなく期限切れになるかに関する購入済みライセンスのステータスを取得して、顧客に通知を送信します。

  • CheckoutLicense— ユーザーが購入したライセンスを検出します。また、ユーザーが一定量のライセンスを消費したときに、ライセンス数量を更新するためにも使用できます。とCheckoutLicenseでは、顧客が使用するライセンスの数量を継続的に確認できます。お客様がすべてのライセンスを使い果たした場合、この呼び出しはエラーを返します。推奨される実行ケイデンスについての情報CheckoutLicense「」を参照してください。ライセンスの更新とアップグレード

  • ExtendLicenseConsumption— フローティングディメンションの場合、ソフトウェアがライセンスをチェックアウトすると、60 分後にライセンスが自動的にプールに戻されます。ライセンスがチェックアウトされている期間を延長する場合、ソフトウェアは以下を呼び出すことができます。ExtendLicenseConsumptionライセンスをさらに60分間延長します。

  • CheckInLicense— 変動ディメンションの場合、ライセンスをエンタイトルメントプールに戻す場合は、CheckInLicense

  • ListReceivedLicenses— 購入者が購入したライセンスを一覧表示します。

ライセンスの更新とアップグレード

お客様は、次の場所でライセンスを更新またはアップグレードできます。AWS Marketplace 管理ポータル。追加購入後、AWS Marketplaceでは、新しいエンタイトルメントを反映した新しいバージョンのライセンスが生成されます。ソフトウェアは同じ API 呼び出しを使用して新しいエンタイトルメントを読み取ります。更新やアップグレードを処理するために、License Manager Integration に対しては何も行う必要がありません。

ライセンスの更新、アップグレード、キャンセルなどのため、お使いの製品がCheckoutLicense製品が使用されている間、定期的にAPIを呼び出します。を使用してCheckoutLicenseAPI操作を定期的に行うことで、製品はアップグレードや有効期限などのエンタイトルメントの変更を検出できます。

を実行することをお勧めします。CheckoutLicenseAPI 呼び出しは 15 分ごとに行います。