Metadata-Version: 2.4
Name: cloudinstancecredentials
Version: 0.2.0
Summary: Command-line tools to set auth credentials on a public cloud instance
Home-page: https://github.com/SUSE-Enceladus/cloudinstancecredentials
Author: SUSE Public Cloud Team
Author-email: public-cloud-dev@susecloud.net
License: GPLv3+
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Natural Language :: English
Classifier: Environment :: Console
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Description-Content-Type: text/markdown
License-File: LICENSE
Provides-Extra: dev
Requires-Dist: pytest; extra == "dev"
Requires-Dist: flake8; extra == "dev"
Requires-Dist: bumpversion; extra == "dev"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: license
Dynamic: license-file
Dynamic: provides-extra
Dynamic: summary

# cloudinstancecredentials

Generally in Public Cloud environments one does not want to have applications with a Web UI start automatically without a pre-populated user an password. This utility extracts information from a running instance and sets the web server for the web based UI up to use http-basicauth for login purposes.

The implementation is modular such that it can easily be expanded to other cloud frameworks and web servers.

## Utilities

### set-http-basic-credentials

Sets credentials for http-basic authorization in NGINX web servers.

#### Usage

On a supported[*](lib/cloudinstancecredentials/) public cloud VM instance:
```
sudo set-http-basic-credentials
```

Alternatively, enable the one-shot service:
```
sudo systemctl enable set-http-basic-credentials.service
```

Any vhost config using this authorization should include the following config:
```
server {
    ...
    auth_basic	         'Authorization required';
    auth_basic_user_file /etc/nginx/cloudinstancecredentials;
    ...
}
```
