This section covers the customer owner, adding and removing users.
Project Koku uses terminology in certain ways to describe key concepts. These are definitions of the term based on how they work within the context of the Koku application.
Customer - An organization or entity that uses Project Koku for cost management analysis.
Source - A cloud resource provider or cloud data provider. An entity that produces cost and resource usage data. This could be a public or private cloud.
User - A user of the Project Koku application. Users map to an individual person or login with access to customer data.
Authentication for Koku is expected to be managed by an external
service. Authentication information is expected to be provided to Koku
through an HTTP header - HTTP_X_RH_IDENTITY
.
For development purposes, if the environment variable DEVELOPMENT=True
is set, Koku will authenticate using its
dev_middleware,
which bypasses authentication and authorizes any request as valid.
This is an example for making authenticated HTTP requests to the Koku
API when DEVELOPMENT=True
. :
#!/bin/bash
HOST='localhost'
IDENTITY=$(echo '{"identity":{"account_number":"10001","user":{"username":"test_customer","email":"[email protected]"}}}' | base64 | tr -d '\n')
curl -g -H "HTTP_X_RH_IDENTITY: ${IDENTITY}" 'http://'${HOST}'/api/v1/reports/inventory/aws/instance-type/'