hamatz/chatgpt_minimal_starter_kit

システム側からプラグイン単位で利用可能なデータ暗号化鍵を発行可能にする

Closed this issue · 3 comments

システムのみがMyKeyManagerにアクセスして、データの暗号化や復号が利用可能となっているが、プラグイン側もプラグインのコードにアプリ用のパスフレーズをベタ書きする事なしにセキュアに暗号化を利用できるようにしたい(が、システム管理の鍵で復号できてしまってはAPIトークン等の情報までプラグイン側で取得できてしまうので、そこには制限をつける前提で、ということ)

こちらで暫定対応を入れたが、プラグイン保存先がプラグインのファイル名と現状は一致しているため、対象となるプラグインの保存先を知っている同一名称のクラスを持つ別のプラグインからのAPI呼び出しによって鍵の取得ができてしまう。ので、たとえばプラグインの展開先のフォルダ名の後に乱数をつけるなど、システム全体で攻撃に対する耐性を高める必要がありそうなのでまだ解決ステータスにはしない

848108f

この修正でプラグインの保存先がそれぞれのユーザで別々なものとなるロジックを入れたが、インストール時のzipファイル名を残すべきか残さざるべきか、もう少し悩んでみる予定

b8595d2

スキャン対象はこれからも順次拡大していくと思うが、一旦はこの対応でCLoseしときます

f76774c