web-dev-qa-db-ja.com

Denoはすべての権限を許可します

Denoで遊ぶときに、少なくとも2つまたは3つの許可オプションを入力することがよくあります。

deno run --allow-net --allow-read --allow-env app.ts

明示的なアクセス許可をエスケープする方法があります。

3
Evandro Pomatti

Denon https://deno.land/x/denon を使用できます。これはnodemonのようなツールです。これのすばらしい点は、属性 "allow"を配列として追加し、必要なフラグを追加できるdenon.jsonが含まれていることです。

"allow": ["net", "read", "write"]

ターミナルでアプリケーションを起動するためのスクリプトを実行します

denon start yourapp.ts

これは実行されます:

deno run --allow-net --allow-read --allow-write yourapp.ts

これで、変更を加えて保存すると、再度実行されます。

"unstable": trueのように、追加する他の素晴らしい属性があります。試してみて、詳細についてはREADME denonから読んでください。

0

それを支援することを目的としたツールを作成しました https://github.com/BentoumiTech/denox/

権限リストを含むdeno-workspace.ymlファイルでスクリプトを指定できます

scripts:
  # "denox run start" will execute app.ts with --allow-net --allow-read --allow-env permissions
  start:
    file: app.ts
    deno_options:
      allow-net: true 
      allow-read: true
      allow-env: true

$ deno install -Af -n denox https://denopkg.com/BentoumiTech/denox/denox.ts

$ denox run startdeno run --allow-net --allow-read --allow-env app.tsに変換されます

他のすべてのdenoオプションもサポートします

allow-all, allow-env, allow-hrtime, allow-net, allow-plugin, allow-read, allow-run,
allow-write, cached-only, cert, config, importmap, inspect, inspect-brk, lock, lock-write,
log-level, no-remote, quiet, reload, seed, unstable, v8-flags
0
BentoumiTech