Release: Oso 0.14.1 is out, now with built-in Role-Based Access Control (RBAC) policies in Rust & Java

We've been working on making built-in Role-Based Access Control (RBAC) policies available in all languages. In addition to Python, Node, and Ruby, this release now makes roles available in Rust and Java as well 🦀 ☕️.

Built-In Role-Based Access Control (RBAC)

The Rust and Java libraries now have built-in support for Role-Based Access Control (RBAC) policies, which you can turn on with .enable_roles(). See the Rust guide to try it out. We also have RBAC guides in Python, Node, and Ruby.

Comparison operators in Ruby

Oso's Ruby library now fully supports comparing external objects in policies using comparison operators. You can now compare Ruby objects using the Polar operators >, <, ==, !=, >=, and <=.

Other Bug Fixes and Improvements

You can now easily debug Oso policies with the latest improvements, which include:

  • Using the var command to inspect a variable in the debugger under its original name instead of the internal temporary name.
  • Breaking on runtime errors so you can inspect the stack and other state that may have caused the error.
  • Increased debug printing performance in the Python library. External instances will only be converted to their string representation as needed for debugging or tracing.

Community contributions

  • Thanks to @arusahni for surfacing and documenting a potential gotcha when using flask-oso with other Flask libraries that rely on LocalProxy objects.

For more details on these and other changes, read the changelog.

Set up a 1x1 with an Oso engineer

Our team is happy to help you get started with Oso. If you'd like to try out any of these new features, or if you're interested in learning how to use Oso in your app, schedule a 1x1 with an Oso engineers.

Our team is also available to help in Slack.

Want us to remind you?

We'll email you before the event with a friendly reminder.

The best way to learn is to get your hands dirty.