Skip to main content

oso is an open source policy engine for authorization that's embedded in your application

Project description

Oso

Development GitHub release (latest SemVer) Go version Maven version NPM version PyPI version RubyGems version Crates.io version Slack

What is Oso?

Oso is a batteries-included framework for building authorization in your application.

With Oso, you can:

  • Model: Set up common permissions patterns like role-based access control (RBAC) and relationships using Oso’s built-in primitives. Extend them however you need with Oso’s declarative policy language, Polar.
  • Filter: Go beyond yes/no authorization questions. Implement authorization over collections too - e.g., “Show me only the records that Juno can see.”
  • Test: Write unit tests over your authorization logic now that you have a single interface for it. Use the Oso debugger or REPL to track down unexpected behavior.

Oso offers libraries for Node.js, Python, Go, Rust, Ruby, and Java.

Documentation

Community & Support

If you have any questions on Oso or authorization more generally, you can join our engineering team & hundreds of other developers using Oso in our community Slack:

Button

Share your story

We'd love to hear about your use case and experience with Oso. Share your story in our Success Stories issue or fill out this form for some Oso swag.

Development

Core

Oso's Rust core is developed against Rust's latest stable release.

Language libraries

Oso's language libraries can be developed without touching the Rust core, but you will still need the Rust stable toolchain installed in order to build the core.

To build the WebAssembly core for the Node.js library, you will need to have wasm-pack installed and available on your system PATH.

Language requirements

To work on a language library, you will need to meet the following version requirements:

  • Java: 10+
    • Maven: 3.6+
  • Node.js: 12.20.0+
    • Yarn 1.22+
  • Python: 3.6+
  • Ruby: 2.4+
    • Bundler 2.1.4+
  • Rust: 1.46+
  • Go: 1.12+

Contributing

See: CONTRIBUTING.md.

License

See: LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

oso-0.22.0-pp37-pypy37_pp73-manylinux2010_x86_64.whl (2.6 MB view details)

Uploaded PyPy manylinux: glibc 2.12+ x86-64

oso-0.22.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl (1.7 MB view details)

Uploaded PyPy macOS 10.9+ x86-64

oso-0.22.0-pp36-pypy36_pp73-manylinux2010_x86_64.whl (2.6 MB view details)

Uploaded PyPy manylinux: glibc 2.12+ x86-64

oso-0.22.0-pp36-pypy36_pp73-macosx_10_9_x86_64.whl (1.7 MB view details)

Uploaded PyPy macOS 10.9+ x86-64

oso-0.22.0-cp39-cp39-win_amd64.whl (849.3 kB view details)

Uploaded CPython 3.9 Windows x86-64

oso-0.22.0-cp39-cp39-manylinux2010_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64

