ひまわりのsecurity.iniについて

本家プログラミング掲示板にsecurity.iniをプログラム上から変更するサンプル*1が投稿されました
それについて賛否両論がコメントにて交わされているようです
で、此処で私見をば
わざわざ本家に投稿するほどでもないものですけどね


そもそもsecurity.iniはひまわりで作られたプログラムが行う危険な動作からそのユーザーを守るためにあると思うんです
つまり、プログラム上から勝手に書き換えるのはユーザーを危険に晒しかねません
しかし、大量のアーカイブの解凍やファイル書き換えなどを行うソフトの場合、ユーザーにいちいちダイアログの対応をしなければなりません
そこで、件のサンプルを用いユーザーにダイアログにて注意文とともにセキュリティレベルを変更して確認ダイアログを出さない設定に変えることをユーザーにとってGUIベースで簡単に行うことが出来ます
この方法ではINIファイルを直接書き換えなければならないことが無く、PCにあまり詳しくなくINIファイルの書き換えが不安なユーザーにも簡単に設定変更が出来ます
これは利点だと思います


とりあえずこれはバグ報告板にも項目が設けられているので、何らかの対策がされて動かないスクリプトではありますが
対策例としては

  • ファイル書き込み系命令*2毎に書き込み先がランタイムor母艦のパス&「security.ini」でないかチェック
  • プログラム起動時にセキュリティがLOWならば確認ダイアログを出すようにする

等でしょうか
前者の方は実行速度が落ちますし、後者の方は煩わしいとデメリットだらけですが
しかし、安全性の向上というメリットも棄てられません



………と、なんだかぐだぐだ文章書いてますね、私

*1:仕様としてはひまわりプログラムからは変更できないようになっている。つまりひまわり本体のバグをついたサンプル

*2:ファイルの移動、コピー含む