i2Rest Client
Revision as of 21:29, 21 May 2020 by Alexei.baranov (talk | contribs)
i2Rest-client is a native IBM i tool for web communications via http/https requests. It was intended to extend IBM i interactive green screen and batch functionality with http client functions. And more than this, with provided by i2Rest Client OAuth 2.0 flows, your IBM i could have access to almost any OAuth enabled service.
Scenaries
Depending on your needs i2Rest Client can provide five request authorization scenarios:
- http request without authorization
- http/https requests of any type, JSON messages, stream file upload - everything is here. Please explore typical use cases
- Basic access authentication
- Same options as above, but with Basic access authentication. Some use cases for a quick start.
- OAuth2 Client Credentials flow
- Should be used to authenticate your IBM i application on remote resource to work with its own credentials rather than a user's credentials. More about i2Rest Client Flow. Some use cases - here.
- OAuth2 Device flow
- Provided by i2Rest Client OAuth 2.0 Device flow allows your IBM i application to deal with protected user data on remote resource, while end users are not forced to share their usernames, passwords, and other private information. General flow description can be found here, typical use cases - here.
- OAuth2 Access code flow using i2Rest bridge mode
- Original OAuth2 Access code flow isn't possible on IBM i due to it's limited output capabilities (IBM i can't display an authorization web page). Nevertheless i2Rest Client together with i2Rest Server bridge can do some trick to reproduce this authorization scenario with the same result for the end user. Please look under the hood of Access code flow using i2Rest bridge mode.
Implementation
You can interact with i2Rest Client with IBM i command, or by the mean of it's integration API.