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.11.0a0-pp37-pypy37_pp73-manylinux2010_x86_64.whl (7.3 MB view details)

Uploaded PyPy manylinux: glibc 2.12+ x86-64

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

Uploaded PyPy macOS 10.9+ x86-64

oso-0.11.0a0-pp36-pypy36_pp73-manylinux2010_x86_64.whl (7.3 MB view details)

Uploaded PyPy manylinux: glibc 2.12+ x86-64

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

Uploaded PyPy macOS 10.9+ x86-64

oso-0.11.0a0-cp39-cp39-win_amd64.whl (662.3 kB view details)

Uploaded CPython 3.9 Windows x86-64

oso-0.11.0a0-cp39-cp39-manylinux2010_x86_64.whl (7.3 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64

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

Uploaded CPython 3.9 macOS 10.9+ x86-64

oso-0.11.0a0-cp38-cp38-win_amd64.whl (662.3 kB view details)

Uploaded CPython 3.8 Windows x86-64

oso-0.11.0a0-cp38-cp38-manylinux2010_x86_64.whl (7.3 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

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

Uploaded CPython 3.8 macOS 10.9+ x86-64

oso-0.11.0a0-cp37-cp37m-win_amd64.whl (662.3 kB view details)

Uploaded CPython 3.7m Windows x86-64

oso-0.11.0a0-cp37-cp37m-manylinux2010_x86_64.whl (7.3 MB view details)

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

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

Uploaded CPython 3.7m macOS 10.9+ x86-64

oso-0.11.0a0-cp36-cp36m-win_amd64.whl (662.3 kB view details)

Uploaded CPython 3.6m Windows x86-64

oso-0.11.0a0-cp36-cp36m-manylinux2010_x86_64.whl (7.3 MB view details)

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

oso-0.11.0a0-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.11.0a0-pp37-pypy37_pp73-manylinux2010_x86_64.whl.

File metadata

  • Download URL: oso-0.11.0a0-pp37-pypy37_pp73-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 7.3 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.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.4

File hashes

Hashes for oso-0.11.0a0-pp37-pypy37_pp73-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 ade7125cdbbd079f7dfb77a556cb5adcee444031f1f7fd1736a3060fac86fbfe
MD5 ee73105b702f9f494e739a4920e664a5
BLAKE2b-256 273ffde497a722e33402ab1c0b3b7581334362a357476697babd001da9db0afd

See more details on using hashes here.

File details

Details for the file oso-0.11.0a0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: oso-0.11.0a0-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.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.4

File hashes

Hashes for oso-0.11.0a0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3276a687a4ca33aa3c763f3a5f2eaecf757859ba090f01611795ff29f5e52063
MD5 32a2ba4033233213e266788e35b747fc
BLAKE2b-256 8ed6b006a93642a00a3ac85d013b22410a9c1bd1117fdd0c771fc2c8bebf567e

See more details on using hashes here.

File details

Details for the file oso-0.11.0a0-pp36-pypy36_pp73-manylinux2010_x86_64.whl.

File metadata

  • Download URL: oso-0.11.0a0-pp36-pypy36_pp73-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 7.3 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.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.4

File hashes

Hashes for oso-0.11.0a0-pp36-pypy36_pp73-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 1c44d554caa46ebed62f6f6ffbaeb0bdc17c6eab88781aa6aa302708f37bdbf2
MD5 40569e53fd591a9465b01cdf549118ad
BLAKE2b-256 52e1cf1702a8289539b018133a672bf710816085733cd0c59d5ea3cd0e36805f

See more details on using hashes here.

File details

Details for the file oso-0.11.0a0-pp36-pypy36_pp73-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: oso-0.11.0a0-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.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.4

File hashes

Hashes for oso-0.11.0a0-pp36-pypy36_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8ec88a206065bcc7d181fe5713bfecb005b84d281c4267e48211456658525e88
MD5 27c977b3882954401af2e71c7acf803d
BLAKE2b-256 d6f6ff57d615b2f71fd1c3d3520922998d8e930b110f1337807d16454d1745d9

See more details on using hashes here.

File details

Details for the file oso-0.11.0a0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: oso-0.11.0a0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 662.3 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.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.4

File hashes

Hashes for oso-0.11.0a0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 dd860f66f6b3ca6573c4f6bbddc0f6aaf6ef7d71bd3af49e86d05b1b5e4ec53d
MD5 968b38dc057d463e67e397d4217a0299
BLAKE2b-256 4874808c32678fc90af1dca1a5916002925ede4284be9473aaf2d604bf46cd82

See more details on using hashes here.

File details

Details for the file oso-0.11.0a0-cp39-cp39-manylinux2010_x86_64.whl.

File metadata

  • Download URL: oso-0.11.0a0-cp39-cp39-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 7.3 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.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.4

File hashes

Hashes for oso-0.11.0a0-cp39-cp39-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 18611bd31f10e97d08408cbe57d952d195299f9db9157bb4876d242d29235e9b
MD5 8a463d6e25dda8818273a58db7fe926d
BLAKE2b-256 1ec62227332048df8c24c1afb44df068acec49a003087d4d294359d460151f29

See more details on using hashes here.

File details

Details for the file oso-0.11.0a0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: oso-0.11.0a0-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.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.4

File hashes

Hashes for oso-0.11.0a0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 179e8d46046b476fc177f20417ccad257cd3713da4ee30f75714b13ac9e4c48c
MD5 2ae19a23dc5461003b6a1b9ee3ceb312
BLAKE2b-256 cac76648e04ea4d2cf4eaf332f345cca3a2b7d2116da44e7c9ca3a781ae1516c

See more details on using hashes here.

File details

Details for the file oso-0.11.0a0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: oso-0.11.0a0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 662.3 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.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.4

File hashes

Hashes for oso-0.11.0a0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 f1d2f1f5e3e507aaec98471592b850ec367427c5c7ff94a1e66fc2f68f7fdeb0
MD5 1f218ac8202c614c93c5415ac3ce5e8f
BLAKE2b-256 6c98d877f32c038f14b604bea21d7770e64ecfd42e44431eb001ad2b99c80c4c

See more details on using hashes here.

File details

Details for the file oso-0.11.0a0-cp38-cp38-manylinux2010_x86_64.whl.

File metadata

  • Download URL: oso-0.11.0a0-cp38-cp38-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 7.3 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.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.4

File hashes

Hashes for oso-0.11.0a0-cp38-cp38-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 0d352333fda80d24110943574436881784289419dddbaee6464cf0479f39327e
MD5 9899d53fa1246a988c4befbc74ee891a
BLAKE2b-256 35e472dc164fdfcb894284fec9af39e0234189477916f80cbd63f33e6a6f2314

See more details on using hashes here.

File details

Details for the file oso-0.11.0a0-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: oso-0.11.0a0-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.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.4

File hashes

Hashes for oso-0.11.0a0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 069b63b7674bc311189d010c0bf282655fe6f0968c79ecb33964d04cc834885b
MD5 ecf6094a97c693cd0134e8f8e9c29986
BLAKE2b-256 12b045d076044ba66a3c8df2f4ecd84e0b87df3915be3759b97dd101965652fe

See more details on using hashes here.

File details

Details for the file oso-0.11.0a0-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: oso-0.11.0a0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 662.3 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.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.4

File hashes

Hashes for oso-0.11.0a0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 ac6093c169556dff2624c797af142a59b22f4b570a402d18c293e3c1c40160aa
MD5 f002fe3496161f43a4612348abc583fa
BLAKE2b-256 827946e249d78b5daa685fc43725f0100c53eabd2fff7a4ab833260363586270

See more details on using hashes here.

File details

Details for the file oso-0.11.0a0-cp37-cp37m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: oso-0.11.0a0-cp37-cp37m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 7.3 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.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.4

File hashes

Hashes for oso-0.11.0a0-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 39e606dc200efb96b7b6d52338a78438aa6a2e33df774ca502431e7c79025e35
MD5 d1a874aa8b78ead2d471d332050e2d48
BLAKE2b-256 97f5be4f9ca6c36fe676359a53e814b959046781d7d35565da2b5a439fb4f17e

See more details on using hashes here.

File details

Details for the file oso-0.11.0a0-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: oso-0.11.0a0-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.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.4

File hashes

Hashes for oso-0.11.0a0-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 cf6d87ddb527e6608a3eda266ee812b9ba512da9595b22d784f8c6d33dcc2dc3
MD5 c34ac9b58fbcc464d680ae74609d1385
BLAKE2b-256 527a35e3a271d31b65014a13d102d1409b9e3122017ce974449f3c471cb8da7f

See more details on using hashes here.

File details

Details for the file oso-0.11.0a0-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: oso-0.11.0a0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 662.3 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.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.4

File hashes

Hashes for oso-0.11.0a0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 5da2177e4d425f857317ff0a3560aa47da69de8dd99f22bad442d50b3653d7ac
MD5 dd2c2881ea959649591aac95885060f4
BLAKE2b-256 d34253b51dcc77d898b901eacf133db8301f3b5c7cf9b37a606feb19f94b9122

See more details on using hashes here.

File details

Details for the file oso-0.11.0a0-cp36-cp36m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: oso-0.11.0a0-cp36-cp36m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 7.3 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.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.4

File hashes

Hashes for oso-0.11.0a0-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 2c062965e4da1232319eb322e09678969e549371b9668a78496642662780ada1
MD5 fe673efe09b55d6ef10b2cfa20ca5690
BLAKE2b-256 fd475dcce0fad1d70136c4981fcd2da0e12d890cab84decf694508078a7a8c25

See more details on using hashes here.

File details

Details for the file oso-0.11.0a0-cp36-cp36m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: oso-0.11.0a0-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.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.4

File hashes

Hashes for oso-0.11.0a0-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 39e907a986a1bba31b9fd2e17557a6ca16ed9a585c9c6faa666667886800d194
MD5 a5ade8146cb05371fd2d8e0391bb74a3
BLAKE2b-256 0520e50a09431124a3e47da470b53f1c0d9774ebb1b004415f42e3095c4f889d

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