Sha256: d85e346bf2dc0bb7a8b2c5c64cb6a06eb0932b460aaf568b7de3e518e9a0f457

Contents?: true

Size: 896 Bytes

Versions: 154

Compression:

Stored size: 896 Bytes

Contents

module Ddr
  module Auth
    module Groups

      PUBLIC = Group.new "public", label: "Public" do |auth_context|
        true
      end
      
      REGISTERED = Group.new "registered", label: "Registered Users" do |auth_context|
        auth_context.authenticated?
      end
      
      DUKE_ALL = Group.new "duke.all", label: "Duke NetIDs" do |auth_context|
        auth_context.duke_agent?
      end

      # Return the list of all groups available for use in the repository,
      #   i.e., that can be used to assert access controls.
      # @return [Array<Group>] the groups
      def self.all
        DynamicGroups::ALL + Ddr::Auth.grouper_gateway.repository_groups
      end

      # @param auth_context [AuthContext]
      # @return [Array<Group>]
      def self.call(auth_context)
        DynamicGroups.call(auth_context) + RemoteGroups.call(auth_context)
      end

    end
  end
end

Version data entries

154 entries across 154 versions & 2 rubygems

Version Path
ddr-core-1.17.0 lib/ddr/auth/groups.rb
ddr-core-1.16.0 lib/ddr/auth/groups.rb
ddr-core-1.15.0 lib/ddr/auth/groups.rb
ddr-core-1.14.0 lib/ddr/auth/groups.rb
ddr-core-1.13.2 lib/ddr/auth/groups.rb
ddr-core-1.13.1 lib/ddr/auth/groups.rb
ddr-core-1.13.0 lib/ddr/auth/groups.rb
ddr-core-1.12.2 lib/ddr/auth/groups.rb
ddr-core-1.12.1 lib/ddr/auth/groups.rb
ddr-core-1.12.0 lib/ddr/auth/groups.rb
ddr-core-1.11.0 lib/ddr/auth/groups.rb
ddr-core-1.10.0 lib/ddr/auth/groups.rb
ddr-core-1.9.0 lib/ddr/auth/groups.rb
ddr-core-1.8.0 lib/ddr/auth/groups.rb
ddr-core-1.7.0 lib/ddr/auth/groups.rb
ddr-core-1.6.6 lib/ddr/auth/groups.rb
ddr-core-1.6.5 lib/ddr/auth/groups.rb
ddr-core-1.6.4 lib/ddr/auth/groups.rb
ddr-core-1.6.3 lib/ddr/auth/groups.rb
ddr-core-1.6.2 lib/ddr/auth/groups.rb