File: cvm-sqlite.html

package info (click to toggle)
cvm 0.97-0.1
  • links: PTS
  • area: main
  • in suites: bullseye, buster, sid
  • size: 1,036 kB
  • sloc: ansic: 4,065; sh: 2,758; makefile: 235; sql: 15
file content (96 lines) | stat: -rw-r--r-- 2,271 bytes parent folder | download | duplicates (4)
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
92
93
94
95
96
<html>
<body>

<h2><a href="http://untroubled.org/cvm/cvm.html">CVM</a></h2>
<h2><a href="http://untroubled.org/cvm/sql.html">CVM SQL Framework</a></h2>

<h1>The cvm-sqlite Module</h1>

<h2>Synopsis:</h2> <p>SQLite module</p>

<h2>Credentials:</h2>

<ol>
<li>Pass phrase
</ol>

<h2>Description:</h2>

<p>This module queries an
<a href="http://www.sqlite.org/">SQLite</a>
database for credential validation.
</p>

<h2>Configuration Variables:</h2>

<p>The following environmental variables are required in the
execution environment of <tt>cvm-sqlite</tt>:
</p>

<dl>
<dt><tt>$CVM_SQLITE_DB</tt></dt>
<dd>The full path to the credential database file.</dd>

<dt><tt>$CVM_SQLITE_QUERY</tt></dt>
<dd>The SQL query statement used to submit for credential validation.</dd>

<dt><tt>$CVM_SQLITE_PWCMP</tt></dt>
<dd>The <a
href="http://untroubled.org/pwcmp/pwcmp.html">password comparison module</a> to use.
Set to one of two values:
<ul>
<li>'crypt', for passwords stored encrypted</li>
<li>'plain', for passwords stored unencrypted</li>
</ul></dd>

</dl>

<h2>Sample Schema</h2>

<p>The following <tt>CREATE TABLE</tt> statement is shown as an example
for initializing an SQLite database for use with this CVM:</p>

<pre>
<tt>
CREATE TABLE accounts (
  username      TEXT NOT NULL,  -- required
  domain        TEXT NOT NULL DEFAULT '',
  password      TEXT NOT NULL,  -- required
  userid        TEXT NOT NULL,  -- required
  groupid       TEXT NOT NULL,  -- required
  realname      TEXT,           -- opt
  directory     TEXT NOT NULL,  -- required
  shell         TEXT,           -- opt
  groupname     TEXT,           -- opt
  sys_username  TEXT,           -- opt
  sys_directory TEXT,           -- opt
  mailbox_path  TEXT,           -- opt
  UNIQUE (username, domain)
);
</tt>
</pre>

<h2>Sample Query</h2>

<p>The following example shows <tt>CVM_SQLITE_QUERY</tt>
defined with a query statement for use with the above schema:</p>

<pre>
<tt>
CVM_SQLITE_QUERY='
  SELECT
    -- required:
    password, username, userid, groupid, directory,
    -- optional gecos:
    realname, shell,
    -- optional other:
    groupname, domain, sys_username, sys_directory, mailbox_path
  FROM accounts
  WHERE username=$account
  AND   domain=$domain '
</tt>
</pre>


</body>
</html>