-
Notifications
You must be signed in to change notification settings - Fork 0
aseemsethi/oauth2
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
A typical execution of the oauth2 code:
[asethi@localhost oauth2]$ ./oauth2
Oauth2 in Action..........
User goes to a web site, and clicks on 'Login via Google'
This sends a GET request to Google requesting for an auth code
Auth Code params:
Enter client id (clientId):
Enter client secret(clientSecret):
Please go to this url in browser:
https://accounts.google.com/o/oauth2/v2/auth?response_type=code&client_id=681355735342-echlhpgf36phisuk13kcosd4em5q4ois.apps.googleusercontent.com&redirect_uri=http://localhost/oauth2callback&scope=https://www.googleapis.com/auth/userinfo.email&state=INIT
The response will be of the type -
http://localhost/oauth2callback?state=INIT&code=4/Zkx5zJ_Y72oY5k4G9pBfLOMwsAojaCsYlcyftq-y3FA#
From the above Response, pick up the AuthToken and put it here: 4/Zkx5zJ_Y72oY5k4G9pBfLOMwsAojaCsYlcyftq-y3FA#
redirectUrl: http://localhost/oauth2callback
Making an Access Token request: grant_type=authorization_code&client_id=681355735342-echlhpgf36phisuk13kcosd4em5q4ois.apps.googleusercontent.com&client_secret=xxxxx&code=4/Zkx5zJ_Y72oY5k4G9pBfLOMwsAojaCsYlcyftq-y3FA#&redirect_uri=http://localhost/oauth2callback
{
"access_token": "ya29.Glz_BN4dxcGEVMLnlnzD5VYs7DVOB7lP-b6zyV82zf7ALQja6Jb9utxgz7B62LNMFd29C-WNshwoU6molbD66Cr-jN466pKPJu8TVB9OroGQD8_Q_O3bTR-XnPm7zg",
"token_type": "Bearer",
"expires_in": 3594,
"id_token": "eyJhbGciOiJSUzI1NiIsImtpZCI6ImE3MTE0OTBiNWJlODVhODU1YWJhYjQ4M2FiODhkYjc4YjVhYTRmYmEifQ.eyJhenAiOiI2ODEzNTU3MzUzNDItZWNobGhwZ2YzNnBoaXN1azEza2Nvc2Q0ZW01cTRvaXMuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJhdWQiOiI2ODEzNTU3MzUzNDItZWNobGhwZ2YzNnBoaXN1azEza2Nvc2Q0ZW01cTRvaXMuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJzdWIiOiIxMDE2MDU2MDU5MTczNDc4NDI0NTIiLCJlbWFpbCI6ImFzZWVtc2V0aGk3MEBnbWFpbC5jb20iLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiYXRfaGFzaCI6IlFPRm9Wd2NKRWpZUDF4SnNLR3YxTGciLCJpc3MiOiJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20iLCJpYXQiOjE1MTAyMDg2NTgsImV4cCI6MTUxMDIxMjI1OH0.fY2T-yuZvisECg5IOJsRWXaMpmdWXLUPe2D5aiajohFtzOKKZqZkeLinOhkNhXXlWRpQPQQrSojprbSUdYVAG8Gj4OzdE1nLx8JXebJiiUO3P6JFIQ1WJ5bkDlGw2F5jpK5QMSEN0UzaBYV4AkLwKKwbFTN-I8Or6kXjyTrAF2KgzZy_tkghSAjrGvM1oPUIUaL1NnnHrhl6rOz4afaYKQoLUDn6xqPW1K4cOweW-EBE8DeLvdxqE_uM7XcdSvFTqIurg6ydgNZowdArrH1KKCx1G8WfosJExW6pj-3azyvqNs5qtMN1XjtvZV1C997G_QoOG_MKDA-xhrH-ND02lw"
}
2J��g
Access Token Found: access_token": "ya29.Glz_BN4dxcGEVMLnlnzD5VYs7DVOB7lP-b6zyV82zf7ALQja6Jb9utxgz7B62LNMFd29C-WNshwoU6molbD66Cr-jN466pKPJu8TVB9OroGQD8_Q_O3bTR-XnPm7zg",
"token_type": "Bearer",
"expires_in": 3594,
"id_token": "eyJhbGciOiJSUzI1NiIsImtpZCI6ImE3MTE0OTBiNWJlODVhODU1YWJhYjQ4M2FiODhkYjc4YjVhYTRmYmEifQ.eyJhenAiOiI2ODEzNTU3MzUzNDItZWNobGhwZ2YzNnBoaXN1azEza2Nvc2Q0ZW01cTRvaXMuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJhdWQiOiI2ODEzNTU3MzUzNDItZWNobGhwZ2YzNnBoaXN1azEza2Nvc2Q0ZW01cTRvaXMuYXBwcy5nb29nbGV1c2VyY29udGVudC5jb20iLCJzdWIiOiIxMDE2MDU2MDU5MTczNDc4NDI0NTIiLCJlbWFpbCI6ImFzZWVtc2V0aGk3MEBnbWFpbC5jb20iLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiYXRfaGFzaCI6IlFPRm9Wd2NKRWpZUDF4SnNLR3YxTGciLCJpc3MiOiJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20iLCJpYXQiOjE1MTAyMDg2NTgsImV4cCI6MTUxMDIxMjI1OH0.fY2T-yuZvisECg5IOJsRWXaMpmdWXLUPe2D5aiajohFtzOKKZqZkeLinOhkNhXXlWRpQPQQrSojprbSUdYVAG8Gj4OzdE1nLx8JXebJiiUO3P6JFIQ1WJ5bkDlGw2F5jpK5QMSEN0UzaBYV4AkLwKKwbFTN-I8Or6kXjyTrAF2KgzZy_tkghSAjrGvM1oPUIUaL1NnnHrhl6rOz4afaYKQoLUDn6xqPW1K4cOweW-EBE8DeLvdxqE_uM7XcdSvFTqIurg6ydgNZowdArrH1KKCx1G8WfosJExW6pj-3azyvqNs5qtMN1XjtvZV1C997G_QoOG_MKDA-xhrH-ND02lw"
}
2J��g
Access Token Len:131:ya29.Glz_BN4dxcGEVMLnlnzD5VYs7DVOB7lP-b6zyV82zf7ALQja6Jb9utxgz7B62LNMFd29C-WNshwoU6molbD66Cr-jN466pKPJu8TVB9OroGQD8_Q_O3bTR-XnPm7zg
Sending oauth2 Resource Request with Auth Hdr:Authorization: Bearer ya29.Glz_BN4dxcGEVMLnlnzD5VYs7DVOB7lP-b6zyV82zf7ALQja6Jb9utxgz7B62LNMFd29C-WNshwoU6molbD66Cr-jN466pKPJu8TVB9OroGQD8_Q_O3bTR-XnPm7zg
Resource Response: {
"id": "101605605917347842452",
"email": "aseemsethi70@gmail.com",
"verified_email": true,
"name": "aseem sethi",
"given_name": "aseem",
"family_name": "sethi",
"link": "https://plus.google.com/101605605917347842452",
"picture": "https://lh4.googleusercontent.com/-QfvMhNsei1w/AAAAAAAAAAI/AAAAAAAAAAA/L-lUGpurJi0/photo.jpg",
"gender": "male"
}
sm
======================================
If we use the Auth token more than once, it works if it is done quickly enough, in 1-2 sec. Else, it gives the following error on reuse -
Making an Access Token request: grant_type=authorization_code&client_id=681355735342-echlhpgf36phisuk13kcosd4em5q4ois.apps.googleusercontent.com&client_secret=xxxx&code=4/zKNpjbh3wOa4piREvzoYoe1jUH8Jga0rh5ckKAIg5DQ#&redirect_uri=http://localhost/oauth2callback
{
"error": "invalid_grant",
"error_description": "Code was already redeemed."
}
About
Oauth2 Code in C
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published