1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
# Wallet schema for ACL scheme.
#
# Written by Jon Robertson <jonrober@stanford.edu>
# Copyright 2012-2013
# The Board of Trustees of the Leland Stanford Junior University
#
# SPDX-License-Identifier: MIT
package Wallet::Schema::Result::AclScheme;
use strict;
use warnings;
use base 'DBIx::Class::Core';
our $VERSION = '1.05';
__PACKAGE__->load_components (qw//);
=for stopwords
ACL verifier APIs
=head1 NAME
Wallet::Schema::Result::AclScheme - Wallet schema for ACL scheme
=head1 DESCRIPTION
This is a normalization table used to constrain the values in other
tables. It contains the types of ACL schemes that Wallet will
recognize, and the modules that govern each of those schemes.
By default it contains the following entries:
insert into acl_schemes (as_name, as_class)
values ('krb5', 'Wallet::ACL::Krb5');
insert into acl_schemes (as_name, as_class)
values ('krb5-regex', 'Wallet::ACL::Krb5::Regex');
insert into acl_schemes (as_name, as_class)
values ('ldap-attr', 'Wallet::ACL::LDAP::Attribute');
insert into acl_schemes (as_name, as_class)
values ('ldap-attr-root', 'Wallet::ACL::LDAP::Attribute::Root');
insert into acl_schemes (as_name, as_class)
values ('nested', 'Wallet::ACL::Nested');
insert into acl_schemes (as_name, as_class)
values ('netdb', 'Wallet::ACL::NetDB');
insert into acl_schemes (as_name, as_class)
values ('netdb-root', 'Wallet::ACL::NetDB::Root');
If you have extended the wallet to support additional ACL schemes, you
will want to add additional rows to this table mapping those schemes
to Perl classes that implement the ACL verifier APIs.
=cut
__PACKAGE__->table("acl_schemes");
=head1 ACCESSORS
=head2 as_name
data_type: 'varchar'
is_nullable: 0
size: 32
=head2 as_class
data_type: 'varchar'
is_nullable: 1
size: 64
=cut
__PACKAGE__->add_columns(
"as_name",
{ data_type => "varchar", is_nullable => 0, size => 32 },
"as_class",
{ data_type => "varchar", is_nullable => 1, size => 64 },
);
__PACKAGE__->set_primary_key("as_name");
#__PACKAGE__->resultset->populate ([
# [ qw/as_name as_class/ ],
# [ 'krb5', 'Wallet::ACL::Krb5' ],
# [ 'krb5-regex', 'Wallet::ACL::Krb5::Regex' ],
# [ 'ldap-attr', 'Wallet::ACL::LDAP::Attribute' ],
# [ 'netdb', 'Wallet::ACL::NetDB' ],
# [ 'netdb-root', 'Wallet::ACL::NetDB::Root' ],
# ]);
1;
|