ライセンス

ライセンスは LicenseChain の中核です。各ライセンスは、ユーザーがソフトウェアを使用するための有効な許可を表します。

ライセンスとは何ですか?

A ライセンス LicenseChain では、ソフトウェアを使用する権利をユーザーに与えるデジタル許可です。 各ライセンスには、ユーザー、ユーザーが所有するプラン、有効期限が切れる時期、ユーザーがアクセスできる機能に関する情報が含まれています。

ライセンスは暗号的に安全であり、API を通じてリアルタイムで検証できます。 永久ライセンス、サブスクリプションベース、トライアルライセンスなど、さまざまなライセンスタイプをサポートしています。

ライセンス構造

コアプロパティ

  • ライセンスキー - 一意の識別子
  • プラン - ライセンスレベル (無料、プロ、ビジネス、エンタープライズ)
  • 検証タイプ - 検証レベル (ベーシック、アドバンス、エンタープライズ)
  • 状態 - 現在の状態 (アクティブ、期限切れ、一時停止)
  • 有効期限 - ライセンスの有効期限が切れた場合

ユーザー情報

  • 発行先 - 顧客名または会社名
  • 電子メール - お客様のメールアドレス
  • 特徴 - 利用可能な機能と機能
  • メタデータ - カスタムデータとタグ

ライセンスの種類

永久ライセンス

期限切れのない 1 回限りの購入ライセンス。デスクトップアプリケーションに最適です。

  • 有効期限なし
  • 1回払い
  • 生涯アクセス
  • デスクトップアプリに最適

サブスクリプションライセンス

定期的な更新が必要な継続ライセンス。 SaaS アプリケーションに最適です。

  • 月次/年更新
  • 自動有効期限切れ
  • 定期的な請求
  • SaaS アプリに最適

トライアルライセンス

評価目的の期間限定ライセンス。購入前のお試しに最適です。

  • 期間限定 (7 ~ 30 日間)
  • フル機能へのアクセス
  • 自動変換
  • デモに最適

ライセンスの検証

リアルタイム検証

100 ミリ秒未満の応答時間でリアルタイムにライセンスを検証します。使用 POST /v1/licenses/verify 体と一緒に { "key": "LICENSE-KEY" }。オプション hwuid (または hardwareId) ハードウェア バインディングを有効にします。ライセンスにデバイスがバインドされている場合、指定された hwuid が一致する必要があり、一致しない場合は応答が返されます。 valid: falsereason: "hardware_id_mismatch".

// License verification example
// Verify license key with client
// Check if license is valid and handle accordingly

ハードウェア バインディング (HWUID)

オプションのハードウェア/デバイス バインディング (HWUID) により、ライセンスが特定のデバイスに制限されます。送信 hwuidPOST /v1/licenses/verify (例: SDK から getHardwareId())。ライセンスにバインドされたデバイスがまだない場合は、hwuid を使用した最初の成功した検証により、初回使用バインドが実行されます。使用 POST /v1/licenses/bind-hardware (認証済み) 明示的にバインドする、および POST /v1/licenses/validate-hardware キー + ハードウェア ID を検証します。すべての公式 SDK はオプションでサポートします hwuid 検証では、Webhook 署名検証のために定数時間比較を行う HMAC-SHA256 を使用します。

ライセンス アサーション トークン (オフライン検証)

オンライン後に POST /v1/licenses/verify、コア API が返す場合があります license_token (RS256 JWT)、 license_token_expires_at、 そして license_jwks_uri 署名キーが API で設定されている場合。トークンを安全に保管し、次を使用して署名を検証します。 GET /v1/licenses/jwks、 必要とする token_use === "licensechain_license_v1"、検証します exp そして(アプリごとのライセンスを発行する場合) aud アプリIDと一致します。有効期限が切れる前に再度 verify を呼び出して更新します。層は TTL に影響します (lc_vt:ベーシック/アドバンスト/カスタム)。を参照してください。 セキュリティガイド 非対称検証と JWKS キャッシュ用。

ベストプラクティス

安全

  • クライアントだけでなくサーバー上のライセンスも必ず確認してください
  • すべての API 通信に HTTPS を使用する
  • 乱用を防ぐために適切なレート制限を実装する
  • 監査のためにすべてのライセンス検証の試行をログに記録します
  • デバイスのフィンガープリントを使用してライセンスの共有を防止する

パフォーマンス

  • 必要に応じてライセンス検証結果をキャッシュする
  • ユーザーエクスペリエンスを向上させるためにオフライン認証を使用する
  • 適切なエラー処理と再試行ロジックを実装する
  • APIの使用状況を監視し、アラートを設定する
  • 一括操作を使用して複数のライセンスを管理する

ユーザーエクスペリエンス

  • 無効なライセンスについては明確なエラー メッセージを提供する
  • ネットワークの問題に対してグレースフル デグラデーションを実装する
  • ライセンスの有効期限が切れる前に有効期限の警告を表示する
  • 簡単なライセンス更新とアップグレード パスを提供
  • さまざまなユースケースに合わせて複数のライセンスタイプをサポート