コンテンツにスキップ

ダイアログ

Vendorプランでアプリを販売するときのライセンス設計

Vendor プランは、VisualCustomize で構築したカスタマイズを 顧客に配布・販売する ことを想定したプランです。スタンドアロンJSとして書き出したアプリを顧客の kintone 環境にインポートしてもらうことで、顧客側にプラグインをインストールしなくてもカスタマイズを動作させられます。

このTIPSでは、配布前提の運用で重要になる AuthTide 設定の有無による挙動の違い と、ベンダーがVC契約を終了した場合のリスク を整理します。

1. ベンダーがVisualCustomizeで設定(自社kintone)
2. FABメニュー「JS追加」でスタンドアロンJSを生成→アプリに登録
3. アプリをエクスポート(テンプレートファイル)
4. 顧客が自社kintoneにインポート
→ スタンドアロンJSも一緒にコピーされる
5. 顧客側でカスタマイズが動作開始

顧客側には VisualCustomize プラグインのインストールは不要です。

Vendor プランのスタンドアロンJSは、AuthTide 設定の有無 によってライセンス制御の仕組みが変わります。

パターンA: AuthTide設定なし(VC認証を流用)

Section titled “パターンA: AuthTide設定なし(VC認証を流用)”

設定不要で、生成されたJSはVC認証サーバー(マミークラウド)に対して認証を行います。

顧客kintoneでJS実行時:
POST https://authtide.mammycloud.com/v1/auth
header: domain=ベンダー契約ドメイン, code=PLUGIN_ID
body: { source: 'standalone', runtimeDomain: 顧客のkintoneドメイン }
→ 200 OK(ベンダーのVC契約として認証成立)
→ サーバー側ログ: ベンダー → 顧客ドメインに配布されたことを記録
メリットデメリット
設定が一切不要、すぐ配布できる配布先ごとの個別ON/OFFができない
サーバー側で配布先ドメインを把握可能VC契約終了時に配布済みJSも止まる(後述)

パターンB: AuthTide設定あり(自社サーバー)

Section titled “パターンB: AuthTide設定あり(自社サーバー)”

ベンダー自社のAuthTideサーバーを立て、設定画面の「🔐 AuthTide設定」ボタンから認証URLを登録します。生成されたJSは自社サーバーに対して認証を行います。

顧客kintoneでJS実行時:
POST https://ベンダー自社サーバー/auth
header: domain=顧客のkintoneドメイン, code=ベンダー発行コード
→ ベンダー自社のロジックで認証判定
メリットデメリット
配布先ごとに個別ON/OFFが可能自社AuthTideサーバーの構築・運用が必要
VC契約終了後も既存JSは動作し続ける(自社サーバーが稼働している限り)認証コード生成は VisualCustomize 設定画面で行う

ベンダーが VisualCustomize の契約を終了した場合、新規のスタンドアロンJS作成・修正はできなくなります(プラグイン設定画面が動かなくなるため)。

問題は 既存の配布済みJSの挙動 です。AuthTide設定の有無で大きく異なります。

状態既存JSの動作
AuthTide未設定(パターンA)動作しなくなる
AuthTide設定あり(パターンB)動作し続ける

なぜ AuthTide 未設定だと止まるのか

Section titled “なぜ AuthTide 未設定だと止まるのか”

パターンAでは、配布済みのJSはVC認証サーバー(マミークラウド)に対して「ベンダー契約ドメイン+PLUGIN_ID」で認証します。VC契約が終了するとサーバー側で「該当ドメインにアクティブなプラグインライセンスなし」と判定され、認証NGが返ります。結果として顧客側のJSは認証エラーで全ルール実行が停止します。

なぜ AuthTide 設定ありだと動き続けるのか

Section titled “なぜ AuthTide 設定ありだと動き続けるのか”

パターンBでは、配布済みのJSはベンダー自社のAuthTideサーバーに対してのみ認証します。VCサーバーは関与しません。ベンダー自社のサーバーが稼働している限り、JSは正常に動作します。

想定運用おすすめ
自社内で使うだけ、または短期PoC配布パターンA(AuthTide未設定)で十分
顧客に長期サポート付きで販売するパターンB(AuthTide設定)が安全
顧客ごとに有効/無効を切り替えたいパターンB 必須
配布後にVC契約を終了する可能性があるパターンB で「自社サーバーが残れば顧客のJSは止まらない」状態にしておく

商用配布を考えるなら、ベンダーは 長期運用リスクを顧客に説明できる状態 にしておくのが望ましいです。AuthTide 自社サーバーの構築方法については別途お問い合わせください。