Deno 2 になってパーミッションフラグが短く書けるようになりました。
従来のフラグは以下のようなものでしたが:
--allow-read--allow-write--allow-import--allow-net--allow-env--allow-sys--allow-run--allow-ffi--allow-all
これらに以下の省略形が追加されました
-
-R(--allow-readの省略形) -
-W(--allow-writeの省略形) -
-I(--allow-importの省略形) -
-N(--allow-netの省略形) -
-E(--allow-envの省略形) -
-S(--allow-sysの省略形) -
-A(--allow-allの省略形、これだけは以前からありました)
例えば、read と write 権限だけを与えるプログラム実行は以下のようにかけます。
deno -RW main.ts # read と write を許可
短いフラグにパラメータを与える事も出来ます。
deno -R=. -W=dist main.ts # カレントディレクトリの read と dist ディレクトリへの write を許可
これまで一時的な実行でいちいち --allow-* というフラグを書くのは非常に面倒だったため、つい -A を使ってしまいがちでしたが、これらのショートフラグを使えば、普段からセキュリティを意識したプログラムの実行をできそうですね。
なお、--allow-run と --allow-ffi については現在は省略形式は用意されていません。