https://github.com/dictybase/modware-identity
dictyBase API server to manage authorization from third party providers.
https://github.com/dictybase/modware-identity
golang grpc
Last synced: 8 months ago
JSON representation
dictyBase API server to manage authorization from third party providers.
- Host: GitHub
- URL: https://github.com/dictybase/modware-identity
- Owner: dictyBase
- License: bsd-2-clause
- Created: 2018-03-25T15:09:26.000Z (about 8 years ago)
- Default Branch: develop
- Last Pushed: 2023-01-21T17:02:04.000Z (about 3 years ago)
- Last Synced: 2025-07-22T15:48:45.278Z (8 months ago)
- Topics: golang, grpc
- Language: Go
- Size: 216 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# modware-identity
[](#contributors-)
[](LICENSE)

[](https://codecov.io/gh/dictyBase/modware-identity)
[](https://codeclimate.com/github/dictyBase/modware-identity/maintainability)

[](https://projectreporter.nih.gov/project_info_description.cfm?aid=10024726&icde=0)
[dictyBase](http://dictybase.org) **API** server to manage identity authorization
from third party providers (ORCID, Google, LinkedIn). The API server supports both gRPC
and HTTP/JSON protocol for data exchange.
## API
#### HTTP/JSON
It's [here](https://dictybase.github.io/dictybase-api), make sure you use the **identity** content from the dropdown on the top right.
#### gRPC
The protocol buffer definitions and service apis are documented
[here](https://github.com/dictyBase/dictybaseapis/tree/master/dictybase/identity).
## Usage
```
NAME:
modware-identity - cli for modware-identity microservice
USAGE:
main [global options] command [command options] [arguments...]
VERSION:
1.0.0
COMMANDS:
start-server starts the modware-identity microservice with HTTP and grpc backends
start-identity-reply start the reply messaging(nats) backend for identity microservice
create-identity creates a new identity for an user
help, h Shows a list of commands or help for one command
GLOBAL OPTIONS:
--log-format value format of the logging out, either of json or text. (default: "json")
--log-level value log level for the application (default: "error")
--help, -h show help
--version, -v print the version
```
## Subcommands
```
NAME:
main start-server - starts the modware-identity microservice with HTTP and grpc backends
USAGE:
main start-server [command options] [arguments...]
OPTIONS:
--arangodb-pass value, --pass value arangodb database password [$ARANGODB_PASS]
--arangodb-database value, --db value arangodb database name [$ARANGODB_DATABASE]
--arangodb-user value, --user value arangodb database user [$ARANGODB_USER]
--arangodb-host value, --host value arangodb database host (default: "arangodb") [$ARANGODB_SERVICE_HOST]
--arangodb-port value arangodb database port (default: "8529") [$ARANGODB_SERVICE_PORT]
--identity-api-http-host value public hostname serving the http api, by default the default port will be appended to http://localhost [$IDENTITY_API_HTTP_HOST]
--is-secure flag for secured or unsecured arangodb endpoint
--nats-host value nats messaging server host [$NATS_SERVICE_HOST]
--nats-port value nats messaging server port [$NATS_SERVICE_PORT]
--port value tcp port at which the server will be available (default: "9560")
```
```
NAME:
main start-identity-reply - start the reply messaging(nats) backend for identity microservice
USAGE:
main start-identity-reply [command options] [arguments...]
OPTIONS:
--identity-grpc-host value grpc host address for identity service [$IDENTITY_API_SERVICE_HOST]
--identity-grpc-port value grpc port for identity service [$IDENTITY_API_SERVICE_PORT]
--messaging-host value host address for messaging server [$NATS_SERVICE_HOST]
--messaging-port value port for messaging server [$NATS_SERVICE_PORT]
```
```
NAME:
main create-identity - creates a new identity for an user
USAGE:
main create-identity [command options] [arguments...]
OPTIONS:
--identity-grpc-host value grpc host address for identity service [$IDENTITY_API_SERVICE_HOST]
--identity-grpc-port value grpc port for identity service [$IDENTITY_API_SERVICE_PORT]
--user-grpc-host value host address for user service [$USER_API_SERVICE_HOST]
--user-grpc-port value port for user service [$USER_API_SERVICE_PORT]
--identifier value Third party unique identifier
--provider value Name of provider who provides the identifier
--email value An user email(not the identity provider's email) that will be tied to the identifier
```
# Misc badges












[](https://codeclimate.com/github/dictyBase/modware-identity/code)
## Contributors ✨
Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):

Eric Hartline
🐛 💻 🖋 📖 🚧

Siddhartha Basu
🐛 💻 🖋 📖 🚧
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!