<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head profile="http://internetalchemy.org/2003/02/profile"> <link rel="foaf" type="application/rdf+xml" title="FOAF" href="http://www.openlinksw.com/dataspace/uda/about.rdf" /> <link rel="schema.dc" href="http://purl.org/dc/elements/1.1/" /> <meta name="dc.title" content="Function: WebDAV Users & Groups administration - Virtuoso Functions Guide" /> <meta name="dc.subject" content="Function: WebDAV Users & Groups administration - Virtuoso Functions Guide" /> <meta name="dc.creator" content="OpenLink Software Documentation Team ; " /> <meta name="dc.copyright" content="OpenLink Software, 1999 - 2009" /> <link rel="top" href="index.html" title="OpenLink Virtuoso Universal Server: Documentation" /> <link rel="search" href="/doc/adv_search.vspx" title="Search OpenLink Virtuoso Universal Server: Documentation" /> <link rel="parent" href="functions.html" title="Chapter Contents" /> <link rel="prev" href="appendixa.html" title="Appendix" /> <link rel="next" href="functions.html#.html" title="" /> <link rel="shortcut icon" href="../images/misc/favicon.ico" type="image/x-icon" /> <link rel="stylesheet" type="text/css" href="doc.css" /> <link rel="stylesheet" type="text/css" href="/doc/translation.css" /> <title>Function: WebDAV Users & Groups administration - Virtuoso Functions Guide</title> <meta http-equiv="Content-Type" content="text/xhtml; charset=UTF-8" /> <meta name="author" content="OpenLink Software Documentation Team ; " /> <meta name="copyright" content="OpenLink Software, 1999 - 2009" /> <meta name="keywords" content="" /> <meta name="GENERATOR" content="OpenLink XSLT Team" /> </head> <body> <div id="header"> <a name="fn_dav_api_user" /> <img src="../images/misc/logo.jpg" alt="" /> <h1>22. Virtuoso Functions Guide - WebDAV Users & Groups administration</h1> </div> <div id="navbartop"> <div> <a class="link" href="functions.html">Chapter Contents</a> | <a class="link" href="fn_dav_api_search.html" title="DAV search functions">Prev</a> | <a class="link" href="fn_dav_exp.html" title="DAV_EXP">Next</a> </div> </div> <div id="currenttoc"> <form method="post" action="/doc/adv_search.vspx"> <div class="search">Keyword Search: <br /> <input type="text" name="q" /> <input type="submit" name="go" value="Go" /> </div> </form> <div> <a href="http://www.openlinksw.com/">www.openlinksw.com</a> </div> <div> <a href="http://docs.openlinksw.com/">docs.openlinksw.com</a> </div> <br /> <div> <a href="index.html">Book Home</a> </div> <br /> <div> <a href="contents.html">Contents</a> </div> <div> <a href="preface.html">Preface</a> </div> <br /> <div> <a class="selected" href="functions.html">Virtuoso Functions Guide</a> </div> <br /> <div> <a href="functions.html#admin">Administration</a> </div> <div> <a href="functions.html#aggr">Aggregate Functions</a> </div> <div> <a href="functions.html#array">Array Manipulation</a> </div> <div> <a href="functions.html#bpel">BPEL APIs</a> </div> <div> <a href="functions.html#backup">Backup</a> </div> <div> <a href="functions.html#compression">Compression</a> </div> <div> <a href="functions.html#cursors">Cursor</a> </div> <div> <a href="functions.html#time">Date & Time Manipulation</a> </div> <div> <a href="functions.html#debug">Debug</a> </div> <div> <a href="functions.html#dict">Dictionary Manipulation</a> </div> <div> <a href="functions.html#encoding">Encoding & Decoding</a> </div> <div> <a href="functions.html#file">File Manipulation</a> </div> <div> <a href="functions.html#ft">Free Text</a> </div> <div> <a href="functions.html#hash">Hashing / Cryptographic</a> </div> <div> <a href="functions.html#ldap">LDAP</a> </div> <div> <a href="functions.html#localization">Locale</a> </div> <div> <a href="functions.html#mail">Mail</a> </div> <div> <a href="functions.html#misc">Miscellaneous</a> </div> <div> <a href="functions.html#number">Number</a> </div> <div> <a href="functions.html#phrz">Phrases</a> </div> <div> <a href="functions.html#rdf">RDF data</a> </div> <div> <a href="functions.html#rmt">Remote SQL Data Source</a> </div> <div> <a href="functions.html#repl">Replication</a> </div> <div> <a href="functions.html#soap">SOAP</a> </div> <div> <a href="functions.html#sql">SQL</a> </div> <div> <a href="functions.html#string">String</a> </div> <div> <a href="functions.html#txn">Transaction</a> </div> <div> <a href="functions.html#type">Type Mapping</a> </div> <div> <a href="functions.html#uddi">UDDI</a> </div> <div> <a href="functions.html#udt">User Defined Types & The CLR</a> </div> <div> <a href="functions.html#vad">VAD</a> </div> <div> <a href="functions.html#jvmpl">Virtuoso Java PL API</a> </div> <div> <a href="functions.html#bif">Virtuoso Server Extension Interface (VSEI)</a> </div> <div> <a class="selected" href="functions.html#ws">Web & Internet</a> </div> <div class="selected"> <div> <a href="fn_dav_api_add.html">dav add & update fun...</a> </div> <div> <a href="fn_dav_api_lock.html">dav lock manipulatio...</a> </div> <div> <a href="fn_dav_api_change.html">dav manipulation fun...</a> </div> <div> <a href="fn_dav_api_search.html">dav search functions</a> </div> <div> <a href="fn_dav_exp.html">dav_exp</a> </div> <div> <a href="fn_lfs_exp.html">lfs_exp</a> </div> <div> <a href="fn_serv_queue_top.html">serv_queue_top</a> </div> <div> <a href="fn_urlrewrite_create_regex_rule.html">urlrewrite_create_re...</a> </div> <div> <a href="fn_USER_KEY_LOAD.html">user_key_load</a> </div> <div> <a href="fn_vhost_define.html">vhost_define</a> </div> <div> <a href="fn_vhost_remove.html">vhost_remove</a> </div> <div> <a class="selected" href="fn_dav_api_user.html">webdav users & group...</a> </div> <div> <a href="fn_client_attr.html">client_attr</a> </div> <div> <a href="fn_connection_get.html">connection_get</a> </div> <div> <a href="fn_connection_id.html">connection_id</a> </div> <div> <a href="fn_connection_is_dirty.html">connection_is_dirty</a> </div> <div> <a href="fn_connection_set.html">connection_set</a> </div> <div> <a href="fn_connection_vars.html">connection_vars</a> </div> <div> <a href="fn_connection_vars_set.html">connection_vars_set</a> </div> <div> <a href="fn_dbname.html">dbname</a> </div> <div> <a href="fn_ftp_get.html">ftp_get</a> </div> <div> <a href="fn_ftp_ls.html">ftp_ls</a> </div> <div> <a href="fn_ftp_put.html">ftp_put</a> </div> <div> <a href="fn_get_certificate_info.html">get_certificate_info</a> </div> <div> <a href="fn_get_keyword.html">get_keyword</a> </div> <div> <a href="fn_get_keyword_ucase.html">get_keyword_ucase</a> </div> <div> <a href="fn_http.html">http</a> </div> <div> <a href="fn_http_acl_get.html">http_acl_get</a> </div> <div> <a href="fn_http_acl_remove.html">http_acl_remove</a> </div> <div> <a href="fn_http_acl_set.html">http_acl_set</a> </div> <div> <a href="fn_http_body_read.html">http_body_read</a> </div> <div> <a href="fn_http_client.html">http_client</a> </div> <div> <a href="fn_http_client_ext.html">http_client_ext</a> </div> <div> <a href="fn_http_client_ip.html">http_client_ip</a> </div> <div> <a href="fn_http_debug_log.html">http_debug_log</a> </div> <div> <a href="fn_http_enable_gz.html">http_enable_gz</a> </div> <div> <a href="fn_http_file.html">http_file</a> </div> <div> <a href="fn_http_flush.html">http_flush</a> </div> <div> <a href="fn_http_get.html">http_get</a> </div> <div> <a href="fn_http_header.html">http_header</a> </div> <div> <a href="fn_http_header_get.html">http_header_get</a> </div> <div> <a href="fn_http_kill.html">http_kill</a> </div> <div> <a href="fn_http_listen_host.html">http_listen_host</a> </div> <div> <a href="fn_http_lock.html">http_lock</a> </div> <div> <a href="fn_http_map_get.html">http_map_get</a> </div> <div> <a href="fn_http_map_table.html">http_map_table</a> </div> <div> <a href="fn_http_param.html">http_param</a> </div> <div> <a href="fn_http_path.html">http_path</a> </div> <div> <a href="fn_http_pending_req.html">http_pending_req</a> </div> <div> <a href="fn_http_physical_path.html">http_physical_path</a> </div> <div> <a href="fn_http_proxy.html">http_proxy</a> </div> <div> <a href="fn_http_request_get.html">http_request_get</a> </div> <div> <a href="fn_http_request_header.html">http_request_header</a> </div> <div> <a href="fn_http_request_status.html">http_request_status</a> </div> <div> <a href="fn_http_rewrite.html">http_rewrite</a> </div> <div> <a href="fn_http_root.html">http_root</a> </div> <div> <a href="fn_http_unlock.html">http_unlock</a> </div> <div> <a href="fn_http_url.html">http_url</a> </div> <div> <a href="fn_http_value.html">http_value</a> </div> <div> <a href="fn_http_xslt.html">http_xslt</a> </div> <div> <a href="fn_json_parse.html">json_parse</a> </div> <div> <a href="fn_ses_connect.html">ses_connect</a> </div> <div> <a href="fn_ses_disconnect.html">ses_disconnect</a> </div> <div> <a href="fn_ses_read_line.html">ses_read_line</a> </div> <div> <a href="fn_ses_write.html">ses_write</a> </div> <div> <a href="fn_tcpip_gethostbyaddr.html">tcpip_gethostbyaddr</a> </div> <div> <a href="fn_tcpip_gethostbyname.html">tcpip_gethostbyname</a> </div> <div> <a href="fn_vsp_calculate_digest.html">vsp_calculate_digest</a> </div> <div> <a href="fn_wsdl_import_udt.html">wsdl_import_udt</a> </div> </div> <div> <a href="functions.html#xml">XML</a> </div> <div> <a href="functions.html#XPATH">XPATH & XQUERY</a> </div> <br /> <div> <a href="functionidx.html">Functions Index</a> </div> <br /> </div> <div id="text"> <h2>WebDAV Users & Groups administration</h2> <div class="refpurpose">Functions for manipulating an existing DAV collection or resource</div> <div class="funcsynopsis"> <span class="funcdef">integer <span class="function">DAV_ADD_GROUP</span> </span> (<span class="paramdef">in <span class="parameter">gid</span> varchar</span>, <span class="paramdef">in <span class="parameter">auth_uid</span> varchar</span>, <span class="paramdef">in <span class="parameter">auth_pwd</span> varchar</span>); </div> <div class="funcsynopsis"> <span class="funcdef">integer <span class="function">DAV_ADD_USER</span> </span> (<span class="paramdef">in <span class="parameter">uid</span> varchar</span>, <span class="paramdef">in <span class="parameter">pwd</span> varchar</span>, <span class="paramdef">in <span class="parameter">gid</span> varchar</span>, <span class="paramdef">in <span class="parameter">permis</span> varchar</span>, <span class="paramdef">in <span class="parameter">disable</span> integer</span>, <span class="paramdef">in <span class="parameter">home</span> varchar</span>, <span class="paramdef">in <span class="parameter">full_name</span> varchar</span>, <span class="paramdef">in <span class="parameter">email</span> varchar</span>, <span class="paramdef">in <span class="parameter">uid</span> varchar</span>, <span class="paramdef">in <span class="parameter">auth_uid</span> varchar</span>, <span class="paramdef">in <span class="parameter">auth_pwd</span> varchar</span>); </div> <div class="funcsynopsis"> <span class="funcdef">varchar <span class="function">DAV_DELETE_GROUP</span> </span> (<span class="paramdef">in <span class="parameter">gid</span> varchar</span>, <span class="paramdef">in <span class="parameter">auth_uid</span> varchar</span>, <span class="paramdef">in <span class="parameter">auth_pwd</span> varchar</span>); </div> <div class="funcsynopsis"> <span class="funcdef">varchar <span class="function">DAV_DELETE_USER</span> </span> (<span class="paramdef">in <span class="parameter">uid</span> varchar</span>, <span class="paramdef">in <span class="parameter">auth_uid</span> varchar</span>, <span class="paramdef">in <span class="parameter">auth_pwd</span> varchar</span>); </div> <div class="funcsynopsis"> <span class="funcdef">varchar <span class="function">DAV_HOME_DIR</span> </span> (<span class="paramdef">in <span class="parameter">uid</span> varchar</span>); </div> <div class="refsect1"> <div class="refsect1title">Description</div> <p>DAV_ADD_USER() create a new WebDAV user with login name 'uid' and password 'pwd'. User will belong to the group named 'gid'. 'perms' are the default user permissions for creation of new resources. Additional user info supplied is 'home' directory, 'full name' and 'e-mail'.</p> <p>DAV_DELETE_USER() remove the existing webDAV user named 'uid'.</p> <p>DAV_HOME_DIR() returns the home folder for specified WebDAV user named 'uid'.</p> <p>DAV_ADD_GROUP() create a new webDAV group named 'gid'.</p> <p>DAV_DELETE_GROUP() remove the existing webDAV group named 'gid'.</p> </div> <div class="refsect1"> <div class="refsect1title">Parameters</div> <div class="refsect2"> <span class="refsect2title">uid – </span> User identifier. Default is 'dav'. </div> <div class="refsect2"> <span class="refsect2title">pwd – </span> Password </div> <div class="refsect2"> <span class="refsect2title">gid – </span> Group identifier. Default is 'dav'. </div> <div class="refsect2"> <span class="refsect2title">perms – </span> Permissions </div> <div class="refsect2"> <span class="refsect2title">disable – </span> Disable flag </div> <div class="refsect2"> <span class="refsect2title">home – </span> The User's home directory path </div> <div class="refsect2"> <span class="refsect2title">full_name – </span> Full name of user </div> <div class="refsect2"> <span class="refsect2title">email – </span> User's email </div> <div class="refsect2"> <span class="refsect2title">auth_uid – </span> Administration user capable of performing the operation. Default is null. </div> <div class="refsect2"> <span class="refsect2title">auth_pwd – </span> Password of Administrator. Default is null. </div> </div> <div class="refsect1title">Errors</div> <table class="data"> <tr> <th class="data">Error Code</th> <th class="data">Description</th> </tr> <tr> <td class="data"> <a name="err>=0" /> <span class="errorcode">>=0</span> </td> <td class="data"> <span class="errorname">success</span> </td> </tr> <tr> <td class="data"> <a name="err-1" /> <span class="errorcode">-1</span> </td> <td class="data"> <span class="errorname">The path (target of operation) is not valid</span> </td> </tr> <tr> <td class="data"> <a name="err-2" /> <span class="errorcode">-2</span> </td> <td class="data"> <span class="errorname">The destination (path) is not valid</span> </td> </tr> <tr> <td class="data"> <a name="err-3" /> <span class="errorcode">-3</span> </td> <td class="data"> <span class="errorname">Overwrite flag is not set and destination exists</span> </td> </tr> <tr> <td class="data"> <a name="err-4" /> <span class="errorcode">-4</span> </td> <td class="data"> <span class="errorname">The target is resource, but source is collection (in copy move operations)</span> </td> </tr> <tr> <td class="data"> <a name="err-5" /> <span class="errorcode">-5</span> </td> <td class="data"> <span class="errorname">Permissions are not valid</span> </td> </tr> <tr> <td class="data"> <a name="err-6" /> <span class="errorcode">-6</span> </td> <td class="data"> <span class="errorname">uid is not valid</span> </td> </tr> <tr> <td class="data"> <a name="err-7" /> <span class="errorcode">-7</span> </td> <td class="data"> <span class="errorname">gid is not valid</span> </td> </tr> <tr> <td class="data"> <a name="err-8" /> <span class="errorcode">-8</span> </td> <td class="data"> <span class="errorname">Target is locked</span> </td> </tr> <tr> <td class="data"> <a name="err-9" /> <span class="errorcode">-9</span> </td> <td class="data"> <span class="errorname">Destination is locked</span> </td> </tr> <tr> <td class="data"> <a name="err-10" /> <span class="errorcode">-10</span> </td> <td class="data"> <span class="errorname">Property name is reserved (protected or private)</span> </td> </tr> <tr> <td class="data"> <a name="err-11" /> <span class="errorcode">-11</span> </td> <td class="data"> <span class="errorname">Property does not exists</span> </td> </tr> <tr> <td class="data"> <a name="err-12" /> <span class="errorcode">-12</span> </td> <td class="data"> <span class="errorname">Authentication failed</span> </td> </tr> <tr> <td class="data"> <a name="err-13" /> <span class="errorcode">-13</span> </td> <td class="data"> <span class="errorname">Operation is forbidden (the authenticated user do not have a permissions for the action)</span> </td> </tr> <tr> <td class="data"> <a name="err-14" /> <span class="errorcode">-14</span> </td> <td class="data"> <span class="errorname">the target type is not valid</span> </td> </tr> <tr> <td class="data"> <a name="err-15" /> <span class="errorcode">-15</span> </td> <td class="data"> <span class="errorname">The umask is not valid</span> </td> </tr> <tr> <td class="data"> <a name="err-16" /> <span class="errorcode">-16</span> </td> <td class="data"> <span class="errorname">The property already exists</span> </td> </tr> <tr> <td class="data"> <a name="err-17" /> <span class="errorcode">-17</span> </td> <td class="data"> <span class="errorname">Invalid property value</span> </td> </tr> <tr> <td class="data"> <a name="err-18" /> <span class="errorcode">-18</span> </td> <td class="data"> <span class="errorname">no such user</span> </td> </tr> <tr> <td class="data"> <a name="err-19" /> <span class="errorcode">-19</span> </td> <td class="data"> <span class="errorname">no home directory</span> </td> </tr> </table> <br /> <p /> <div class="refsect1"> <div class="refsect1title">Examples</div> <a name="ex_dav_api_user_1" /> <div class="example"> <div class="exampletitle">WebDAV users operations</div> <p>The example will create a WebDAV user named 'davuser' belongs to the group 'davgroup'. No home directory supplied. The user account is enabled after operaion.</p> <div> <pre class="screen"> SQL> DB.DBA.DAV_ADD_GROUP ('davgroup', 'dav', 'dav'); SQL> DB.DBA.DAV_ADD_USER ('davuser', 'secret', 'davgroup', '110100000', 0, NULL, 'Test User Account', 'nobody@foo.bar', 'dav', 'dav'); </pre> </div> </div> </div> <div class="refsect1"> <div class="refsect1title">See Also</div> <p> <a href="fn_dav_api_add.html">DAV content add/update/delete functions</a> </p> <p> <a href="fn_dav_api_change.html">DAV content manipulation functions</a> </p> <p> <a href="fn_dav_api_lock.html">DAV lock manipulation functions</a> </p> <p> <a href="fn_dav_api_search.html">DAV search functions</a> </p> </div> </div> <div id="footer"> <div>Copyright© 1999 - 2009 OpenLink Software All rights reserved.</div> <div id="validation"> <a href="http://validator.w3.org/check/referer"> <img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31" width="88" /> </a> <a href="http://jigsaw.w3.org/css-validator/"> <img src="http://jigsaw.w3.org/css-validator/images/vcss" alt="Valid CSS!" height="31" width="88" /> </a> </div> </div> </body> </html>