• This repository has been archived on 04/Aug/2021
  • Stars
    star
    143
  • Rank 257,007 (Top 6 %)
  • Language
    Go
  • Created about 7 years ago
  • Updated over 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

DynamoDB adapter for Casbin

DynamoDB Adapter

Migrated to https://github.coupang.net/coupang/couplay-dynacasbin

DynamoDB Adapter is the DynamoDB adapter for Casbin. With this library, Casbin can load policy from DynamoDB or save policy to it.

Installation

go get github.com/hooqtv/dynacasbin

Simple Example

package main

import (
	"github.com/casbin/casbin"
	"github.com/hooqtv/dynacasbin"
	"github.com/aws/aws-sdk-go/aws"
)

func main() {
	// Initialize a DynamoDB adapter and use it in a Casbin enforcer:
	config := &aws.Config{} // Your AWS configuration
	ds := "casbin-rules"
	a := dynacasbin.NewAdapter(config, ds) // Your aws configuration and data source.
	e := casbin.NewEnforcer("examples/rbac_model.conf", a)

	// Load the policy from DB.
	e.LoadPolicy()

	// Check the permission.
	e.Enforce("alice", "data1", "read")

	// Modify the policy.
	// e.AddPolicy(...)
	// e.RemovePolicy(...)

	// Save the policy back to DB.
	e.SavePolicy()
}

Getting Help