core-jgi/org.adempiere.base-feature
Carlos Ruiz 5f2d71347d
IDEMPIERE-3101 implement OAuth2 for mail (gmail, outlook and other mail system) (#593)
* IDEMPIERE-3101 implement OAuth2 for mail (gmail, outlook and other mail system)

WIP - initial version working on zk with google apps mail using OAuth2 Authorization Code Flow and Client Type = web application

* Enable imap reading with OAuth2 in RequestEMailProcessor
* Simplify the code - tested plain and OAuth2 can use the same methods
* Add +SCOPE parameter to AddAuthorizationForm according to IDEMPIERE-4713
* Rename the form AddAuthorizationMailForm to AddAuthorizationForm as is now more generic

* IDEMPIERE-4713
* Rename migration scripts to make it newer than IDEMPIERE-4713
* Add list of scopes attended by a credential
* Change form to accept other scopes, if no scope parameter is passed, then a list is shown, change the menu to fix the EMail scope
* Add MAuthorizationAccount.refreshAndGetAccessToken
* Add translation for messages

* make call generic oauth, avoid using specific google API

* Tests with microsoft as OAuth2 provider
* Add record for microsoft as provider
* Increase size of tokens
* Define mandatory and secure columns
* Update refresh token when it comes on the refresh call
* Revoke endpoint is optional

* Change the approach to a process instead of a form (WIP)
* Implement servlet to process the OAuth2 code

* Solve context suggestion from hengsin

* Implement the form in an automatic popup approach for running on zkwebui

* i18n - add translations for all messages that are shown to user
* on the form opted for click to avoid the problem with browsers forbidding popups
* clean spaces and tabs on line endings

* avoid logging and copy of the secure columns

* Fix problem reported by @d-ruiz about hidden NPE when SMTP Authentication is disabled

* Add writing to AD_PInstance_Para and AD_PInstance_Log the results of processing the servlet
* Control to avoid using the same authorization URL twice
2021-03-06 11:49:39 +01:00
..
.settings IDEMPIERE-3531:auto update by eclipse when import project to new workspace by choose import exists maven project 2018-02-18 23:41:09 +07:00
.project IDEMPIERE-3531:add maven tycho configuration 2018-02-10 16:42:06 +07:00
build.properties
feature.xml IDEMPIERE-4604 Release 8.2 2020-12-20 10:15:20 +01:00
model.generator.launch IDEMPIERE-3101 implement OAuth2 for mail (gmail, outlook and other mail system) (#593) 2021-03-06 11:49:39 +01:00
packinfolder.app.launch IDEMPIERE-3101 implement OAuth2 for mail (gmail, outlook and other mail system) (#593) 2021-03-06 11:49:39 +01:00
pom.xml IDEMPIERE-4604 Release 8.2 2020-12-20 10:15:20 +01:00
sign.database.build.launch IDEMPIERE-3101 implement OAuth2 for mail (gmail, outlook and other mail system) (#593) 2021-03-06 11:49:39 +01:00
synchronize-terminology.app.launch IDEMPIERE-3101 implement OAuth2 for mail (gmail, outlook and other mail system) (#593) 2021-03-06 11:49:39 +01:00
translation.app.launch IDEMPIERE-3101 implement OAuth2 for mail (gmail, outlook and other mail system) (#593) 2021-03-06 11:49:39 +01:00