Python ツールを販売していますか? 購入者ごとにキーを。
SDK を 1 回呼ぶだけ。ストアのキー、マシン数の上限、返金でオフ。
- Python
- Gumroad
- Lemon Squeezy
- Ko-fi
- Payhip
- Stripe
- Windows
- macOS
- Linux
あなたの売り方に合わせて。
pip install sunlicense
標準ライブラリのみ、Python 3.8+。
result.validマシン数の上限
ライセンスあたり 1、2、または 5 台のマシン。
TOO_MANY_MACHINESストアからキーを発行
Gumroad、Lemon Squeezy、Payhip、Ko-fi、Stripe。
サブスクリプションと体験版
終了したサブスクリプションでキーを一時停止。
オフラインライセンスファイル
署名済み、公開鍵で検証。
Ed25519zip の中にキー
ポータルからのダウンロードに各購入者のキーが入ります。
Standard次のリリースまでに導入。
- 1無料アカウントを作成
- 2ストアを接続
- 3pip install して起動時に検証
import platform
import sys
from sunlicense import SunLicense # pip install sunlicense
client = SunLicense(base_url="https://api.sunlicense.com",
token="slk_...") # API key: validation only, safe to ship
def require_license(key: str) -> None:
result = client.validate(key, host=platform.node())
if not result.valid: # result.data["code"] says why, e.g. TOO_MANY_MACHINES
sys.exit("License not valid. Manage your key at yourtool.example/account")よくある質問。
Python スクリプトにライセンスキーを追加するには?
pip install sunlicense を実行し、ダッシュボードで API キーを作成して、ツールの起動時に client.validate(key, host=machine_id) を呼び出します。valid、HTTP ステータス、EXPIRED や TOO_MANY_MACHINES などのコードを含む JSON 応答が返ります。SDK は標準ライブラリのみを使うため、追加で同梱する依存関係はありません。
購入者が .py ファイルから検証を消せてしまいませんか?
本気の人ならできます。Python のソースは編集でき、PyInstaller でパッケージ化しても難しくなるだけです。キーの検証で防げるのは気軽な共有と返金済みのコピーです。ツールがあなたのサーバー上で行う処理(呼び出す API など)では、取り除けないその場所でキーを検証できます。
ツールをサブスクリプションで販売できますか?
はい。サブスクリプションポリシーを使ってストアを接続します。Gumroad のメンバーシップ、Lemon Squeezy のサブスクリプション、Stripe のサブスクリプションが終了すると、ストアが SunLicense に通知し、キーが一時停止されます。SunLicense が担当するのはライセンスだけで、ツールの動作はあなた次第です。
無料ですか?
はい。Free プランは 3 プロダクト、100 ライセンス、月 10,000 回のライセンス検証まで、クレジットカード不要です。有料プランは月 5 ドルからで、上限を超えても購入者のライセンス検証は動き続けます。
SunLicense