.\" Copyright (c) 2003-2012 .\" Distributed Systems Software. All rights reserved. .\" See the file LICENSE for redistribution information. .\" $Id: copyright-nr 2564 2012-03-02 00:17:08Z brachman $ '\" t .\" Title: dacs_vfs .\" Author: [see the "AUTHOR" section] .\" Generator: DocBook XSL Stylesheets v1.79.1 .\" Date: 02/19/2019 .\" Manual: DACS Web Services Manual .\" Source: DACS 1.4.40 .\" Language: English .\" .TH "DACS_VFS" "8" "02/19/2019" "DACS 1.4.40" "DACS Web Services Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" dacs_vfs \- access objects through the \fBDACS\fR virtual filestore .SH "SYNOPSIS" .HP \w'\fBdacs_vfs\fR\ 'u \fBdacs_vfs\fR [\fI\m[blue]\fBdacsoptions\fR\m[]\&\s-2\u[1]\d\s+2\fR] .SH "DESCRIPTION" .PP This program is part of the \fBDACS\fR suite\&. .PP The \fBdacs_vfs\fR web service is an interface to the \fBDACS\fR virtual filestore\&. It provides a way to examine, change, and delete items independently of how and where they are stored\&. .PP This program is also available as a \fBDACS\fR utility, \m[blue]\fBdacsvfs(1)\fR\m[]\&\s-2\u[2]\d\s+2\&. .if n \{\ .sp .\} .RS 4 .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBSecurity\fR .ps -1 .br .PP Only the \fBDACS\fR administrator should be able to successfully run this program; therefore, access to it is totally denied by the default rules as a security precaution\&. .sp .5v .RE .SH "OPTIONS" .SS "Web Service Arguments" .PP In addition to the \m[blue]\fBstandard CGI arguments\fR\m[]\&\s-2\u[3]\d\s+2, \fBdacs_vfs\fR requires the following CGI arguments: .PP \fIITEM_TYPE\fR .RS 4 This is the \fBDACS\fR item type, as configured in dacs\&.conf (\m[blue]\fBdacs\&.conf(5)\fR\m[]\&\s-2\u[4]\d\s+2), to which the request is to be applied\&. As a special case, if the value of this argument is the word "enabled", a list of enabled storage methods is displayed\&. .RE .PP \fIREQUEST\fR .RS 4 The value of this argument is the name of an operation followed by zero or more arguments\&. The syntax is identical to that of \m[blue]\fBdacsvfs(1)\fR\m[]\&\s-2\u[2]\d\s+2, except that the edit, update, and help operations are unavailable\&. For the put operation, the value to store is taken from the \fIVALUE\fR argument\&. .RE .PP \fIVALUE\fR .RS 4 The object to use for the put and load operations\&. .RE .PP \fIFIELD_SEP\fR .RS 4 The field separator character to use for the load and dump operations\&. .RE .SH "EXAMPLES" .PP The following examples assume that the web service requests are granted\&. .PP This request will return the revocation list: .sp .if n \{\ .RS 4 .\} .nf https://example\&.com/cgi\-bin/dacs/dacs_vfs?REQUEST=get&ITEM_TYPE=revocations .fi .if n \{\ .RE .\} .PP Assuming the jurisdiction is configured appropriately, the following request will return the roles associated with DEMO::EXAMPLE:jones: .sp .if n \{\ .RS 4 .\} .nf https://demo\&.example\&.com/cgi\-bin/dacs/dacs_vfs?REQUEST=get+jones&ITEM_TYPE=roles .fi .if n \{\ .RE .\} .PP If the jurisdiction is configured with the directives: .sp .if n \{\ .RS 4 .\} .nf LOG_FILE "${Conf::DACS_HOME}/logs/dacs_log\-" \&. strftime("%d\-%b\-%y") VFS "[logfile]dacs\-fs:${Conf::DACS_HOME}/logs/dacs_log\-" \&. strftime("%d\-%b\-%y") .fi .if n \{\ .RE .\} .sp then the following request will return the contents of the jurisdiction\*(Aqs \fBDACS\fR log file: .sp .if n \{\ .RS 4 .\} .nf https://demo\&.example\&.com/cgi\-bin/dacs/dacs_vfs?REQUEST=get&ITEM_TYPE=logfile .fi .if n \{\ .RE .\} .sp .if n \{\ .sp .\} .RS 4 .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 \fBSecurity\fR .ps -1 .br .PP The logfile item type is not something predefined by \fBDACS\fR; new (not predefined) item types can be created at will and that is what was done for this example\&. Since logfiles can potentially include sensitive information, as can other resources used by \fBDACS\fR, it should be obvious why access to this web service should be very carefully managed\&. .sp .5v .RE .SH "DIAGNOSTICS" .PP The program exits 0 if everything was fine, 1 if an error occurred\&. If an error occurs during processing, this web service will return an HTTP Status of 400, followed by a blank line which is optionally followed by a descriptive error message\&. .SH "BUGS" .PP Only the text/plain output format is implemented\&. .SH "SEE ALSO" .PP \m[blue]\fBdacsvfs(1)\fR\m[]\&\s-2\u[2]\d\s+2, \m[blue]\fBdacs\&.conf(5)\fR\m[]\&\s-2\u[5]\d\s+2 .SH "AUTHOR" .PP Distributed Systems Software (\m[blue]\fBwww\&.dss\&.ca\fR\m[]\&\s-2\u[6]\d\s+2) .SH "COPYING" .PP Copyright \(co 2003\-2012 Distributed Systems Software\&. See the \m[blue]\fBLICENSE\fR\m[]\&\s-2\u[7]\d\s+2 file that accompanies the distribution for licensing information\&. .SH "NOTES" .IP " 1." 4 dacsoptions .RS 4 \%http://dacs.dss.ca/man/dacs.1.html#dacsoptions .RE .IP " 2." 4 dacsvfs(1) .RS 4 \%http://dacs.dss.ca/man/dacsvfs.1.html .RE .IP " 3." 4 standard CGI arguments .RS 4 \%http://dacs.dss.ca/man/dacs.services.8.html#standard_cgi_args .RE .IP " 4." 4 dacs.conf(5) .RS 4 \%http://dacs.dss.ca/man/dacs.conf.5.html#VFS .RE .IP " 5." 4 dacs.conf(5) .RS 4 \%http://dacs.dss.ca/man/dacs.conf.5.html .RE .IP " 6." 4 www.dss.ca .RS 4 \%http://www.dss.ca .RE .IP " 7." 4 LICENSE .RS 4 \%http://dacs.dss.ca/man/../misc/LICENSE .RE