casbin / protobuf-adapter

Google Protocol Buffers adapter for Casbin

Home Page:https://github.com/casbin/casbin

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Protobuf Adapter Build Status Coverage Status Godoc

Protobuf Adapter is the Google Protocol Buffers adapter for Casbin. With this library, Casbin can load policy from Protocol Buffers or save policy to it.

Installation

go get github.com/casbin/protobuf-adapter

Simple Example

package main

import (
	"github.com/casbin/casbin"
	"github.com/casbin/protobuf-adapter"
)

func main() {
	// Initialize a Protobuf adapter and use it in a Casbin enforcer:
	b := []byte{} // b stores Casbin policy in Protocol Buffers.
	a := protobufadapter.NewProtobufAdapter(&b) // Use b as the data source. 
	e := casbin.NewEnforcer("examples/rbac_model.conf", a)
	
	// Load the policy from Protocol Buffers bytes b.
	e.LoadPolicy()
	
	// Check the permission.
	e.Enforce("alice", "data1", "read")
	
	// Modify the policy.
	// e.AddPolicy(...)
	// e.RemovePolicy(...)
	
	// Save the policy back to Protocol Buffers bytes b.
	e.SavePolicy()
}

Getting Help

License

This project is under Apache 2.0 License. See the LICENSE file for the full license text.

About

Google Protocol Buffers adapter for Casbin

https://github.com/casbin/casbin

License:Apache License 2.0


Languages

Language:Go 97.3%Language:Protocol Buffer 1.7%Language:Shell 1.0%