#访问控制 #授权 #Node.js #策略 #应用程序 #RBAC #原始

bin+lib oso

oso是一个嵌入您应用程序中的开源授权策略引擎

44个版本

0.27.3 2024年1月13日
0.27.2 2023年12月20日
0.27.0 2023年4月3日
0.26.4 2022年12月5日
0.1.0 2019年1月28日

#54 in 开发工具

Download history 4296/week @ 2024-04-08 3706/week @ 2024-04-15 4019/week @ 2024-04-22 3667/week @ 2024-04-29 3763/week @ 2024-05-06 4425/week @ 2024-05-13 3700/week @ 2024-05-20 3099/week @ 2024-05-27 2448/week @ 2024-06-03 3656/week @ 2024-06-10 3807/week @ 2024-06-17 3905/week @ 2024-06-24 2738/week @ 2024-07-01 3868/week @ 2024-07-08 4152/week @ 2024-07-15 3137/week @ 2024-07-22

每月13,934次下载
用于 2 crates

Apache-2.0

1MB
20K SLoC

已弃用

我们已经弃用了传统的Oso开源库。我们计划发布下一个开源版本,并期待在发布前从社区获得反馈(请在Slack的#help频道联系我们)。同时,如果您现在使用Oso开源库感到满意,则无需进行任何更改——即,我们不会终止(EOL)该库,我们将继续提供支持和关键错误修复。更多背景信息:[这里](https://www.osohq.com/docs/oss/getting-started/deprecation.html)。

Oso

Development GitHub release (latest SemVer) Go version Maven version NPM version PyPI version RubyGems version Crates.io version Slack

什么是Oso?

Oso是一个用于在您的应用程序中构建授权的内置框架。

使用Oso,您可以

  • 建模:使用Oso内置的基本操作设置常见的权限模式,如基于角色的访问控制(RBAC)和关系。使用Oso的声明式策略语言Polar扩展它们,以满足您的需求。
  • 过滤:超越简单的“是/否”授权问题。实现针对集合的授权,例如,“只显示Juno能看到的记录。”
  • 测试:现在有了针对授权逻辑的单个接口,您可以编写单元测试。使用Oso调试器或REPL跟踪意外行为。

Oso 提供了适用于 Node.jsPythonGoRustRubyJava 的库。

我们最新的作品 Oso Cloud 使得跨服务授权变得和 oso.authorize(user, action, resource) 一样简单。 了解更多。

文档

  • 要开始使用 Oso,请尝试 入门指南
  • 完整文档可在 docs.osohq.com 上找到。
  • 查看 用例 了解更多关于团队在生产中使用 Oso 的信息。
  • 要了解授权的最佳实践(不限于 Oso),请阅读 授权学院 指南。

社区 & 支持

如果您对 Oso 或更广泛的授权有任何疑问,您可以加入我们的工程团队和数百名在其他社区 Slack 中使用 Oso 的开发者。

Button

分享你的故事

我们很乐意了解您在使用 Oso 时的用例和经验。在我们的 成功故事问题 中分享您的故事。

开发

核心

Oso 的 Rust 核心 是基于 Rust 的最新稳定版 开发的。

语言库

Oso 的语言库可以在不接触 Rust 核心的前提下进行开发,但您仍需要在系统 PATH 中安装 Rust 稳定工具链以构建核心。

要为 Node.js 库构建 WebAssembly 核心,您需要在系统中安装并可用 wasm-pack

语言要求

要在语言库上工作,您需要满足以下版本要求

  • Java: 11+
    • Maven: 3.6+
  • Node.js: 12.20.0+
    • Yarn 1.22+
  • Python: 3.7+
  • Ruby: 2.4+
    • Bundler 2.1.4+
  • Rust: 1.46+
  • Go: 1.14+

贡献 & 工作

查看: CONTRIBUTING.md

如果您想全职从事 Oso 代码库的开发工作,请访问 我们的工作页面

许可

查看: LICENSE

依赖

~3–14MB
~177K SLoC