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

Uploaded PyPy manylinux: glibc 2.12+ x86-64

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

Uploaded PyPy macOS 10.9+ x86-64

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

Uploaded PyPy manylinux: glibc 2.12+ x86-64

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

Uploaded PyPy macOS 10.9+ x86-64

oso-0.8.2-cp39-cp39-win_amd64.whl (630.5 kB view details)

Uploaded CPython 3.9 Windows x86-64

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

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64

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

Uploaded CPython 3.9 macOS 10.9+ x86-64

oso-0.8.2-cp38-cp38-win_amd64.whl (630.5 kB view details)

Uploaded CPython 3.8 Windows x86-64

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

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

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

Uploaded CPython 3.8 macOS 10.9+ x86-64

oso-0.8.2-cp37-cp37m-win_amd64.whl (630.5 kB view details)

Uploaded CPython 3.7m Windows x86-64

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

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

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

Uploaded CPython 3.7m macOS 10.9+ x86-64

oso-0.8.2-cp36-cp36m-win_amd64.whl (630.5 kB view details)

Uploaded CPython 3.6m Windows x86-64

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

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

oso-0.8.2-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.8.2-pp37-pypy37_pp73-manylinux2010_x86_64.whl.

File metadata

  • Download URL: oso-0.8.2-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.53.0 CPython/3.7.9

File hashes

Hashes for oso-0.8.2-pp37-pypy37_pp73-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 d5cd7e06f1d45b6cd9511dc04eaa93c4643336c23a67ca6771ae874f2a5d3793
MD5 988de99ab19df2415b8d551b1ec546e5
BLAKE2b-256 092c71ca231ab91568ffcf8e273814b28e025139708e4af7bface2945b4b8b1d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.8.2-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.53.0 CPython/3.7.9

File hashes

Hashes for oso-0.8.2-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6ba3b8f823f7d27a080991582f3010c6de2b4d1f71f25ba88e41f7285f27bd57
MD5 9c759750ed0fcb84bed550d1d59470b8
BLAKE2b-256 b290dcf6e682d17e755bacc0f0ef4b736d18f351f135e6d0a7371291688a2adc

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.8.2-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.53.0 CPython/3.7.9

File hashes

Hashes for oso-0.8.2-pp36-pypy36_pp73-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 6d168f76f569fdfa251481fa8780684c5158800087d4fbc25e6d4a54799738fc
MD5 31dc7464b1c0e4623a3617842ce6fddb
BLAKE2b-256 8704cf8d67666acd160032bbd3362440994a4b19597ee020a6ac4b24d14e5402

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.8.2-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.53.0 CPython/3.7.9

File hashes

Hashes for oso-0.8.2-pp36-pypy36_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 70a62605f1b465173de4bfa726ad9e12c87e00d80e6e8e791c135078d9d4b7bb
MD5 43b383c6df3cd65ab5cff900a329c0cd
BLAKE2b-256 4d0766cdcc60499bee6f54a8b85801ee8bf6d895db3c3b4938d51f76d7a61cef

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.8.2-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 630.5 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.53.0 CPython/3.7.9

File hashes

Hashes for oso-0.8.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 2bb23024eb22bf8617e3f232c70192dc77b63ca8824daadaf60a5cc7b76c8e6f
MD5 caa217dc097982d2a5f65845b027c342
BLAKE2b-256 e3ce043c0dad3a266a3b79ccae768625b4c387be00a355d6e31080f61ca333b1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.8.2-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.53.0 CPython/3.7.9

File hashes

Hashes for oso-0.8.2-cp39-cp39-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 b69a740fe6227aff7aba1093447abc35a0ce9715df17e175f3d4bc8ad7376c54
MD5 1192915ba1c5464880b49628fc4c4bcf
BLAKE2b-256 5865f6e74857e5b91a29d803ad1c6119b64a6c0bb3fbf76a283adcf04a87c905

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.8.2-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.53.0 CPython/3.7.9

File hashes

