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

Uploaded PyPy manylinux: glibc 2.12+ x86-64

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

Uploaded PyPy macOS 10.9+ x86-64

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

Uploaded PyPy manylinux: glibc 2.12+ x86-64

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

Uploaded PyPy macOS 10.9+ x86-64

oso-0.9.0-cp39-cp39-win_amd64.whl (618.3 kB view details)

Uploaded CPython 3.9 Windows x86-64

oso-0.9.0-cp39-cp39-manylinux2010_x86_64.whl (7.0 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64

oso-0.9.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.9.0-cp38-cp38-win_amd64.whl (618.3 kB view details)

Uploaded CPython 3.8 Windows x86-64

oso-0.9.0-cp38-cp38-manylinux2010_x86_64.whl (7.0 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

oso-0.9.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.9.0-cp37-cp37m-win_amd64.whl (618.3 kB view details)

Uploaded CPython 3.7m Windows x86-64

oso-0.9.0-cp37-cp37m-manylinux2010_x86_64.whl (7.0 MB view details)

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

oso-0.9.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.9.0-cp36-cp36m-win_amd64.whl (618.3 kB view details)

Uploaded CPython 3.6m Windows x86-64

oso-0.9.0-cp36-cp36m-manylinux2010_x86_64.whl (7.0 MB view details)

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

oso-0.9.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.9.0-pp37-pypy37_pp73-manylinux2010_x86_64.whl.

File metadata

  • Download URL: oso-0.9.0-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.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.7.9

File hashes

Hashes for oso-0.9.0-pp37-pypy37_pp73-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 8ee16691a23e8367d393da4b30c2d74e95f5659445a07d129c9a860bbb585365
MD5 668ba6b9b7c9ae4ec9eb25e962452ec5
BLAKE2b-256 a349414a31758c8374ea8d66ce645f979ad6b04a07e76c5c7f200a1b031988e2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.9.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.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.7.9

File hashes

Hashes for oso-0.9.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4bbf355033a13f3803e30a2b78155aaf53ac159c2591bc70aef38ae2f3de419d
MD5 4a47655eac88daeb30bf7bf991c1f733
BLAKE2b-256 bfdcc97cf4cff2d06f20678beffeacd716012fcbb808d5f02353245ba7a6bc90

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.9.0-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.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.7.9

File hashes

Hashes for oso-0.9.0-pp36-pypy36_pp73-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 7311d0200cbb0fe0f72f9b6e39ef3825b0c70fc0ed2335fc41408494805ea2e8
MD5 c0dc9ad060aa1a74abd87867e33ae013
BLAKE2b-256 6a1148fe4e83dd52bd3ebd418d6e5af3cd243175afa0ca6d0d88dc91da66d412

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.9.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.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.7.9

File hashes

Hashes for oso-0.9.0-pp36-pypy36_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 43f7079580e9b2931e996fefc70038f93a672a21ca5564712679ba6160ae4966
MD5 578cd146b5a3a226cc5e3dd567281118
BLAKE2b-256 f15ac5b6b0d9a15be2bc35dbf371bd6f93b225a1ed64131a11fc9c9b18d86cf1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.9.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 618.3 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.7.9

File hashes

Hashes for oso-0.9.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 9674ff83f4d28acff9295d2f66b5a0a53f0ace2a3250322a064469de12fd08be
MD5 43ba2200f7101907f576002a765b9cc6
BLAKE2b-256 1d25ee7cc691495cabbc16f2af30056815ea4529bac142e94796a38ae06deaf9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.9.0-cp39-cp39-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 7.0 MB
  • Tags: CPython 3.9, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.7.9

File hashes

Hashes for oso-0.9.0-cp39-cp39-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 f4dc9a38cce352d858da3d3e09a2c7ac902cdeeca23e004b675a86f04af57d3f
MD5 329f607a454bc4c31cbd7b0f58f8c127
BLAKE2b-256 bbb9f38dd6805dcc84d997b37f3dfe971ed955847baab0c6356e3cd1c2e67b08

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.9.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.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.7.9

File hashes

Hashes for oso-0.9.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 9203023149ccfbca9161d9d995f65afa86383867f706edb2f009cba88cee2cf9
MD5 ca4ff4e84af283f63dd0e2a081e38aa0
BLAKE2b-256 56ab73ad0f780c91cf6ceae3d4efd15b9bdb51355dc89d81f27933ae11cc7cc7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.9.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 618.3 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.7.9

File hashes

Hashes for oso-0.9.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 a38a0494096c6feb6835e71c43e592de4760df88b4ffac9db13e2486f4f83214
MD5 0a55740d322a1165ea91de27313d5516
BLAKE2b-256 4521fc3c8d621ac7ad47135829a80d73c753c5d0f0c5d55c6a24a002f3dbb059

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.9.0-cp38-cp38-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 7.0 MB
  • Tags: CPython 3.8, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.7.9

File hashes

Hashes for oso-0.9.0-cp38-cp38-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 af48ffe8f4a6439ddc5a837a13cb8f13f47263ecf858cad19e9ead9fde4b3c15
MD5 afc0e6535cc08e0a5baec7aa3cf96e6b
BLAKE2b-256 fe360bf26fc40be90e4b959b66d92c48849bda005dd41c4c275707b5791f7683

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.9.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.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.7.9

File hashes

Hashes for oso-0.9.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 71ccb6353e8b2668df27b3cd85ee51f961e3fec423126b200dc7016087282a4c
MD5 a2c68b88dfc331d309ba88a6a53d345c
BLAKE2b-256 2e03af5ea02e4a8080483ea4bc56b1d3c4d5d14e63b9ae41a19b242c79c902ac

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.9.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 618.3 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.7.9

File hashes

Hashes for oso-0.9.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 11ffc793ceb6ba111e154a165fa55761d72472d57fb86662a6afb2007a5c959a
MD5 442d51e64031517fd409f909d558f82c
BLAKE2b-256 d27eb5b311ffcebc502370b69281f0b76ae824628208dbb1f10c5e7ee8285151

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.9.0-cp37-cp37m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 7.0 MB
  • Tags: CPython 3.7m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.7.9

File hashes

Hashes for oso-0.9.0-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 8b3d1377cba2b390acafaf145a5245a2c5b61dda34000fe80f44747b40cd1b73
MD5 2fb7016d36d1d0d9a4e0211d5cd2862a
BLAKE2b-256 da684437109d7cbe586aa727c57e9f4de454a21576c08c498327b40d3f53c549

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.9.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.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.7.9

File hashes

Hashes for oso-0.9.0-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 eeee5b27ebc5fd2613499a1248a5c3735551638460d50c81d60db621341740d0
MD5 74c27df02d36916e7efe7ab62f903af1
BLAKE2b-256 ebdd9da711d32e099b6b4ae453a40dc2a9102feb8bdc9ade14629c49613e04ba

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.9.0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 618.3 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.7.9

File hashes

Hashes for oso-0.9.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 2b0eb35e06d5082294f2e38920a4c298a8e3b161be96bd77e836b25db755be7b
MD5 cc0836ca585e7127fb89916b9aa375e6
BLAKE2b-256 d5036468dbe2a9a7be8656a42528f6c41d76dd092d1e5c71b7d0ad2387672711

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.9.0-cp36-cp36m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 7.0 MB
  • Tags: CPython 3.6m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.7.9

File hashes

Hashes for oso-0.9.0-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 87bac141654afe4ce88303dc09d0160d46ef486cb919460e81d3d9b292c0c8d8
MD5 eea6b8716d8726a691ae14064a8d06c4
BLAKE2b-256 5764ce6f3d2d64ca6912b0ced2f24ac03c4a28b65b8b7646da259dc100907d2e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.9.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.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.7.9

File hashes

Hashes for oso-0.9.0-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 893b2057b0cc70018b3bad2d5ed4c96f8b438bedfc96aad38db1c5776dce18a3
MD5 c2046b7e96478be610c56c013fb948b8
BLAKE2b-256 89315d519826ebf5555f0f6d7ed49c6d58f68280f2609a2ee3771650b9a69e56

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