oso-0.22.0-cp39-cp39-macosx_11_0_arm64.whl (4.5 MB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

oso-0.22.0-cp39-cp39-macosx_10_9_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

oso-0.22.0-cp38-cp38-win_amd64.whl (849.3 kB view details)

Uploaded CPython 3.8 Windows x86-64

oso-0.22.0-cp38-cp38-manylinux2010_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

oso-0.22.0-cp38-cp38-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

oso-0.22.0-cp38-cp38-macosx_10_9_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

oso-0.22.0-cp37-cp37m-win_amd64.whl (849.3 kB view details)

Uploaded CPython 3.7m Windows x86-64

oso-0.22.0-cp37-cp37m-manylinux2010_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.12+ x86-64

oso-0.22.0-cp37-cp37m-macosx_10_9_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.7m macOS 10.9+ x86-64

oso-0.22.0-cp36-cp36m-win_amd64.whl (849.3 kB view details)

Uploaded CPython 3.6m Windows x86-64

oso-0.22.0-cp36-cp36m-manylinux2010_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.6m manylinux: glibc 2.12+ x86-64

oso-0.22.0-cp36-cp36m-macosx_10_9_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.6m macOS 10.9+ x86-64

File details

Details for the file oso-0.22.0-pp37-pypy37_pp73-manylinux2010_x86_64.whl.

File metadata

  • Download URL: oso-0.22.0-pp37-pypy37_pp73-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: PyPy, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

File hashes

Hashes for oso-0.22.0-pp37-pypy37_pp73-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 4c23a71989403a9e9587ea401a8ef8403b4e6583a0e6f852b2778fd37309125f
MD5 7e280c1117fc05e599679afd2c602b8f
BLAKE2b-256 fbf6636b4fd820fdf9fc53fcb12886531c3a97068b62d8a099f423a30ae50653

See more details on using hashes here.

File details

Details for the file oso-0.22.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: oso-0.22.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: PyPy, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

File hashes

Hashes for oso-0.22.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 7a63bcd4b11c87b071dc9d3820c2cbbc61f22cc8d7718e1b737b268d156619f8
MD5 4d89c6759876797d2e9a8d147d4a2ea8
BLAKE2b-256 1fdd6380e56eac83161f7addf11850115a8ddb5aa389a58dc02517e26a8e4494

See more details on using hashes here.

File details

Details for the file oso-0.22.0-pp36-pypy36_pp73-manylinux2010_x86_64.whl.

File metadata

  • Download URL: oso-0.22.0-pp36-pypy36_pp73-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: PyPy, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

File hashes

Hashes for oso-0.22.0-pp36-pypy36_pp73-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 c80d0da91fcfe7ace48c368835c6431280ddcff6974ea51a4b13467598febce6
MD5 a6094be2ac93c32acc9a2105270a7921
BLAKE2b-256 b79e94b3c73a580dba3ae67ed6926cd85654f7b316e0cff5167351eea130a797

See more details on using hashes here.

File details

Details for the file oso-0.22.0-pp36-pypy36_pp73-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: oso-0.22.0-pp36-pypy36_pp73-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: PyPy, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

File hashes

Hashes for oso-0.22.0-pp36-pypy36_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6b492ec6cfaff7bb1ec84e98679d94d212dd920a57965aa824646a1e76c30bb8
MD5 1455332a72a1b8dd0b69a08df55fba20
BLAKE2b-256 1bb5d8dae0b60799b28f147ee445ffa6cf5b1d7ccba41d24ad3c27fee36b7de5

See more details on using hashes here.

File details

Details for the file oso-0.22.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: oso-0.22.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 849.3 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

File hashes

Hashes for oso-0.22.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 9d3e885e328b12d4c3b5a2dec2d0086d7a8f4f1c9a934fe82dee54832d257d93
MD5 ed20b999b459f8eeadbc8ac1406f87c2
BLAKE2b-256 f559b8bdc5d691337b5952a9acaa1f4abc2d044fe00b16f95bf8635a3b336741

See more details on using hashes here.

File details

Details for the file oso-0.22.0-cp39-cp39-manylinux2010_x86_64.whl.

File metadata

  • Download URL: oso-0.22.0-cp39-cp39-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: CPython 3.9, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

File hashes

Hashes for oso-0.22.0-cp39-cp39-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 0eed6a4baee640de5c6693bb6135d02ecbbc9e73cbfc604475fe70eee108ad58
MD5 ba92e306a023b2b0c712e06171b744cb
BLAKE2b-256 c609959a506e52c00575d8fcbef6b13490eca22979c11846b3c505520945ed80

See more details on using hashes here.

File details

Details for the file oso-0.22.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

  • Download URL: oso-0.22.0-cp39-cp39-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 4.5 MB
  • Tags: CPython 3.9, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.2

File hashes

Hashes for oso-0.22.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 59de39143e52775998c16b2635559207eb15969b6149bae333ba2137d72b1430
MD5 5d97c1a3d26b6b0ede78b6d941aea5c6
BLAKE2b-256 57ea9a6ff90d964daecebf278fb0d9e351622367a35176ace4ecb54138f36195

See more details on using hashes here.

File details

Details for the file oso-0.22.0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: oso-0.22.0-cp39-cp39-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: CPython 3.9, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

File hashes

Hashes for oso-0.22.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 eaffa80108fbc56d1747b7ca365c36e9a3735d5238901b5acabc9d12e7c864bc
MD5 d900ea0a8e2e30d10f12ee5b150ca262
BLAKE2b-256 cf9c2df198c649be105db507aa6be7af507933f54e52f7f449e6df20c7fc2e9a

See more details on using hashes here.

File details

Details for the file oso-0.22.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: oso-0.22.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 849.3 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

File hashes

Hashes for oso-0.22.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 a94a62c65c6048b0d65831ed3d54552bcdbf7df24823eecfc84770cf0c79f151
MD5 02b62b54a7fd18f584745cef3c13ef50
BLAKE2b-256 59be9c97b941f64ae54d5d91d78669b3763caef2735ec47d65a8bbcc03d13fab

See more details on using hashes here.

File details

Details for the file oso-0.22.0-cp38-cp38-manylinux2010_x86_64.whl.

File metadata

  • Download URL: oso-0.22.0-cp38-cp38-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: CPython 3.8, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

File hashes

Hashes for oso-0.22.0-cp38-cp38-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 8af234335f901ce7cc89ac472f9cd04d3ced56ff8e0d26c8d20ffce66c436f05
MD5 02a8f93c3be1c77bb11ee5d04544b352
BLAKE2b-256 3cb21212bb2af43c100e4218826f6735b3e2031ea5c1e9c90675b764124fae1f

See more details on using hashes here.

File details

Details for the file oso-0.22.0-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

  • Download URL: oso-0.22.0-cp38-cp38-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: CPython 3.8, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.2

File hashes

Hashes for oso-0.22.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f6949b96f9401fd12c0562b83cdfa3a5bfc1cd4ba71aff8e4b90b791b257a806
MD5 8352566214192836de2bfa0d5dfacff1
BLAKE2b-256 dd6ffc936defe3616fbfb1b277f600c393ec53dcecf47a7e96dd08846e1e4c4e

See more details on using hashes here.

File details

Details for the file oso-0.22.0-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: oso-0.22.0-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: CPython 3.8, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

File hashes

Hashes for oso-0.22.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 002ea3b9018ad4a5ecff627e27286501f9a79a9ada70413bba422bf49f0b57f6
MD5 9595dc7cbd35ffd645a8271d558217fd
BLAKE2b-256 6b973889139302d5b28361b7ac0e3bd70e61774a4055d29fe97800708da1e24a

See more details on using hashes here.

File details

Details for the file oso-0.22.0-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: oso-0.22.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 849.3 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

File hashes

Hashes for oso-0.22.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 76b5a7a03360e126ad94ac9a0efe97e7b9680596d8a5db9983744b4bfc036601
MD5 4b0315c0d49e8d5e1dc04195678d2a67
BLAKE2b-256 fc7964de200b6efe116ea94e3b5d717b3d881de9886b3cbec0d183690d1be937

See more details on using hashes here.

File details

Details for the file oso-0.22.0-cp37-cp37m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: oso-0.22.0-cp37-cp37m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: CPython 3.7m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

File hashes

Hashes for oso-0.22.0-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 2abf87ed3f4f8769851f52b2263e0df92caefef86cee3d704a08aff5d1b12e5f
MD5 92a100113a9b16935be38fd0dc78621c
BLAKE2b-256 02e14384f42abf95e5417680468666064599dcaed461817add41469ae722ca33

See more details on using hashes here.

File details

Details for the file oso-0.22.0-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: oso-0.22.0-cp37-cp37m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: CPython 3.7m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

File hashes

Hashes for oso-0.22.0-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8460a80404286f699af5df58207916d938ed52e25aae57bb516366d9e50cd621
MD5 f33d63615595f79e30708ddd9d372850
BLAKE2b-256 2135118c5c3269a958949cc18b7b6d3026ec42f6fe7fbabf0492088179c59f97

See more details on using hashes here.

File details

Details for the file oso-0.22.0-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: oso-0.22.0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 849.3 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

File hashes

Hashes for oso-0.22.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 b62dce78a65fd3ca5ba96b366f8dc6a05956354c0bc9c03e7c89bc8ab888ebc5
MD5 9a430bc778a25d4f4dc83cce59d7d6dd
BLAKE2b-256 d43da0931daf1e5f08cc705884cad45cae62ac4a96dc51cea31c772a7b2510fb

See more details on using hashes here.

File details

Details for the file oso-0.22.0-cp36-cp36m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: oso-0.22.0-cp36-cp36m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: CPython 3.6m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

File hashes

Hashes for oso-0.22.0-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 9713fad08da2a6e78b068e9bb2a72c546dfacd9a11a4eacabee437427bac3297
MD5 e448675489fa9cbf5d535198bd25413a
BLAKE2b-256 1b97a81b0e20290f5365bccc849587cc46f9530599135e5a385b219953dad7dd

See more details on using hashes here.

File details

Details for the file oso-0.22.0-cp36-cp36m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: oso-0.22.0-cp36-cp36m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: CPython 3.6m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

File hashes

Hashes for oso-0.22.0-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 fc2acb83180d642f5fe89e7682a67d5cf00aad06f8e822ca15cae3f9d664d28b
MD5 a40acfff9fc7c4710a164f5341817933
BLAKE2b-256 7cb5412fc180a6280fcd270a1cb64135d41baff4c3767df835c78ed43b42ded6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page