コンテンツにスキップ

ダイアログ

スタンドアロンJSの作成可否とライセンス挙動

VisualCustomize で設定したルールは、kintoneプラグインとして実行する以外に、スタンドアロンJS としてアプリのJSカスタマイズに登録することもできます。プラグイン本体をインストールせずに動作するので、配布や別環境への展開がしやすくなります。

ただし、プランによって作成可否やライセンス制限が異なるため、運用前に挙動を理解しておく必要があります。

プランスタンドアロンJS作成ライセンス制御方式
Free❌ 不可
Standard✅ 可ドメインロック(生成元ドメインでのみ実行可能)
Vendor✅ 可ドメインロックなし。AuthTide設定の有無で認証方法が変わる

設定画面のFABメニュー「JS追加」ボタンは Free プランでは無効化され、説明文に「Standard プラン以上で利用可能」と表示されます。

Standard プラン: ドメインロックの仕組み

Section titled “Standard プラン: ドメインロックの仕組み”

Standard プランで生成されたスタンドアロンJSには、2段階のドメインロックが自動的に組み込まれます。

1段目: クライアントサイドチェック

Section titled “1段目: クライアントサイドチェック”

JS実行時に kintone.getDomain() で実行環境のドメインを取得し、生成時に埋め込まれた契約ドメインと比較します。一致しなければ即座にエラーダイアログを表示し、ルール実行を中断します。

2段目: サーバーサイドチェック

Section titled “2段目: サーバーサイドチェック”

クライアントチェック通過後、kintone.getDomain() の結果と PLUGIN_ID を VC認証サーバー(マミークラウド)に送信して検証します。これにより、JSファイル内のドメイン文字列を改ざんしても突破できません。

Standard で生成したスタンドアロンJS実行時:
┌─────────────────────────────────────┐
│ 1. kintone.getDomain() で実行ドメイン取得 │
│ 2. 埋め込みドメインと比較 │
│ 一致 → 次へ / 不一致 → エラー │
│ 3. /auth API へドメイン+PLUGIN_ID送信 │
│ OK → ルール実行 / NG → エラー │
└─────────────────────────────────────┘

ドメインロックに引っかかると、以下のメッセージが表示されます:

ライセンスエラー このJSは ◯◯◯.cybozu.com 専用です。 Vendor プランではドメイン制限なしで利用できます。

Vendor プラン: ドメインロックなしの理由

Section titled “Vendor プラン: ドメインロックなしの理由”

Vendor プランは「VisualCustomize で構築したカスタマイズを顧客に配布する」ことを前提にしているため、ドメインロックは付与されません。代わりに、AuthTide 設定によって2種類のライセンス制御方式を選択できます(詳細は次のTIPSを参照)。

別スペース・別アプリへの複製

Section titled “別スペース・別アプリへの複製”

スタンドアロンJSは kintone のアプリ単位の「JSカスタマイズ」として登録されているため、アプリの複製 機能でJSもコピーされます。複製先での動作可否は以下のとおりです。

同じkintone環境内で複製した場合(同じドメイン)

Section titled “同じkintone環境内で複製した場合(同じドメイン)”
プラン複製後の動作
Standard✅ 動作する。ドメインロックは「ドメイン」のみ確認するため、アプリIDが変わっても問題なし
Vendor✅ 動作する。ドメインロックなし

別の kintone 環境にエクスポート/インポートした場合(別ドメイン)

Section titled “別の kintone 環境にエクスポート/インポートした場合(別ドメイン)”
プラン複製後の動作
Standard❌ 動作しない。クライアント+サーバーの2段ドメインロックで弾かれる
Vendor + AuthTide未設定✅ 動作する。VC契約ドメインで認証成功し、サーバー側で配布先ドメインが記録される
Vendor + AuthTide設定ありベンダー自社AuthTideサーバーの設定次第

つまり、「自社内で使い回したい」なら Standard で十分「他社に配布したい」なら Vendor が必要です。