osohq / oso-go-quickstart

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DEPRECATED

We deprecated the legacy Oso open source library in December 2023. We have plans for the next open source release and we’re looking forward to getting feedback from the community leading up to that point. In the meantime, if you’re happy using the Oso open source library now, nothing needs to change – i.e., we are not end-of-lifing (EOL) the library and we’ll continue to provide support and critical bug fixes.

This post describes how we got here, what this change means for existing users, and what you can expect from Oso in the future. If you have questions, you can always reach out to us in our community Slack.

If you’re building authorization for more than one service or want to share a policy across multiple applications, read how to get started with Oso Cloud.

Oso Go Quickstart

Follow along here.

Instructions

  1. Clone this repository.
  2. Install dependencies: go mod download
  3. Run the server: go run .

Make some changes

If you visit http://localhost:5000/repo/gmail, you should get a 200 response. If you visit http://localhost:5000/repo/react, you should see a 404.

Add this code to main.polar:

has_permission(_user: User, "read", repository: Repository) if
  repository.IsPublic;

Now, when you visit http://localhost:5000/repo/react, you should see a proper 200 response, because the react repository is marked as public in models.go.

About


Languages

Language:Go 78.4%Language:Polar 21.6%