awesome-repositories.com
Blog
MCP
awesome-repositories.com

Descoperă cele mai bune repository-uri open source cu căutare AI.

ExploreazăCăutări recomandateAlternative open-sourceSoftware self-hostedBlogHartă site
ProiectDespreCum realizăm clasamentulPresăServer MCP
LegalConfidențialitateTermeni
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
elabs avatar

elabs/pundit

0
View on GitHub↗
8,509 stele·644 fork-uri·Ruby·MIT·11 vizualizări

Pundit

Pundit is a Ruby authorization framework that implements policy-based access control. It maps domain models to dedicated logic classes that determine whether a user is permitted to perform specific actions on data objects.

The framework utilizes plain Ruby objects to decouple authorization logic from the model. It includes mechanisms for data query scoping to filter record collections based on user permissions, as well as attribute-level permission control to restrict which specific model fields a user can modify.

The system provides tools for authorization coverage verification to ensure security checks are executed during a request. It also includes a descriptive testing suite for verifying that authorization rules correctly permit or forbid specific user actions.

Features

  • Authorization Policies - Implements a policy-based authorization system that maps domain models to dedicated logic classes for access control.
  • Query Scopes - Provides specialized scope classes to filter database record collections based on the requesting user's permissions.
  • Access Policies - Provides a system for mapping data objects to logic classes that define if a user is permitted to perform specific actions.
  • Policy-Based Access Control - Implements a system that maps domain models to logic classes to determine user permissions for specific actions.
  • Ruby Authorization Frameworks - Provides a complete Ruby-based framework for defining and enforcing access policies on data objects.
  • Record-Level Filtering - Implements security scopes to filter database record collections based on user permissions.
  • Authorization Testing - Provides a descriptive testing suite to verify that authorization policies correctly permit or forbid user actions.
  • Field-Level Access Controls - Restricts which specific model fields a user can update based on their assigned permission level and role.
  • Field-Level Update Restrictions - Provides validation logic to determine if a user is authorized to modify specific fields during update operations.
  • Field-Level Permissions - Provides a mechanism to restrict which specific model fields a user can update based on defined policy classes.
  • Authorization Check Tracking - Tracks whether a security check was performed during a web request to ensure no action bypasses authorization.
  • Authorization Coverage Auditing - Confirms security checks were executed during a request to prevent accidental data exposure.
  • Web Security Auditing - Ensures every request undergoes an authorization check to prevent accidental data exposure.
  • Plain Old Ruby Objects - Implements authorization logic using standard Ruby objects to keep security rules decoupled from the data models.
  • Ruby Frameworks and Tools - Authorization library for Ruby.
  • Authorization - Object-oriented authorization using standard Ruby classes.

Istoric stele

Graficul istoricului de stele pentru elabs/punditGraficul istoricului de stele pentru elabs/pundit

Căutare AI

Explorează mai multe repository-uri excelente

Descrie ce ai nevoie în limbaj simplu — AI-ul sortează mii de proiecte open source selectate în funcție de relevanță.

Start searching with AI

Alternative open-source pentru Pundit

Proiecte open-source similare, clasificate după numărul de funcționalități comune cu Pundit.
  • varvet/punditAvatar varvet

    varvet/pundit

    8,509Vezi pe GitHub↗

    Pundit is an authorization framework for Ruby applications that enforces permissions through plain Ruby policy objects. It maps controller actions to policy methods, automatically inferring which policy class and query method to call based on the action name, and raises a custom exception when access is denied. The framework distinguishes itself by using plain Ruby classes without external DSLs or configuration files, and by providing a development-time verification guard that raises an error if a controller action runs without an authorization call. It also supports namespace-based policy or

    Rubyruby
    Vezi pe GitHub↗8,509
  • cerbos/cerbosAvatar cerbos

    cerbos/cerbos

    4,460Vezi pe GitHub↗

    Cerbos is an open-source authorization service that provides a centralized, language-agnostic engine for managing access control. It functions as a policy-as-code platform, allowing teams to define, test, and distribute authorization rules using declarative YAML or JSON configurations. By decoupling access logic from application code, it enables consistent permission enforcement across diverse service stacks. The project distinguishes itself through its ability to translate high-level authorization policies into native database query filters. This capability allows applications to enforce sec

    Goaccess-controlauthorizationgo
    Vezi pe GitHub↗4,460
  • palkan/action_policyAvatar palkan

    palkan/action_policy

    1,557Vezi pe GitHub↗

    Action Policy is a Ruby authorization framework designed to manage user access and permissions by encapsulating security logic into dedicated policy classes. It provides a structured system for defining access rules that evaluate user actions against specific application resources, ensuring that security logic remains decoupled from the primary application code. The framework distinguishes itself through its ability to handle complex authorization requirements across diverse interfaces, including web controllers and various API formats. It supports dynamic permission evaluation by utilizing a

    Rubyauthorizationhacktoberfestrails
    Vezi pe GitHub↗1,557
  • stalniy/caslAvatar stalniy

    stalniy/casl

    6,952Vezi pe GitHub↗

    CASL is a JavaScript authorization library for defining and enforcing declarative access control rules across both frontend and backend environments. It provides an attribute-based access control system that manages permissions based on user roles and specific object properties. The library is designed for isomorphic access control, allowing a consistent set of permission rules to be shared between a server API and a client interface. It enables the serialization of permission sets as plain data objects to maintain synchronization across these different layers. Its capabilities include trans

    TypeScript
    Vezi pe GitHub↗6,952
Vezi toate cele 30 alternative pentru Pundit→

Întrebări frecvente

Ce face elabs/pundit?

Pundit is a Ruby authorization framework that implements policy-based access control. It maps domain models to dedicated logic classes that determine whether a user is permitted to perform specific actions on data objects.

Care sunt principalele funcționalități ale elabs/pundit?

Principalele funcționalități ale elabs/pundit sunt: Authorization Policies, Query Scopes, Access Policies, Policy-Based Access Control, Ruby Authorization Frameworks, Record-Level Filtering, Authorization Testing, Field-Level Access Controls.

Care sunt câteva alternative open-source pentru elabs/pundit?

Alternativele open-source pentru elabs/pundit includ: varvet/pundit — Pundit is an authorization framework for Ruby applications that enforces permissions through plain Ruby policy… cerbos/cerbos — Cerbos is an open-source authorization service that provides a centralized, language-agnostic engine for managing… palkan/action_policy — Action Policy is a Ruby authorization framework designed to manage user access and permissions by encapsulating… stalniy/casl — CASL is a JavaScript authorization library for defining and enforcing declarative access control rules across both… casbin/casbin — Casbin is an authorization library that provides a model-based engine for enforcing access control across diverse… rmosolgo/graphql-ruby — GraphQL-Ruby is a Ruby library for building GraphQL APIs with a strongly typed schema and a dedicated query execution…