Hashes for oso-0.8.2-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 386078267074abbb50f9217af9f137cf9f39ce589328c8b1a33ab830bfdee036
MD5 38a977e36da800209c78cfbac8537b32
BLAKE2b-256 fe74872543e5a62c3491852ffb8f1cd402a236f31fdf37545f2c47f01a43ac1c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.8.2-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 630.5 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.53.0 CPython/3.7.9

File hashes

Hashes for oso-0.8.2-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 5557dabfca181f7a23c47ea463d5eb82851871d74006c878a0b63952e320d611
MD5 a4a8c68438ffbdb866c0463cf407f698
BLAKE2b-256 6d47abdc62c4387a7f0d1d20aa387bd52989b86ce5fcb6b46598b3a310cb0bdd

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.8.2-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.53.0 CPython/3.7.9

File hashes

Hashes for oso-0.8.2-cp38-cp38-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 d5624e96c2b60d1660e963b56d309ffa010ce671073437035d62cb7b17cdac3c
MD5 fe622646d634fec0acbc79b1daa90c91
BLAKE2b-256 c9a3f3d235460d96bdd059a107d8fca7c3950a254d35c6be5e1e76edc138a66b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.8.2-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.53.0 CPython/3.7.9

File hashes

Hashes for oso-0.8.2-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 abdb8dc9d2de5c2cbcf5b1321a69077bc34017159b81607fe672a6af34972a15
MD5 49b2eb907fdceaf3e014ea40d0f8061d
BLAKE2b-256 3efc584eafe85516ccbc28008a597e8ec93307fa82ae1932a983d0dae28914c5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.8.2-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 630.5 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.53.0 CPython/3.7.9

File hashes

Hashes for oso-0.8.2-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 fdfe0f62b105b500602b434bf2fbf301047371a8ee8f07721221f35b35baaf3c
MD5 79e72be498df2560c470b4f933ab2465
BLAKE2b-256 4e057754f4c3698699ea376f2c5e4502a49da5f8baecaeb42a8daf934e2a261a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.8.2-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.53.0 CPython/3.7.9

File hashes

Hashes for oso-0.8.2-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 dc83c0cfb10ce18c0ef4ab2d7338e2081a8c750e5ed540b1e8e1244c8f4b5cb6
MD5 dec380d790f93ec4b270c9a5e59413d8
BLAKE2b-256 7b938706a33eff74262b83a16d31cbb59eff37c4be13450e2642c77409a60cba

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.8.2-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.53.0 CPython/3.7.9

File hashes

Hashes for oso-0.8.2-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 22718de1bc4e8bec16c20ea24094a3a30f2b18e6e5a4a68009a1ca53ddb2468d
MD5 4d8dc3334bba8e448eb925f68f6a1282
BLAKE2b-256 bd9e7da5aa03418cf4a6c2971a9d573f23a00bff2b8dbc227e423ec515ca1305

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.8.2-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 630.5 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.53.0 CPython/3.7.9

File hashes

Hashes for oso-0.8.2-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 f2bc7b5fb4f559f3c2b0b70d6e0fdaf26d8cc6a3245951757cba269a47882274
MD5 ca6a3df02a4de103668d3e897b6c1a20
BLAKE2b-256 a5236772e4605daab42fd70f9ce35e85f6a3ddedae51db1cc9b4ce903cb01e41

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.8.2-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.53.0 CPython/3.7.9

File hashes

Hashes for oso-0.8.2-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 b7e38026c988914094962d396f2c56a9b0e7db99c7e97aa6419224a431dce557
MD5 e31ea9d023084db4343a035db7a917d0
BLAKE2b-256 3544451bb2a1b66932d2731a09016f63ac2f0a01779ead77f0c6c9954158d065

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.8.2-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.53.0 CPython/3.7.9

File hashes

Hashes for oso-0.8.2-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f7b657a444aafc61a5a9a44be176dd853da06ff5946ed806bc5b22178e9afee4
MD5 63df3ce229f6961bfad0c97b47fe1490
BLAKE2b-256 7a1c5cf7db8da3637f968959d22924e9d8c601b467c8ade49bfa52620253a292

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