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.1-pp37-pypy37_pp73-manylinux2010_x86_64.whl (2.6 MB view details)

Uploaded PyPy manylinux: glibc 2.12+ x86-64

oso-0.22.1-pp37-pypy37_pp73-macosx_10_9_x86_64.whl (1.6 MB view details)

Uploaded PyPy macOS 10.9+ x86-64

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

Uploaded PyPy manylinux: glibc 2.12+ x86-64

oso-0.22.1-pp36-pypy36_pp73-macosx_10_9_x86_64.whl (1.6 MB view details)

Uploaded PyPy macOS 10.9+ x86-64

oso-0.22.1-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.12+ x86-64

oso-0.22.1-cp39-cp39-win_amd64.whl (856.8 kB view details)

Uploaded CPython 3.9 Windows x86-64

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

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64

oso-0.22.1-cp39-cp39-macosx_10_9_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

oso-0.22.1-cp38-cp38-win_amd64.whl (856.8 kB view details)

Uploaded CPython 3.8 Windows x86-64

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

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

oso-0.22.1-cp38-cp38-macosx_10_9_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

oso-0.22.1-cp37-cp37m-win_amd64.whl (856.7 kB view details)

Uploaded CPython 3.7m Windows x86-64

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

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

oso-0.22.1-cp37-cp37m-macosx_10_9_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.7m macOS 10.9+ x86-64

oso-0.22.1-cp36-cp36m-win_amd64.whl (856.7 kB view details)

Uploaded CPython 3.6m Windows x86-64

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

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

oso-0.22.1-cp36-cp36m-macosx_10_9_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.6m macOS 10.9+ x86-64

File details

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

File metadata

  • Download URL: oso-0.22.1-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.1-pp37-pypy37_pp73-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 77fd0b2422996b8186e3602bd049c5a3d11cc239cb0251bb973ed8dd70b88a4f
MD5 f103f0381adf572b2a11114b6647b115
BLAKE2b-256 3ba5529f779a9bb45c877f659ed95cb17cfeac476b67cd313bb00b2efbaa53a1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.22.1-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.6 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.1-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8171ca01589cb2a46bc58e9d857f3ebad523c196c3dfe267ffc18eaab83ef347
MD5 72a8425c31b1778f1499f8fdcf193094
BLAKE2b-256 9a5ebb6ca328d05e754242ff9d5081b94da73bb0010c769ca5cd86cd7ec71bef

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.22.1-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.1-pp36-pypy36_pp73-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 139aa4996de0b4bf672c60d1494acb0a48947df03cb5af47e1b8cc6708ac90f3
MD5 23bf4d51c8989bc13d927d38fb7a668e
BLAKE2b-256 b448225ac2e2627cdb75834909564bc7fc0a5e1a1bafbd12b92da5cd20fa1ae7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.22.1-pp36-pypy36_pp73-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.6 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.1-pp36-pypy36_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2d9c781c9010e7bd3810b2b6686cc2e4312cdbe480f1f782d56cfee5c4080e62
MD5 3138a05f058236518e3c0af66ceaee9f
BLAKE2b-256 feaa168c45ee792808f0efc769d9d160b69e383d0ea4bfc01ca08cf08560faac

See more details on using hashes here.

File details

