Usage: 

* List User (JSON)
pwa_auth listuser 

* List User (Compact JSON, all on one line)
pwa_auth listuser --compact

* Short Listing (table)
pwa_auth listuser --short

* Create new user (leave out --password to be prompted interactively)
pwa_auth useradd --username hayashis --fullname "Soichi Hayashi" --email "hayashis@iu.edu" [--password "password4it"]

* modify a user
pwa_auth usermod --id 123 [--username foo] [--fullname "Foo Bar"] [--email "foo@bar.com"]

* Issue new JWT token
pwa_auth issue --scopes '{"sca": ["user"] }' --sub 'test_service' [--out test.jwt] [--key test.key]

pwa_auth issue --scopes '{"sca": ["user","admin"]}' --profile '{"fullname": "Soichi Hayashi (forever)", "email": "hayashis@iu.edu"}' --sub '1' --exp 1514764800

* Reset password (leave out --password to be prompted interactively)
pwa_auth setpass --username hayashis [or --id 123] --password "password#123"

* Modify (set/add/del) user scopes
pwa_auth modscope --username hayashis [or --id 123] --set '{"common": ["user","admin"]}'
pwa_auth modscope --username hayashis [or --id 123] --add '{"common": ["user","admin"]}'
pwa_auth modscope --username hayashis [or --id 123] --del '{"common": ["user","admin"]}'

* Modify (set/add/del) user roles within a given scope (--scope flag)
  - Syntax note: format is JSON array, i.e.: --set '["user","admin"]'
pwa_auth modrole --username hayashis [or --id 123] --setrole '["user","admin"]' --scope pwa
pwa_auth modrole --username hayashis --addrole '["admin"]' --scope pwa
pwa_auth modrole --username hayashis --delrole '["admin"]' --scope pwa

* remove user
pwa_auth userdel --username hayashis [or --id 123]

