Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rond-authz/rond
A lightweight container for distributed security policy evaluation
https://github.com/rond-authz/rond
authorization hacktoberfest openpolicyagent rbac security
Last synced: about 2 months ago
JSON representation
A lightweight container for distributed security policy evaluation
- Host: GitHub
- URL: https://github.com/rond-authz/rond
- Owner: rond-authz
- License: apache-2.0
- Created: 2022-06-03T10:03:42.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-04-30T08:36:56.000Z (9 months ago)
- Last Synced: 2024-05-02T01:42:16.085Z (8 months ago)
- Topics: authorization, hacktoberfest, openpolicyagent, rbac, security
- Language: Go
- Homepage: https://rond-authz.io
- Size: 1.16 MB
- Stars: 159
- Watchers: 6
- Forks: 7
- Open Issues: 24
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
- awesome-k8s-resources - Rönd - Rönd is an open-source lightweight Kubernetes sidecar container that helps you protect your APIs with simple security policies. It also natively allows you to build your RBAC/ABAC solution. (Tools and Libraries / Security and Compliance)
- awesome-opa - Rönd - Rönd is a lightweight container that distributes security policy enforcement throughout your application (Tools and Utilities / Testing Blogs and Articles)
README
[![Build Status][github-actions-svg]][github-actions]
[![Coverage Status][coverall-svg]][coverall-io]
[![Go Report Card][go-report-card-badge]][go-report-card]
[![Go Sec][security-badge-svg]][security-badge][![Docs][docs-badge]][docs]
[![Mia-Platform][mia-platform-badge]][mia-platform]
# Rönd
Rönd is a lightweight container that distributes security policy enforcement throughout your application.
Rönd is based on [OpenPolicy Agent](https://www.openpolicyagent.org) and allows you to define security policies to be executed during API invocations. Rönd runs in your Kubernetes cluster as a sidecar container of your Pods.
Rönd intercepts the API traffic, applies your policies and, based on the policy result, forwards the request to your application service or rejects the API invocation.## Why Rönd?
Find out more [here][why-rond].
## Features
Rönd supports three policy types:
1. Allow or reject request
2. Query generation during the request flow
3. Response body patching## RBAC capabilities
Rönd natively allows you to build an RBAC solution based on Roles and Bindings saved in MongoDB.
## Who is using Rönd
Here is a list of awesome people using Rönd, if you're using it but do not appear in this list feel free to open a PR!
* [Cattolica Assicurazioni](https://www.cattolica.it/)
* [MDConcierge](https://www.mdconcierge.it/)
* [Mia-Care](https://mia-care.io/)
* [Mia-Platform](https://mia-platform.eu)
* [PreviDigital](https://previdigital.com/)## Local development
For local development you need to have Go installed locally, checkout the [go.mod](./go.mod#L3) file to know the currently used language version.
### Run tests
```sh
make test
```Please note that in order to run tests you need Docker to be installed; tests need a local instance of MongoDB to be up and running, the `make test` command will take care of it by creating a new `mongodb` container. The container is auomatically removed at the end of tests; if it remains leaked simply run `make clean`.
#### With coverage
To run test with coverage file in output, run
```sh
make coverage
```### Contributing
Please read [CONTRIBUTING.md](./CONTRIBUTING.md) for further details about the process for submitting pull requests.
[github-actions]: https://github.com/rond-authz/rond/actions/workflows/test.yml
[github-actions-svg]: https://github.com/rond-authz/rond/actions/workflows/test.yml/badge.svg
[coverall-svg]: https://coveralls.io/repos/github/rond-authz/rond/badge.svg
[coverall-io]: https://coveralls.io/github/rond-authz/rond
[security-badge-svg]: https://github.com/rond-authz/rond/actions/workflows/security.yml/badge.svg
[security-badge]: https://github.com/rond-authz/rond/actions/workflows/security.yml
[go-report-card-badge]: https://goreportcard.com/badge/github.com/rond-authz/rond
[go-report-card]: https://goreportcard.com/report/github.com/rond-authz/rond
[mia-platform-badge]: https://img.shields.io/badge/Supported%20by-Mia--Platform-green?style=for-the-badge&link=https://mia-platform.eu/&color=3d86f4&labelColor=214147
[mia-platform]: https://mia-platform.eu/?utm_source=referral&utm_medium=github&utm_campaign=rond
[docs-badge]: https://img.shields.io/badge/-Read%20the%20Docs-green?style=for-the-badge&color=3d86f4&labelColor=214147
[docs]: https://rond-authz.io/?utm_source=referral&utm_medium=github&utm_campaign=rond
[why-rond]: https://github.com/rond-authz#why-r%C3%B6nd