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) Maven version NPM version PyPI version RubyGems version Crates.io version Slack

What is oso?

oso is an open source policy engine for authorization that’s embedded in your application. It provides a declarative policy language for expressing authorization logic. You define this logic separately from the rest of your application code, but it executes inside the application and can call directly into it. oso ships as a library with a built-in debugger and REPL.

oso is ideal for building permissions into user-facing applications, but you can check out Use Cases to learn about other applications for oso.

Using oso consists of two parts:

  1. Writing oso policies in a declarative policy language called Polar.
  2. Embedding oso in your application using the appropriate language-specific authorization library.

oso currently offers libraries for Java, Node.js, Python, Ruby, and Rust.

Getting started

To get up and running with oso, check out the Getting Started guides in the oso documentation.

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: 10.14.2+
    • Yarn 1.22+
  • Python: 3.6+
  • Ruby: 2.4+
    • Bundler 2.1.4+
  • Rust: 1.46+

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

Uploaded PyPy manylinux: glibc 2.12+ x86-64

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

Uploaded PyPy macOS 10.9+ x86-64

oso-0.10.1-pp36-pypy36_pp73-manylinux2010_x86_64.whl (6.9 MB view details)

Uploaded PyPy manylinux: glibc 2.12+ x86-64

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

Uploaded PyPy macOS 10.9+ x86-64

oso-0.10.1-cp39-cp39-win_amd64.whl (614.4 kB view details)

Uploaded CPython 3.9 Windows x86-64

