core-jgi/org.adempiere.base
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-4488 Remove .classpath from repository (#607) 2021-03-03 00:02:03 +01:00
META-INF IDEMPIERE-3101 implement OAuth2 for mail (gmail, outlook and other mail system) (#593) 2021-03-06 11:49:39 +01:00
OSGI-INF IDEMPIERE-4695 Add document factory base class backed by Map and Lambda functional object (#572) 2021-02-09 19:17:15 +01:00
schema
src IDEMPIERE-3101 implement OAuth2 for mail (gmail, outlook and other mail system) (#593) 2021-03-06 11:49:39 +01:00
.packaging
.project IDEMPIERE-4488 Remove .classpath from repository (#607) 2021-03-03 00:02:03 +01:00
build.properties IDEMPIERE-3101 implement OAuth2 for mail (gmail, outlook and other mail system) (#593) 2021-03-06 11:49:39 +01:00
documentation.bat
packaging-build.xml
plugin.xml
pom.xml IDEMPIERE-3101 implement OAuth2 for mail (gmail, outlook and other mail system) (#593) 2021-03-06 11:49:39 +01:00