Details for the file oso-0.22.1-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for oso-0.22.1-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 c9b101df1fa745b266d822133cd19e33970b08848965a339066e22e3cc37b162
MD5 7aade85317c08808a47d8c1ae088f32a
BLAKE2b-256 8da14ccc142ac3b3aff771425f7f378b9c24268f732333db2cf781ac141321d5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.22.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 856.8 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.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 0ce605994b29bbd21aa36e5c0e7f078265b777ec9f22451aa9dff84bb6036ba4
MD5 6c403a25a1e41aa8b530a3b0b6e160f2
BLAKE2b-256 cbfa5c5425543e8bee9bbd1cc767a6e8b8c39da335a642a50187bc9baef70855

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.22.1-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.1-cp39-cp39-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 daab4b3442a357934d197bcff0dfcc9e6132b6d3c79895fbfa6794df9e18cf37
MD5 d35b42bbe80a30889c4532690a2c8ad8
BLAKE2b-256 2ed704a8eeab336d9dc651ffdc7b018d91676e3e9c20b88d4ecbac540dfc3286

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.22.1-cp39-cp39-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.6 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.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 bb8fadad4f1a7712514ad236381cf3a55639e3da5f7bd00c38be67070118a382
MD5 834948df9e36143d25ba10c5eec550ab
BLAKE2b-256 a1132560ba2bc055e855fe27f2c21631338f1cce3ef2bcf32e80df2b7cd11470

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.22.1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 856.8 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.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 13395cf157a51634e142aed97d62faefaea51ca8817d57c616ea0eeabed4b82f
MD5 7162795fd8beac9570af697642f9c4e4
BLAKE2b-256 a1a79f4094fafbc672996d516b01e6b006506c508cc14b74f73cf2ae5d6ffe24

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.22.1-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.1-cp38-cp38-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 b855745585d387b68fd13568b8cfb38e344260a4527f4c20e41ed91ae72b7a3b
MD5 30c278e7831a6f879a5df9054fd211a7
BLAKE2b-256 d8f36141f30c4ad1a43dee7ceb6ef47bc6f0ce3413e0cc23d09540f592cc3cff

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.22.1-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.6 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.1-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e7a29f52ccd5251bc1ad1300415725224d4f392c2f27e3144fbed3d3fb11861e
MD5 6dad519062ea126a6ab792b179dfac37
BLAKE2b-256 80f095b5014eefc8fcf07ee228ff27f725b362c96e30e8544e6aa2b75e469f64

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.22.1-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 856.7 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.1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 b3543b021d2430fd43e1f8aa748f123266962928027d2d623d1445d65b6fdca2
MD5 581e49962f5391e9fb507135ead525db
BLAKE2b-256 3bb3ee9f770bf4383fc180ad30bc79f287db6ccd0ee42d4d57835390c4550fa1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.22.1-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.1-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 3cc84aee686652271e0f6384c80227d45b4609d122538c6e42947094a4b7888d
MD5 4019be95ef69add07aaae2b3c308b9da
BLAKE2b-256 528032d5858c43adc3699758670fda05de23b197925e1ab28857c339892d3145

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.22.1-cp37-cp37m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.6 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.1-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 bd06085e67c2e9ad6e785bf49be542d0f68ced0d0b75b899e83b6ed7f5e1730f
MD5 75b2d308144b2d81c085076b27c2a05e
BLAKE2b-256 e8bc8a7d1aa819d1ae9422e664dbe6f6da09f92a13e8a201703518d014b35149

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.22.1-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 856.7 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.1-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 6fcac7d26492ce065550e3b50cc679cac6e517a73cc59054be1e327d9c4fe3a9
MD5 b88ef20028db0a8ff9bc5141ffd1742c
BLAKE2b-256 5dcddd6e2e131a783eeacc823bf7a6183ab0f590f60d0675373059b8471dc0bf

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.22.1-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.1-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 4aca4bf7f4d55e995f206c1d3f40d19b575747e8ee75f674f42c676c6d159089
MD5 ec4c5e4111db94b6c86a14a0dd01a16f
BLAKE2b-256 6fee01a493a6d6b863ab5d20f4d9901e0d23f65d0aa7a4c77752ed6068a29cda

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.22.1-cp36-cp36m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.6 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.1-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b4b6da52160f65850d0aedd9ff52dec4a04f820c98f885e86a11deca5e26fd5c
MD5 62b1e04c745da8d7ff9ae1289d2bfa65
BLAKE2b-256 be732c04db4646346aaf6ea11103b3e1cad7eb50c432150b96d30791d9664a0b

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