oso-0.10.1-cp39-cp39-manylinux2010_x86_64.whl (6.9 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64

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

Uploaded CPython 3.9 macOS 10.9+ x86-64

oso-0.10.1-cp38-cp38-win_amd64.whl (614.4 kB view details)

Uploaded CPython 3.8 Windows x86-64

oso-0.10.1-cp38-cp38-manylinux2010_x86_64.whl (6.9 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

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

Uploaded CPython 3.8 macOS 10.9+ x86-64

oso-0.10.1-cp37-cp37m-win_amd64.whl (614.4 kB view details)

Uploaded CPython 3.7m Windows x86-64

oso-0.10.1-cp37-cp37m-manylinux2010_x86_64.whl (6.9 MB view details)

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

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

Uploaded CPython 3.7m macOS 10.9+ x86-64

oso-0.10.1-cp36-cp36m-win_amd64.whl (614.4 kB view details)

Uploaded CPython 3.6m Windows x86-64

oso-0.10.1-cp36-cp36m-manylinux2010_x86_64.whl (6.9 MB view details)

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

oso-0.10.1-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.10.1-pp37-pypy37_pp73-manylinux2010_x86_64.whl.

File metadata

  • Download URL: oso-0.10.1-pp37-pypy37_pp73-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 6.9 MB
  • Tags: PyPy, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for oso-0.10.1-pp37-pypy37_pp73-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 54bb6e8eaa970752547abf6ff58be34ad5ebb5824e2d8a995c402097a969e799
MD5 c0c4ae38d10f1827ae1b671e3d93f66b
BLAKE2b-256 1392bd5516069a9c5ce784a9032c612e1fe47692cfe0ed6d883f85db95708855

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.10.1-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.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for oso-0.10.1-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 0074d8a4ca204344472e682a2d598d805255f6755a6648b75964f3f88e615d2d
MD5 fe4f18597200b69121f056af24461ef9
BLAKE2b-256 31f1b6d1833c1154e2a87d018447eee8c300a4f7e9828dc11e7a80828ae3a0e5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.10.1-pp36-pypy36_pp73-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 6.9 MB
  • Tags: PyPy, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for oso-0.10.1-pp36-pypy36_pp73-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 fcbdcd2a5c06924ea6e5a64dfaae566ca59a4f0217671c9842cba00ea1efc918
MD5 4fdd59c711723c01b382ede8ffeb95a2
BLAKE2b-256 3ae3aa09733a6d0f04612be4b26c933c88e2ce270ad84b9bce66451a7cdb9353

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.10.1-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.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for oso-0.10.1-pp36-pypy36_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 fbe1aa31d5239c1f2470e4f46f76457fc14a507322ce0fe469c46d59858f0f07
MD5 2d10270d6caa15caa038f42b4bcc6088
BLAKE2b-256 dff5656dc2883760ca232fdad8215f7cbc90cf73b5cba020434c659a719f78ed

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.10.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 614.4 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for oso-0.10.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 385538b1f8edd20bdb3138ba1720e5da273bfaf7ce1ab7f8324917c45946aedf
MD5 6bd82963b71d9f97fd9bef18a13d9759
BLAKE2b-256 c3dac8ce59a73563b7756855ca9c8c731952b3a2ef60909acbe9ff4b3aefe013

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.10.1-cp39-cp39-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 6.9 MB
  • Tags: CPython 3.9, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for oso-0.10.1-cp39-cp39-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 d545f325ef167f33b7ef8b14d267caa0cac5d14414ed6a2de45d2aa357d917e0
MD5 c440d0bd9782ed77c0c968423d7171b4
BLAKE2b-256 4c669b8a003c2816eee763b57c54677e8de907db1b417054cc56afd6764ab82a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.10.1-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.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for oso-0.10.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8964a67249ce5cdb780ed1c46e1f6d9131d75b1072cad84abe7cf5afe23d0608
MD5 8de529ddf49fe4b31d0645cdf7bd9db5
BLAKE2b-256 956eaccedb38fd9571f83bcf32a76a052bbd894568955f483219847268d41826

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.10.1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 614.4 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for oso-0.10.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 f394a2a0ca877629227e7c0cc588e89d4fe4ff30f3905db62aee6f0113b39ab5
MD5 071a688ec4a346b5e1fc9560cb0568f7
BLAKE2b-256 2d38c461adc51bc4844d59585cffd39370a7855464fc09c82d58aefe2e87fbcf

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.10.1-cp38-cp38-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 6.9 MB
  • Tags: CPython 3.8, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for oso-0.10.1-cp38-cp38-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 985840742f71ad21716d60751a9b8adb104a9e43ad3308513fa1c0d8660453d6
MD5 f8357082a17322bc278c5d52dec4ec71
BLAKE2b-256 5abab5c9095783c287596d1453c443505b912ffcd3fff0f47aeeb4ead5e67b40

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.10.1-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.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for oso-0.10.1-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 068208993a43e4e21f18e87f4b5a9664da2826e7bb078087ba261e4acf9219ee
MD5 ad8a5fe6d451ebe902ee40dcfbcc8bf5
BLAKE2b-256 6dba961b3de0d9fcc02c0b9bb518d320e20481cdd5a58373e8749ca3f05fe8fa

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.10.1-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 614.4 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for oso-0.10.1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 ae949008d33b16ac9f164b2f97963e54bffd34d45809f4cef05468cf50426486
MD5 c53bd071e8adb7ab679302c50be3d62d
BLAKE2b-256 842ef26ed5e74a816fdd5a28f9710ef9f2418e09db25fda34637b1fa10d21b8f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.10.1-cp37-cp37m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 6.9 MB
  • Tags: CPython 3.7m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for oso-0.10.1-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 9416f9390e4886bb5575fb990d195a433005ea953265351545b89248177e55f6
MD5 356eba7ad56015c5385c8d02e6360c75
BLAKE2b-256 4f63d75ae600c1b1daac68d8b6a4add1d19c5d7e05031e29bf7931ee9c66ca9a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.10.1-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.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for oso-0.10.1-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 dde39941bc2d2522672f7f3129843a6a420ad0003663c2b9c8f1fa1878bbef51
MD5 86ce857b9ee0f647ef2426e6fc4555cd
BLAKE2b-256 dddac12b9f348a4e39933960d071721e828f279443d18de0ecdd98d91d2a1e3e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.10.1-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 614.4 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for oso-0.10.1-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 58b9b8012dedea4622c81563867be4b5f371d6ef4b575c1b3def508ad451d4b9
MD5 94b89ac73610a6f91d8a22648cb96c59
BLAKE2b-256 97e0399b8bb42e52f56af2d02624b4ee46f5cb658c0e700f1f1f2eb1ae710eaf

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.10.1-cp36-cp36m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 6.9 MB
  • Tags: CPython 3.6m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for oso-0.10.1-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 7558f6c5508c82cad3b6972f3ab32c503196e1c75ced29794bad9e7f462da092
MD5 e07a260c89c58b181b7bcbbc6af3d43d
BLAKE2b-256 d02e74060ad5ba9636134ffc092565fbfcdbe8daaa9398d2f287d8280a51cd2e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.10.1-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.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for oso-0.10.1-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b46fb49d8fe1c936bb301d949a59159f1f18a3efc8d68a916c97284b92e77333
MD5 5bb83250c1e7c151ae56bcf4d2ed8ad4
BLAKE2b-256 22cd485fe81983e569fa4c8ff3a3c7fe419cf4adcbb8a6a1dd6b2096747715f9

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