Difference between revisions of "Authorization code usecase 1"

From i2Rest
Jump to: navigation, search
(Authorization code flow dialog)
(Authorization code flow dialog)
Line 40: Line 40:
 
== Authorization code flow dialog ==
 
== Authorization code flow dialog ==
 
i2Rest Client will provide end user with link to follow.<br>  
 
i2Rest Client will provide end user with link to follow.<br>  
[[File:Authorization_code_usecase1-1.png|1000px]]  
+
[[File:Authorization_code_usecase1-1.png|1000px|style="padding: 5px"]]  
 
<br>
 
<br>
 
After entering the Bridge user code end user will be redirect to authorization server.<br>
 
After entering the Bridge user code end user will be redirect to authorization server.<br>

Revision as of 15:10, 3 June 2020


Lets walk step by step through our example with getting the list of existing files on "i2restexample" user Google Drive.

Preparations

a) At the very beginning your application should be registered as a client (obtaining Device ID and Device Password) on Google (see details).
b) Create *SYSTEM Certificate Store and add Google.com SSL CA .
c) Register your i2Rest Client on your i2Rest Server as a client to enable "bridge mode" by setting up your i2Rest Server OAuth2 object.
d) Choose appropriate API method and scope on Google Drive Api page.

i2Rest comand composing

So what we need is:

to set request method and API endpoint to values we prepared on Preparations step (d);
I2REST COMMAND(*Get)                                       
       URL('https://www.googleapis.com/drive/v3/files') 
to specify properly configured on Preparations step (b) Certificate_Store to be able to work with SSL secured resource;
       DCMCLIENT(MYCLIENT)  
to specify obtained on Preparations step (a) and step (d) requisites;
       AUTHID('677815701888-aj80fure8f1laqd3dqvpqtmlandni5an
              .apps.googleusercontent.com')                   
       AUTHPW(tI2ezmVGioGwrGk9K2O23Mv5)                       
       AUTHURL('https://accounts.google.com/o/oauth2/v2/auth  
               ')                                             
       TOKENURL('https://oauth2.googleapis.com/token')        
       SCOPE('https://www.googleapis.com/auth/drive.file')  
to specify Bridge mode parameters obtained on Preparations step (c);
       AUTHMETHOD(*BRIDGE)  
       BRIDGEURL('https://api.i2rest.com:22089/a2d')          
       BRIDGEID(OAUTH21)                                      
       BRIDGEPW(oauth21) 

Authorization code flow dialog

i2Rest Client will provide end user with link to follow.
style="padding: 5px"
After entering the Bridge user code end user will be redirect to authorization server.
Authorization code usecase1-5.png
End user suggested to perform user authentication.
Authorization code usecase1-2.png
End user suggested to grant access to requested scope.
Authorization code usecase1-3.png
Now end user is redirected back to i2Rest bridge.
Authorization code usecase1-4.png

Checking the result!

Here is server response:
Server response (status 200, shown 214 bytes of 214):   
    {                                                       
     "kind": "drive#fileList",                              
     "incompleteSearch": false,                             
     "files": [                                             
      {                                                     
       "kind": "drive#file",                                
       "id": "1b-aQhiVeXgAQZVYeftIpuBo2GCvKQzHz",           
       "name": "i2rest.doc",                                
       "mimeType": "application/msword"                     
      }                                                     
     ]                                                      
    }                                                       


Back to i2Rest Client