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 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, Rust and Go.

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

Uploaded PyPy manylinux: glibc 2.12+ x86-64

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

Uploaded PyPy macOS 10.9+ x86-64

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

Uploaded PyPy manylinux: glibc 2.12+ x86-64

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

Uploaded PyPy macOS 10.9+ x86-64

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

Uploaded CPython 3.9 Windows x86-64

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

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64

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

Uploaded CPython 3.9 macOS 10.9+ x86-64

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

Uploaded CPython 3.8 Windows x86-64

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

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

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

Uploaded CPython 3.8 macOS 10.9+ x86-64

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

Uploaded CPython 3.7m Windows x86-64

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

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

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

Uploaded CPython 3.7m macOS 10.9+ x86-64

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

Uploaded CPython 3.6m Windows x86-64

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

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

oso-0.11.0-cp36-cp36m-macosx_10_9_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.6m macOS 10.9+ x86-64

File details

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

File metadata

  • Download URL: oso-0.11.0-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.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.9

File hashes

Hashes for oso-0.11.0-pp37-pypy37_pp73-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 5c45e25e0e51ef138c64c2a1a06c15edfc0c03a3568607ba313b6fde59f4eb2e
MD5 e23bc94cca4c7034849e750bde135d77
BLAKE2b-256 bae5156b82e1d44cca719112cca864847576a0424fbef9bd6c448f8dc2afb32d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.11.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.8 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.2 CPython/3.7.9

File hashes

Hashes for oso-0.11.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ee5b6bfc992fb1e6447dc19c6d75a8142f25f70b285a5a1572e63b4958e5cf21
MD5 4f933e0281c5d683f661a832167e8a18
BLAKE2b-256 03cbf3eaaa9b348623340bc88dc348828483d132ca0d84068f83a2517a0daa4d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.11.0-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.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.9

File hashes

Hashes for oso-0.11.0-pp36-pypy36_pp73-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 a0a6ca2eb5567ce38e9d9f9d5d0ad4bd3aab4f756d8f066f1e9e41a6af9c195e
MD5 0572d5acaab827dfda6fdab3c4782bf7
BLAKE2b-256 824932e3cfcc9ca1f715063ddf8c420be7e1a291dd82ed2fd638138f125af3ff

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.11.0-pp36-pypy36_pp73-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.8 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.2 CPython/3.7.9

File hashes

Hashes for oso-0.11.0-pp36-pypy36_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 7a89d20a83ee58ded89219105c07968d644b33bbae507b0693fde5ec6fd7dc4f
MD5 741cfdb0ff73a5d66b9266e4f5aea4c3
BLAKE2b-256 bda39c465b19c74ed30d9729bbe5e3929c435736eaaf46c12dcb75791d808e7b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.11.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 650.8 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.2 CPython/3.7.9

File hashes

Hashes for oso-0.11.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 1a2170ef1a55545a6c5418d8acb0b66197383207d2236c6761d968d6f759a8e4
MD5 a32d87147f40f36702a9e7cc19b62ea3
BLAKE2b-256 935e4923f0b2cb30d4a501feee9d3117744357ccdf18a810a7805054ba89477c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.11.0-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.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.9

File hashes

Hashes for oso-0.11.0-cp39-cp39-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 1fe4c37cf48a5cbebb069e198a7a95c045a5624cfd2a491508a4214ca53e6c65
MD5 2d99ff49e3d2c19e36885b0c2b1840fc
BLAKE2b-256 dacaf279212e4cf222f7a83729fb1e3344b391ba693bb6be146733cfa101c89f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.11.0-cp39-cp39-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.8 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.2 CPython/3.7.9

File hashes

Hashes for oso-0.11.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 428a1a65a7a835307a421ea8ef1847ef07a2493524a5b747fd226a7abef1133a
MD5 7c2dcb711c9f95f124901522c84d5a98
BLAKE2b-256 946d0f1347cca9a6cb2649eda241b41baa45fe2ec285a3b885a974546f6bcdd7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.11.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 650.9 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.2 CPython/3.7.9

File hashes

Hashes for oso-0.11.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 ea6690dd2af600c79b8a9200dff110675213ce9a558b81ab246f46c49c13ca61
MD5 55a72456ca56ca249d6794c97007fe59
BLAKE2b-256 5cdf2f2c7fe80726cfc094470c95c9384ac86eb55c5b41551995bd30236b98d3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.11.0-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.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.9

File hashes

Hashes for oso-0.11.0-cp38-cp38-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 9bfb5478601def83729116f29711817e7ed44984f4c51cbe1e4eae94c0a178bd
MD5 087a6069f96cd62d1783b5258c9d6073
BLAKE2b-256 c65cbe5a7582babe14d5c0127cb198448c94a3d9b184fce9ab14da512e6353bf

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.11.0-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.8 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.2 CPython/3.7.9

File hashes

Hashes for oso-0.11.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 437d94992dfe366da0515bbdd775681b5b239d81b1a9c41f7374ad0d10133659
MD5 1fc4713d7ab3fd8516a98eaedf070f61
BLAKE2b-256 78d80fdf5a03ee1436d1e7394ddc1258365dfac66e803093058463c84746b079

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for oso-0.11.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 f6486bdcd38240f1d49c0b1183bc0a33de883068d101ad9ee9cabf8f8843e308
MD5 36d9b4c34f614bec68d72372d3d480d0
BLAKE2b-256 874071184ad90264eb593d1b43742282336444d71a91302411b91dd203b48aba

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.11.0-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.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.9

File hashes

Hashes for oso-0.11.0-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 26e3629b7601a3abf44f5fd3f7af8ec1d32589850f731e984956458b28e2fe9c
MD5 9096d6977bdac0d006c68f5fe4d676cb
BLAKE2b-256 24122345bafe35c10fe0f4527c6c3147b034354f1ddbdab665ce036568846f42

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.11.0-cp37-cp37m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.8 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.2 CPython/3.7.9

File hashes

Hashes for oso-0.11.0-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6fb1fb63e6cf121b6af9679d5de96ce6b91ddadd635ae735d8e6d9f35e116327
MD5 0cd306217d19138a92d374bd26ed4e1f
BLAKE2b-256 07257b07785458b06bfec850ca8419e1b260c2d6c30282ef42ea418488bba64b

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for oso-0.11.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 4ae695528493b595ac4ae7bc8794b414854e1d8433f502ccce9a463e39dd4469
MD5 8b119022578d47fc462caaa29a487a80
BLAKE2b-256 1e4f58257ef99ed6b7fc444d8e33865cdb13c8a44f6f7485f64a0b878a60995f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.11.0-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.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.7.9

File hashes

Hashes for oso-0.11.0-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 e4ec525fae2862e1f3206ba57b064b6e48dc896d6dfa7f466a426532813d60ab
MD5 888b4808f9a46626a6f3d183523999ac
BLAKE2b-256 d6197f44e65e85efba44b8872ebca6ed7a27f4397e41873dc87cdfab375b240b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oso-0.11.0-cp36-cp36m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 1.8 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.2 CPython/3.7.9

File hashes

Hashes for oso-0.11.0-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a2ce86ba99b14a082197536e87af377e1d6404d7dc173de0b4fdaa5117e9e8de
MD5 31e789c038a8936bf90db39218dcc4cf
BLAKE2b-256 c9317e3011b1612ffc7085e6d33724d35e79555ccf931b361b36d1acc440a2c4

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