Merge pull request #1 from lkrych/py-server

Py server
This commit is contained in:
Yann Esposito 2020-03-03 21:50:59 +01:00 committed by GitHub
commit eb5a22658f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 39 additions and 0 deletions

View file

@ -3,3 +3,17 @@ Test OAuth2 Authorization Code Grant process
Code is quite minimal done in js with no lib.
## Running the Demo
If you don't want to use sws, you can use python 3.
``` python
python server.py
```
## Utility scripts
Modify `scripts/get_refresh_token` to retrieve a refresh/access token from the CTR API.
Modify `scripts/test_access_token` to use your access token to query the CTR API.

9
scripts/get_refresh_token.sh Executable file
View file

@ -0,0 +1,9 @@
curl -X POST https://visibility.amp.cisco.com/iroh/oauth2/token \
--header "Accept: application/json" \
--header "Content-Type: application/x-www-form-urlencoded; charset=UTF-8" \
--header "User-Agent: ob-http" \
--header "Authorization: Basic <BASE64 ENCODING OF CLIENT_ID:CLIENT_SECRET >" \
-d "code=<CODE JWT RETURNED FROM CTR>" \
-d "redirect_uri=https://localhost:4443/callback" \
-d "scope=admin" \
-d "grant_type=authorization_code"

5
scripts/test_access_token.sh Executable file
View file

@ -0,0 +1,5 @@
curl -G https://visibility.amp.cisco.com/iroh/profile/whoami \
--header "Accept: application/json" \
--header "application/json; charset=UTF-8" \
--header "User-Agent: ob-http" \
--header "Authorization: Bearer <YOUR_ACCESS_TOKEN_HERE>" \

11
server.py Normal file
View file

@ -0,0 +1,11 @@
import http.server, ssl
server_address = ('localhost', 4443)
httpd = http.server.HTTPServer(server_address, http.server.SimpleHTTPRequestHandler)
httpd.socket = ssl.wrap_socket(httpd.socket,
server_side=True,
certfile='cert.pem',
keyfile='nopasskey.pem',
ssl_version=ssl.PROTOCOL_TLS)
print("serving demo on port 4443")
httpd.serve_forever()