Add details about OAuth to splinterd man page
@@ -150,6 +150,18 @@ OPTIONS
: (Required) Sets a new ID for the node. The node ID must be unique across the
network (for all Splinter nodes that could participate on the same circuit).
+`--oauth-client-id OAUTH-CLIENT-ID`
+: Specifies the client ID for the OAuth provider used by the REST API.
+
+`--oauth-client-secret OAUTH-CLIENT-SECRET`
+: Specifies the client secret for the OAuth provider used by the REST API.
+
+`--oauth-provider OAUTH-PROVIDER`
+: Specifies the OAuth provider used by the REST API. Accepted values: `github`.
+
+`--oauth-redirect-url OAUTH-REDIRECT-URL`
+: Redirect URL for the OAuth provider used by the REST API.
+
`--peers PEER-URL` `[,...]`
: Specifies one or more Splinter nodes that `splinterd` will automatically
connect to when it starts. The *PEER-URL* argument must specify another node's
@@ -295,6 +307,38 @@ Note: If an individual environment variable is set, it overrides the value in
is set to `/tmp/testing` and `SPLINTER_STATE_DIR` is set to
`/tmp/splinter/state`, the Splinter state directory is `/tmp/splinter/state`.
+AUTHORIZATION CONFIGURATION
+===========================
+
+Currently, OAuth is the only authorization type supported by splinterd. The REST
+API requires that an authorization provider is configured, so OAuth must be setup
+in order to start the REST API.
+
+The Splinter daemon provides 4 options for configuring OAuth for the REST API:
+
+* `oauth-provider` for specifying the OAuth provider that splinterd will use to
+ get the client's identity. Currently, only `github` is supported.
+
+* `oauth-client-id` for specifying the client ID, which is a public identifier
+ for an app that's registered with the chosen OAuth provider.
+
+* `oauth-client-secret` for specifying the client secret, which is a private
+ value known only to the OAuth provider and the application.
+
+* `oauth-redirect-url` for specifying the endpoint that the OAuth provider will
+ redirect to when completing authentication.
+
+All 4 of the above arguments must be provided. If any argument is missing,
+splinterd will fail to start.
+
+The client ID, client secret, and redirect URL must all be registered for an app
+with the chosen provider. The client ID and secret are generated by the provider.
+The redirect URL should be the `/oauth/callback` endpoint of splinterd's REST
+API; this address will depend on the visible address of the REST API. For
+example, if the splinterd REST API is available to applications at
+`https://www.example.com/`, the redirect URL would be
+`https://www.example.com/oauth/callback`.
+
ENVIRONMENT VARIABLES
=====================
@@ -326,6 +370,21 @@ ENVIRONMENT VARIABLES
and instead logs an error. This environment variable is intended for
development and testing.
+**OAUTH_CLIENT_ID**
+: Specifies the client ID for the OAuth provider used by the REST API. See
+ `--oauth-client-id`.
+
+**OAUTH_CLIENT_SECRET**
+: Specifies the client secret for the OAuth provider used by the REST API. See
+ `--oauth-client-secret`.
+
+**OAUTH_PROVIDER**
+: Specifies the OAuth provider used by the REST API. See `--oauth-provider`.
+
+**OAUTH_REDIRECT_URL**
+: Redirect URL for the OAuth provider used by the REST API. See
+ `--oauth-redirect-url`.
+
FILES
=====
