# Authentication / Authorisation (AA)

In the versions prior to 1.5 NagVis didn't care much about the authentication and authorisation. In most environments NagVis used the basic authentication provided by Nagios. This was a side effect of that NagVis was placed in the `nagios/share` directory.

In NagVis 1.5 the default installation directory has been moved to an own base directory. With this step a new Authentication and Authorisation mechanism has been created. The main focus of this concept is to be modular and flexible.

## Modularity

The AA has been splitted up in three module bases: LogonDialogs, Authentication, Authorisation. All modules can be changed without affecting the others.

## Default Modules

By default NagVis uses a mixed logon information request mode for logging on users and a SQLite database for storing users, passwords and permissions. Therefor NagVis uses the LogonMixed module which uses LogonEnv and LogonDialog in the background. The LogonMixed module tries to gather the logon user name from the webserver environment. This means NagVis trusts the webserver authentication if one is used. And if there is none it displays the LogonDialog for interactive login using the HTML logon dialog.

## Other Modules

On delivery there are only the above authentication and authorisation modules available. Having such a modular structure it should be easy to create LDAP, MySQL, file based authentication and authorisation mechanism.