kazana-account
Kazana core module for all things accounts and authentication
Install
git clone git@github.com:eHealthAfrica/kazana-account.git
cd kazana-account
npm install
## Usage
The service uses CouchDB's authentication system behind the curtain,
so every user needs a document in the _users
database.
Special requirements:
roles
: must to contain at least on of the kazana-*
roles, see belowroles
: must contain the user id, in the form: "kazana-id:<userId here>"
createdAt
: ISO timestamp for the time the user account has been createdfullname
: must contain the name of the user
An example _users
doc for reference (without the password properties):
{
"_id": "org.couchdb.user:gregor@martynus.net",
"_rev": "3-16dd17eaf12eb656ea2d1882ee7018ad",
"name": "gregor@martynus.net",
"roles": [
"kazana-id:abcdef",
"kazana-admin"
],
"type": "user",
"createdAt": "2015-04-15T00:00:00.000Z",
"fullname": "Gregor Martynus"
}
User Access Levels (roles)
Access Level | role | description |
---|
Data Provider | kazana-data-provider | User can import new data reports |
---|
Reviewer | kazana-data-reviewer | User can see validation errors and can amend existing data reports |
---|
Analyst | kazana-analyst | User has access to integrated data |
---|
Admin | kazana-admin | User can configure systems, manage accounts, etc |
---|
Routes
GET /api/session
POST /api/session
DELETE /api/session
Test
npm test
Credit
Brought to you by eHealth Africa
— good tech for hard places.
License
Apache-2.0