1
0
Fork 0

updated documentation

This commit is contained in:
Frank Celler 2012-07-15 17:31:59 +02:00
parent a02faec3a3
commit f7e1388e93
6 changed files with 63 additions and 3 deletions

View File

@ -78,6 +78,7 @@ WIKI = \
Compiling \ Compiling \
DbaManual \ DbaManual \
DbaManualBasics \ DbaManualBasics \
DbaManualAuthentication \
DefineAction \ DefineAction \
ExamplesSetup \ ExamplesSetup \
FirstStepsArangoDB \ FirstStepsArangoDB \

View File

@ -1209,6 +1209,7 @@ WIKI = \
Compiling \ Compiling \
DbaManual \ DbaManual \
DbaManualBasics \ DbaManualBasics \
DbaManualAuthentication \
DefineAction \ DefineAction \
ExamplesSetup \ ExamplesSetup \
FirstStepsArangoDB \ FirstStepsArangoDB \

View File

@ -47,6 +47,7 @@
/// <ul> /// <ul>
/// <li>@ref CommandLineArangoHttpPort "server.http-port"</li> /// <li>@ref CommandLineArangoHttpPort "server.http-port"</li>
/// <li>@ref CommandLineArangoAdminPort "server.admin-port"</li> /// <li>@ref CommandLineArangoAdminPort "server.admin-port"</li>
/// <li>@ref CommandLineArangoHttpAuth "server.http-auth"</li>
/// <li>@ref CommandLineArangoDisableAdminInterface "server.disable-admin-interface"</li> /// <li>@ref CommandLineArangoDisableAdminInterface "server.disable-admin-interface"</li>
/// <li>@ref CommandLineArangoDirectory "database.directory"</li> /// <li>@ref CommandLineArangoDirectory "database.directory"</li>
/// <li>@ref CommandLineArangoMaximalJournalSize "database.maximal-journal-size"</li> /// <li>@ref CommandLineArangoMaximalJournalSize "database.maximal-journal-size"</li>
@ -164,6 +165,9 @@
/// @anchor CommandLineArangoAdminPort /// @anchor CommandLineArangoAdminPort
/// @copydetails triagens::arango::ArangoServer::_adminPort /// @copydetails triagens::arango::ArangoServer::_adminPort
/// ///
/// @anchor CommandLineArangoHttpAuth
/// @copydetails triagens::arango::ArangoServer::_httpAuth
///
/// @anchor CommandLineArangoDisableAdminInterface /// @anchor CommandLineArangoDisableAdminInterface
/// @CMDOPT{--disable-admin-interface} /// @CMDOPT{--disable-admin-interface}
/// ///

View File

@ -46,6 +46,7 @@
/// @copydetails ShellCollectionTOC /// @copydetails ShellCollectionTOC
/// @copydetails ShellIndexTOC /// @copydetails ShellIndexTOC
/// @copydetails IndexesTOC /// @copydetails IndexesTOC
/// @copydetails DbaManualAuthenticationTOC
/// @endif /// @endif
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
@ -95,6 +96,59 @@
/// @copydetails JS_PropertiesVocbaseCol /// @copydetails JS_PropertiesVocbaseCol
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
/// @page DbaManualAuthenticationTOC
///
/// <ul>
/// <li>@ref DbaManualAuthentication
/// <ul>
/// <li>@ref DbaManualAuthenticationCommandLine</li>
/// </ul>
/// </li>
/// </ul>
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
/// @page DbaManualAuthentication Authentication and Authorisation
///
/// @EMBEDTOC{DbaManualAuthenticationTOC}
///
/// ArangoDB only provides a very simple authentication interface and
/// no authorisation. We plan to add authorisation features in later
/// releases, which will allow the administrator to restrict access to
/// collections and queries to certain users, given them either read
/// or write access.
///
/// Currently, you can only secure the access to the HTTP client and
/// admin port in a all-or-nothing fashion.
/// The collection @LIT{_users} contains all user and the SHA256 of
/// their passwords. A user can be active or inactive. A typical document
/// of this collection is
///
/// @verbinclude user-document
///
/// If the server is started using the option
///
/// @LIT{--server.http-auth yes}
///
/// then access via HTTP requires a user name and password using "basic
/// authentication". The user must exists in the @LIT{_users}
/// collection and must be active.
///
/// In order to generate an entry, you can use the supplied shell script
///
/// @LIT{/usr/sbin/arango-password \<username> [\<password>]}
///
/// Note that you must stop the @LIT{arangod} server before executing this
/// script.
///
/// @section DbaManualAuthenticationCommandLine Command-Line Options for the Authentication and Authorisation
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
///
/// @anchor CommandLineArangoHttpAuth
/// @copydetails triagens::arango::ArangoServer::_httpAuth
////////////////////////////////////////////////////////////////////////////////
// Local Variables: // Local Variables:
// mode: c++ // mode: c++
// mode: outline-minor // mode: outline-minor

View File

@ -304,8 +304,8 @@ namespace triagens {
/// ///
/// @CMDOPT{--server.http-auth @CA{flag}} /// @CMDOPT{--server.http-auth @CA{flag}}
/// ///
/// If @CA{flag} is @LIT{yes}, then the HTTP access is secures with a basic /// If @CA{flag} is @LIT{yes}, then the HTTP access is secured with "HTTP Basic
/// authentication. The user and sha256 of the password are storted in a /// Authentication". The user and sha256 of the password are stored in a
/// collection @LIT{_users}. /// collection @LIT{_users}.
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////

View File

@ -48,7 +48,7 @@ namespace triagens {
// constructors and destructors // constructors and destructors
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
HttpHandlerFactory::HttpHandlerFactory (string const& authenticationRealm, HttpHandlerFactory::HttpHandlerFactory (std::string const& authenticationRealm,
auth_fptr checkAuthentication) auth_fptr checkAuthentication)
: _numberActiveHandlers(0), : _numberActiveHandlers(0),
_authenticationRealm(authenticationRealm), _authenticationRealm(authenticationRealm),