署名の種類(アプリの画面に出るバッジ)
| 種類 | 意味 | 使える権限 |
|---|---|---|
| 公式 | LinkStudio(提供者)が作った拡張機能 | すべて |
| 審査済み | 提供者の審査を通った拡張機能 | すべて |
| 登録済み(未審査) | サーバーへ登録して自動で署名された拡張機能。審査はしていません | 標準の権限だけ |
| 開発中(未署名) | 作者本人の PC の開発者モードで動かしているもの | すべて(作者本人の PC だけ) |
利用者が「登録済み」の拡張機能を入れるときは、「審査を受けていません。作者を信頼できるときだけ入れてください」と表示されます。
流れ
- 開発者規約に同意 し、SyncSing Identity でログインする(開発者としての登録は誰でもできます)。
- SyncSing Studio の開発者モードで作って試す。
- 新しい拡張機能のときだけ、
syncsing_plugin.py uuid <フォルダ>で、サーバーに UUID を発行してもらう(manifest のuuidを書き換えます。発行した UUID でないと受け付けられません)。 版を上げるときは uuid を変えません(変えると別の拡張機能になり、前の版を入れた人に更新が届きません)。manifest にもう uuid があるとuuidは断ります(別の拡張機能として作り直すときだけ--force)。 そのあとsyncsing_plugin.py validate→packで署名前の.sspluginを作る。 syncsing_plugin.py submitで出す。開発者トークンは SyncSing Studio の 設定 → 拡張機能(開発者モード ON)→「開発者トークンを発行」で出し、環境変数SYNCSING_DEVELOPER_TOKENか--tokenで渡します(1 アカウント 1 本。発行し直すと前のトークンは使えなくなります。他人に見せないでください)。 -syncsing_plugin.py whoamiで、トークンの作者 ID(manifest のauthor.identity_idに書く値)を確かめられます。 -submitは送る前に、トークンの作者 ID と manifest のauthor.identity_idが同じかを確かめます(違えば何も送りません)。返ってきた署名も、そのパッケージのもの(中身のハッシュ・uuid・版・作者)か確かめてから付けます。 - 接続先は https だけで、リダイレクトは追いません。既定のサーバー以外へは、--allow-other-serverを付けたときだけ送ります(トークンを送るため)。--tokenはコマンドの履歴に残ることがあるので、なるべく環境変数を使ってください。 - 出す前にsyncsing_plugin.py test <フォルダ>で、つなぎ方と引数の形を確かめておくと、審査で戻されにくくなります。 - 標準の権限だけ: その場で「登録済み」の署名が付いて返ってきます。作者が自分の Web サイトなどで配れます。 - 要審査の権限を含む: 審査に回ります。同梱する EXE・DLL のソースを含む全ソース(--source)と、動作を確かめる手順(--steps)が必要です。提出物は審査にだけ使い、公開しません。 - 審査に回ったものは、syncsing_plugin.py status <受付番号> <送った .ssplugin>で状態を見られます。署名されていれば、確かめてから…-signed.sspluginを作ります。 - 同じ名前の拡張機能を別の uuid で出すと、サーバーがduplicate_nameで断ります。新しい版なら manifest の uuid を前の版の uuid に戻して出し直してください。本当に別の拡張機能として出すときだけsubmit --new-pluginを付けます。- 配る。利用者は「拡張機能を入れる(.ssplugin)」で入れます。
版を上げるとき(uuid はそのまま)
whoami → ビルド → pack → (要審査なら)ソースの zip → submit。uuid コマンドは使いません。
公式サイトへの掲載
- 公式サイト(https://linkstudio.shop)に載るのは 審査済み の拡張機能だけです。
- 載せ方は
submitの--listingで選びます(審査済みになったときに反映)。
--listing | 公式サイトでは |
|---|---|
none(既定) | 載せません |
free | 一覧に載せ、ダウンロードも置きます(無料で配る) |
paid | 一覧に載せますが、ダウンロードは置かず、販売ページ(--store-url https://…)へのリンクだけを出します |
有料の拡張機能
- 作者が BOOTH などの販売サービスで自分で売ります。LinkStudio は販売経路を持ちません。
- 販売・決済・手数料・返金・購入者への対応に LinkStudio は一切関わらず、責任を負いません。
署名の取り消し
- 規約違反・安全上の問題・宣言と違う動作などがあると、署名が取り消されます。取り消された拡張機能は、利用者のアプリで動かなくなります。
- 作者のアカウントが停止されると、その作者のすべての拡張機能の署名が取り消されることがあります。
- アプリは取り消しの一覧を定期的に確かめます(30 日以上確かめられないと、署名付きの拡張機能を一時的に止めます)。
版の更新
- 版を上げた
.sspluginを入れ直すと更新されます(同じ uuid)。増えた権限だけ利用者にもう一度許可を求めます。 - 利用者は「前の版へ戻す」で 1 つ前の版に戻せます。
- 署名のあとでパッケージを変えると、アプリは読み込みを断ります(中身のハッシュと権限を署名しています)。