oso
windows-rs
oso | windows-rs | |
---|---|---|
16 | 98 | |
3,414 | 9,876 | |
1.3% | 2.1% | |
6.7 | 7.7 | |
about 2 months ago | about 3 hours ago | |
Rust | Rust | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
oso
-
Who's hiring developer advocates? (October 2023)
Link to GitHub -->
-
Show HN: ILLA is an Open-source alternative to Retool
Not OP but Authentication is easy, authorization is a cross-cutting concern that often requires custom code. E.g., there are people and teams, both of which can have different kinds of access to something (read/write). Sometimes teams have sub-teams. Do the sub-teams have access to the parent teams' resources and/or vice versa? Also what kind of sharing are you going to support? Do people have to have an account to view stuff shared to them or can you just send a link? There are some efforts to make custom DSLs for describing authorization policies, to avoid cross-cutting code[1].
Computed fields require different treatment at every level of the stack. This isn't inherently hard, but it is an extra feature these low-code/no-code platforms need. Where things get difficult is inn migrations. It's common for a field that is computed at the beginning to become customizable, or for the computation to change. When that happens, what should the value be for old columns? Computed fields also often pull data from multiple other tables, which may require some combination of custom queries and database optimization.
[1] https://github.com/osohq/oso
-
Resource-based authentication
Oso and OpenFGA are two alternatives that implement Zanzibar-style authorisation.
- Oso - batteries-included framework for building authorization in your application.
-
Decoupling Authorization Logic from Code in NodeJS
There's Oso as well
-
Is Datalog a good language for authorization?
Well this was fun to see! I'm the CTO of Oso, where we're building Polar (the second of the links mentioned https://docs.osohq.com/).
I have a few really minor nitpicks, so will try and make up for it by adding to the discussion :)
First of all, it doesn't really make sense to talk about Datalog as a good language for authorization, because much like with Prolog there doesn't really exist a single implementation of it. OPA's language Rego is a datalog variant, and Polar started out as a Prolog variant (although it's not really recognisable as one any more).
And that's an important point because otherwise it would be pretty reasonable to decide that: logic programming is good for authorization => you should go find the most battle-tested language out there and use that. For example, there's SWI Prolog [1] and Scryer Prolog [2] as two of my favourites.
To me, the thing that is mind-blowing about logic programming, is (a) how powerful the paradigm is, and (b) how concisely you can implement a logic programming language. Take miniKanren [3] which is a full-blown logic language in a few hundred lines of code.
In my mind, the original article makes a decent case that logic programming is a good fit for authorization. And just generally I love anyone bringing attention to that :)
But to me, the reason logic programming is such a solid foundation for authorization logic is the pieces you can build on top of it. For Polar, we've added:
- Types! So you can write authorization logic over your data types and help structure your logic. We've implemented this by simply adding an additional operator into the language that can check types
-
Hey Rustaceans! Got an easy question? Ask here (52/2021)!
First time hearing about rhai, but there's a project in that space called Oso that's authored in Rust and uses a different DSL than Rego. You may or may not find it appealing.
-
Hey Rustaceans! Got an easy question? Ask here (44/2021)!
Authentication is probably the aspect of it that's the weakest. Authorization has a few nice libs, with Oso probably being the nicest, but authentication is mostly roll your own from what I've seen.
-
We Built a Cross-Platform Library with Rust
> Hopefully Oso open source their library.
https://github.com/osohq/oso seems to have the core, C FFI, and language bindings.
Thanks! PHP is a highly requested language for us and we've been rolling them out based on demand. You can vote for it if you want here https://github.com/osohq/oso/issues/791
windows-rs
-
3 years of fulltime Rust game development, and why we're leaving Rust behind
I'd say Rust does have that big ticket ecosystem push. Microsoft has been embracing Rust lately, with things like official Windows bindings [1].
The bigger problem is just inertia: large game engines are enormous.
[1]: https://github.com/microsoft/windows-rs
-
Ask HN: What is the best way to build a desktop app in Windows in 2023?
It's a shame that, unlike with Win32, using WinUI places pretty harsh restrictions on which programming languages and environments you can use. Only C# and C++ are supported, the latter only with Microsoft compilers. For everything else, including Rust[1], Python and MinGW C/C++, there is no answer for OP's question, and the effect of this on the visual consistency of the Windows desktop is obvious - there is none. Every third-party app uses a different toolkit with a different look and feel, because the library providing the standard look and feel simply isn't available to the majority of developers.
[1]: https://github.com/microsoft/windows-rs/pull/1836
-
Good rust book for the 1st time programmer with no prior programming experience?
[0] https://github.com/microsoft/windows-rs
-
What in Rust is equivalent to C++ DLLs (shared libraries), or what do I need to do to support extensions in my app?
On Windows you'd need to call the LoadLibraryEx method. You'd also need a crate to call Win32 functions, I suggest windows-rs.
-
Microsoft is to enable Rust use for Windows 11 kernel
windows-rs, Microsoft's crate wrapping the Windows API, already includes the WDK, the special sdk for creating kernel code.
-
Which GUI toolkit for Rust today.. few questions...
On windows, I'll probably use https://github.com/gabdube/native-windows-gui or https://github.com/microsoft/windows-rs both of them seem pretty solid.
-
Which crate for listing / moving Windows 11 windows ?
*nod* It's an official Microsoft thing generated from official Microsoft API definition files. (The repo is at microsoft/windows-rs on GitHub.)
-
Kernel Headers for Windows could soon make it into windows-rs
Microsoft offers official "bindings" to Win32 APIs through win32metadata. However, until recently, it did not include metadata for kernel-level functions or WDK. In early 2021, an issue was raised through windows-rs regarding this limitation, but progress was slow until now. Microsoft has finally released official metadata for WDK, which can be found on the wdkmetadata repository. The latest comment on the issue thread can be found here:
-
Is the Rust ecosystem capable of making a cross-platform mobile game with p2p Bluetooth yet?
Is something wrong with https://github.com/deviceplug/btleplug or you haven't found it? You could also use bindings to platform libraries like https://github.com/microsoft/windows-rs and https://github.com/rust-mobile/ndk if btleplug doesn't have something fundamental to you.
What are some alternatives?
CASL - CASL is an isomorphic authorization JavaScript library which restricts what resources a given user is allowed to access
winapi-rs - Rust bindings to Windows API
node-casbin - An authorization library that supports access control models like ACL, RBAC, ABAC in Node.js and Browser
Cargo - The Rust package manager
OPA (Open Policy Agent) - Open Policy Agent (OPA) is an open source, general-purpose policy engine.
fltk-rs - Rust bindings for the FLTK GUI library.
django-guardian - Per object permissions for Django
Slint - Slint is a toolkit to efficiently develop fluid graphical user interfaces for any display: embedded devices and desktop applications. We support multiple programming languages, such as Rust, C++ or JavaScript. [Moved to: https://github.com/slint-ui/slint]
django-rules - Awesome Django authorization, without the database
slint - Slint is a declarative GUI toolkit to build native user interfaces for Rust, C++, or JavaScript apps.
Ory Keto - Open Source (Go) implementation of "Zanzibar: Google's Consistent, Global Authorization System". Ships gRPC, REST APIs, newSQL, and an easy and granular permission language. Supports ACL, RBAC, and other access models.
maven-mvnd - Apache Maven Daemon