A Golang based Open-Source Authorization Service 

Golang Authorization Service

What is Permify Authorization Service?

Permify is a Golang-based open-source authorization service for creating and maintaining fine-grained authorizations across your applications and services.

Permify converts authorization data as relational tuples into a database you point at. We called that database a Write Database (WriteDB), which behaves as a centralized data source for your authorization system. You can model your authorization with Permify’s DSL – Permify Schema – and perform access checks with a single API call anywhere on your stack. Access decisions made according to stored relational tuples.

The data model is inspired by Google’s consistent, global authorization system, Google Zanzibar Paper.

Where Permify Authorization Service works best:

  • If you already have an identity/auth solution and want to plug in fine-grained authorization on top of that.
  • If you’re managing authorization for growing micro-service infrastructure.
  • If your authorization logic is cluttering your code base.
  • If you want to create a unified access control mechanism for individual applications.
  • If your data model is getting too complicated to handle your authorization within the service.
  • If your authorization is growing too complex to handle within code or API gateway.

Features

closed_lock_with_key Convert & store authorization data in-house with high availability.

crystal_ball Easily model and refactor your authorization with Permify’s DSL, Permify Schema.

memo Audit & Reason your access control hassle-free with user interface.

stethoscope Analyze the performance and behavior of your authorization with tracing tools jaeger, signoz or zipkin.

white_check_mark Low latency with parallel graph engine on access checks.

How it works

Getting Started with the Golang based Project