Merge pull request #176 from philips/add-connector
Improve docs for the getting started guide for oauth2_proxy
This commit is contained in:
commit
36803d16dd
2 changed files with 62 additions and 41 deletions
|
@ -1,49 +1,60 @@
|
||||||
Running Examples
|
# Running Examples
|
||||||
===
|
|
||||||
|
|
||||||
The quickest way to start experimenting with dex is to run a single dex-worker
|
|
||||||
locally, with an in-process database, and then interacting with it using the
|
|
||||||
example programs in this directory.
|
|
||||||
|
|
||||||
|
The quickest way to start experimenting with dex is to run a single dex-worker locally, with an in-process database, and then interact with it using the example programs in this directory.
|
||||||
|
|
||||||
## Build Everything and Start dex-worker
|
## Build Everything and Start dex-worker
|
||||||
|
|
||||||
This section is required for both the Example App and the Example CLI.
|
First, build the example webapp client and example CLI client.
|
||||||
|
|
||||||
1. Build everything:
|
```
|
||||||
```
|
./build
|
||||||
./build
|
```
|
||||||
```
|
|
||||||
|
|
||||||
1. Copy the various example configurations.
|
Now copy the example configurations into place to get dex configured.
|
||||||
```
|
You can customize these later but the defaults should work fine.
|
||||||
cp static/fixtures/connectors.json.sample static/fixtures/connectors.json
|
|
||||||
cp static/fixtures/users.json.sample static/fixtures/users.json
|
|
||||||
cp static/fixtures/emailer.json.sample static/fixtures/emailer.json
|
|
||||||
```
|
|
||||||
|
|
||||||
1. Run dex_worker in local mode.
|
```
|
||||||
```
|
cp static/fixtures/connectors.json.sample static/fixtures/connectors.json
|
||||||
./bin/dex-worker --no-db &
|
cp static/fixtures/users.json.sample static/fixtures/users.json
|
||||||
```
|
cp static/fixtures/emailer.json.sample static/fixtures/emailer.json
|
||||||
|
```
|
||||||
|
|
||||||
|
With `dex-worker` configuration in place we can start dex in local mode.
|
||||||
|
|
||||||
## Example App
|
```
|
||||||
|
./bin/dex-worker --no-db &
|
||||||
|
```
|
||||||
|
|
||||||
1. Build and run example app webserver, pointing the discovery URL to local Dex, and
|
## Example Webapp Client
|
||||||
|
|
||||||
|
Build and run the example app webserver by pointing the discovery URL to local Dex, and
|
||||||
supplying the client information from `./static/fixtures/clients.json` into the flags.
|
supplying the client information from `./static/fixtures/clients.json` into the flags.
|
||||||
```
|
|
||||||
./bin/example-app --client-id=XXX --client-secret=secrete --discovery=http://127.0.0.1:5556 &
|
|
||||||
```
|
|
||||||
|
|
||||||
1. Navigate browser to `http://localhost:5555` and click "login" link
|
```
|
||||||
1. Click "Login with Local"
|
./bin/example-app \
|
||||||
1. Enter in sample credentials from `static/fixtures/connectors.json`:
|
--client-id=example-app \
|
||||||
```
|
--client-secret=example-app-secret \
|
||||||
email: elroy77@example.com
|
--discovery=http://127.0.0.1:5556
|
||||||
password: bones
|
```
|
||||||
```
|
|
||||||
1. Observe user information in example app.
|
|
||||||
|
|
||||||
## Example CLI
|
Visit [http://localhost:5555](http://localhost:5555) in your browser and click "login" link.
|
||||||
*TODO*
|
Next click "Login with Local" and enter the sample credentials from `static/fixtures/connectors.json`:
|
||||||
|
|
||||||
|
```
|
||||||
|
email: elroy77@example.com
|
||||||
|
password: bones
|
||||||
|
```
|
||||||
|
|
||||||
|
The example app will dump out details of the JWT issued by Dex which means that authentication was successful and the application has authenticated you as a valid user.
|
||||||
|
You can play with adding additional users in connectors.json and users.json.
|
||||||
|
|
||||||
|
## Example CLI Client
|
||||||
|
|
||||||
|
The example CLI will start, connect to the Dex instance to gather discovery information, listen on `localhost:8000`, and then acquire a client credentials JWT and print it out.
|
||||||
|
|
||||||
|
```
|
||||||
|
./bin/example-cli \
|
||||||
|
--client-id example-cli
|
||||||
|
--client-secret examplie-cli-secret
|
||||||
|
--discovery=http://127.0.0.1:5556
|
||||||
|
```
|
||||||
|
|
|
@ -5,8 +5,18 @@
|
||||||
"redirectURLs": ["http://127.0.0.1:5555/callback"]
|
"redirectURLs": ["http://127.0.0.1:5555/callback"]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "core-update",
|
"id": "example-app",
|
||||||
"secret": "secrete",
|
"secret": "example-app-secret",
|
||||||
|
"redirectURLs": ["http://127.0.0.1:5555/callback"]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "example-cli",
|
||||||
|
"secret": "example-cli-secret",
|
||||||
"redirectURLs": ["http://127.0.0.1:8000/admin/v1/oauth/login"]
|
"redirectURLs": ["http://127.0.0.1:8000/admin/v1/oauth/login"]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "oauth2_proxy",
|
||||||
|
"secret": "proxy",
|
||||||
|
"redirectURLs": ["http://127.0.0.1:4180/oauth2/callback"]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
Reference in a new issue