summaryrefslogtreecommitdiff
path: root/runtime/permissions.rs
AgeCommit message (Collapse)Author
2022-04-18fix(permissions): fallback to denied access if the permission prompt fails ↵David Sherret
(#14235)
2022-03-20fix: actually don't inherit runtime permissions (#14024)Luca Casonato
2022-03-16BREAKING: don't inherit permissions by default (#13668)Luca Casonato
Previously specifying permissions: {} was the same as specifying permissions: "inherit". Now it will be the same as permissions: "none". Not specifying any permissions (permissions: undefined) still means permissions: "inherit".
2022-02-24chore: upgrade to Rust 1.59 (#13767)David Sherret
2022-02-17chore(permissions): clean up duplicate arguments (#13700)Leo Kettmeir
2022-02-17feat: never prompt for hrtime permission (#13696)Ryan Dahl
2022-02-17feat: Add hint to permission prompt to display allow flag (#13695)Ryan Dahl
2022-02-15chore(ext/timers): move ext/timers to ext/web (#13665)Andreu Botella
2022-01-15chore: upgrade to rust 1.58 (#13377)David Sherret
2022-01-07chore: update copyright to 2022 (#13306)Ryan Dahl
Co-authored-by: Erfan Safari <erfanshield@outlook.com>
2021-12-18refactor: use `once_cell` instead of `lazy_static` (#13135)Divy Srivastava
2021-12-15feat(ext/ffi): implement UnsafePointer and UnsafePointerView (#12828)Elias Sjögreen
2021-10-26chore: fix flaky permissions tests on windows (#12552)David Sherret
2021-10-13fix(runtime/ops/worker_host): move permission arg parsing to Rust (#12297)Nayeem Rahman
2021-09-30fix: worker environment permissions should accept an array (#12250)David Sherret
2021-09-24fix(cli/permissions): ensure revoked permissions are no longer granted (#12159)Nayeem Rahman
Fixes #12153
2021-09-23perf(ops): optimize permission check (#11800)Aaron O'Mullan
* perf(ops): optimize permission check Removes the overhead of permission check on access granted (should be common case): Delta measured on `perf_now` from `deno_common` bench: - before: `528ns/op - after: `166ns/op` So ~3x faster
2021-09-14fix: permission prompt stuffing on Windows (#11969)David Sherret
2021-09-09fix: permission prompt stuffing (#11931)Ryan Dahl
Fixes #9750
2021-08-06feat: ffi to replace plugins (#11152)Elias Sjögreen
This commit removes implementation of "native plugins" and replaces it with FFI API. Effectively "Deno.openPlugin" API was replaced with "Deno.dlopen" API.
2021-07-30chore: upgrade Rust to 1.54.0 (#11554)Yusuke Tanaka
2021-07-06chore: use parking_lot for synchronization primitives to align with tokio ↵David Sherret
(#11289) parking_lot is already transitively used in tokio via the "full" cargo feature
2021-06-29feat: Add "deno_net" extension (#11150)Bartek Iwańczuk
This commits moves implementation of net related APIs available on "Deno" namespace to "deno_net" extension. Following APIs were moved: - Deno.listen() - Deno.connect() - Deno.listenTls() - Deno.serveHttp() - Deno.shutdown() - Deno.resolveDns() - Deno.listenDatagram() - Deno.startTls() - Deno.Conn - Deno.Listener - Deno.DatagramConn
2021-06-07chore(tools): Fix stdout buffer of launched process getting full causing ↵David Sherret
tools/lint.js to hang on Windows (#10888) Also fix Windows only clippy issues.
2021-05-10Switch grant/deny prompt to yes/no (#10547)Ryan Dahl
2021-04-14refactor: move timers to deno_timers op crate (#10179)Ben Noordhuis
Move timers out of runtime/ and into a standalone op crate.
2021-04-13feat(permissions): allow env permission to take values (#9825)crowlKats
2021-04-12perf(runtime): optimize PermissionState::check (#9993)Aaron O'Mullan
2021-04-12feat(runtime/permissions): prompt fallback (#9376)crowlKats
Co-authored-by: Yoshiya Hinosawa <stibium121@gmail.com> Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2021-04-10feat(permissions): allow run permission to take values (#9833)crowlKats
This commit adds allowlist support to `--allow-run` flag. Additionally `Deno.permissions.query()` allows to query for specific programs within allowlist.
2021-04-07feat: blob URL support (#10045)Luca Casonato
This commit adds blob URL support. Blob URLs are stored in a process global storage, that can be accessed from all workers, and the module loader. Blob URLs can be created using `URL.createObjectURL` and revoked using `URL.revokeObjectURL`. This commit does not add support for `fetch`ing blob URLs. This will be added in a follow up commit.
2021-04-03fix(permissions): don't panic when no input is given (#9894)upendra1997
Fixes #9633 Co-authored-by: Kitson Kelly <me@kitsonkelly.com>
2021-03-26remove macro_use (#9884)Ryan Dahl
2021-03-21refactor(runtime/permissions): Rename permission structs (#9841)Nayeem Rahman
2021-03-19refactor(runtime/ops/worker_host): simplify worker perms handling (#9835)crowlKats
2021-03-17refactor: clean up permission handling (#9367)crowlKats
2021-02-26chore(cli/runtime): use re-export serde from deno_core (#9599)Kitson Kelly
2021-02-17Make ModuleSpecifier a type alias, not wrapper struct (#9531)Ryan Dahl
2021-02-05feat(lsp): add TS quick fix code actions (#9396)Kitson Kelly
2021-02-02refactor(runtime): remove unneeded Deserialize trait for Permissions struct ↵crowlKats
(#9362)
2021-01-19feat(unstable): add Deno.resolveDns API (#8790)Yusuke Tanaka
2021-01-10update copyright to 2021 (#9081)Ryan Dahl
2021-01-08feat: denort binary (#9041)Luca Casonato
This commit adds new binary target called "denort". It is a "lite" version of "deno" binary that can only execute code embedded inside the binary itself. Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2021-01-06feat: Add configurable permissions for Workers (#8215)Steven Guerrero
This commit adds new option to "Worker" Web API that allows to configure permissions. New "Worker.deno.permissions" option can be used to define limited permissions to the worker thread by either: - inherit set of parent thread permissions - use limited subset of parent thread permissions - revoke all permissions (full sandbox) In order to achieve this functionality "CliModuleLoader" was modified to accept "initial permissions", which are used for top module loading (ie. uses parent thread permission set to load top level module of a worker).
2021-01-06refactor: move WebSocket API to an op_crate (#9026)Luca Casonato
2021-01-06feat(cli): support data urls (#8866)Kitson Kelly
Closes: #5059 Co-authored-by: Valentin Anger <syrupthinker@gryphno.de>
2021-01-04fix: panic on invalid file:// module specifier (#8964)Maayan Hanin
2020-12-30BREAKING(unstable): Use hosts for net allowlists (#8845)Nayeem Rahman
Allowlist checking already uses hosts but for some reason requests, revokes and the runtime permissions API use URLs. - BREAKING(lib.deno.unstable.d.ts): Change NetPermissionDescriptor::url to NetPermissionDescriptor::host - fix(runtime/permissions): Don't add whole URLs to the allowlist on request - fix(runtime/permissions): Harden strength semantics: ({ name: "net", host: "127.0.0.1" } is stronger than { name: "net", host: "127.0.0.1:8000" }) for blocklisting - refactor(runtime/permissions): Use tuples for hosts, make the host optional in Permissions::{query_net, request_net, revoke_net}()
2020-12-29refactor(cli/flags): change allow_read/write/net types from bool to ↵Yusuke Tanaka
Option<Vec<T>> (#8896) This PR refactors "cli/flags.rs" and "runtime/permissions.rs" so that "allow_read", "allow_write" and "allow_net" themselves have allowlists, instead of storing them in additional fields.
2020-12-17chore(runtime): fix typo (#8791)Yusuke Tanaka