You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@fineract.apache.org by na...@apache.org on 2017/11/27 12:11:26 UTC

[3/4] fineract git commit: Merge branch 'TwoFactor' into develop

Merge branch 'TwoFactor' into develop


Project: http://git-wip-us.apache.org/repos/asf/fineract/repo
Commit: http://git-wip-us.apache.org/repos/asf/fineract/commit/1a501287
Tree: http://git-wip-us.apache.org/repos/asf/fineract/tree/1a501287
Diff: http://git-wip-us.apache.org/repos/asf/fineract/diff/1a501287

Branch: refs/heads/develop
Commit: 1a50128757632e2128e7ae68a47ca2974f5a792e
Parents: 4dbecc7 1a966e8
Author: Nazeer Hussain Shaik <na...@confluxtechnologies.com>
Authored: Mon Nov 27 15:04:28 2017 +0530
Committer: Nazeer Hussain Shaik <na...@confluxtechnologies.com>
Committed: Mon Nov 27 15:04:28 2017 +0530

----------------------------------------------------------------------
 api-docs/apiLive.htm                            | 242 +++++++++++++++
 api-docs/apidocs.css                            |   4 +
 fineract-provider/build.gradle                  |  36 ++-
 .../basicauth/twofactor/application.properties  |  21 ++
 .../oauth/twofactor/application.properties      |  21 ++
 .../commands/service/CommandWrapperBuilder.java |  14 +
 .../domain/ConfigurationDomainService.java      |   9 +-
 .../domain/ConfigurationDomainServiceJpa.java   |  37 +++
 .../boot/AbstractApplicationConfiguration.java  |   3 +-
 .../core/boot/WebTwoFactorXmlConfiguration.java |  36 +++
 .../security/api/AuthenticationApiResource.java |  14 +-
 .../security/api/TwoFactorApiResource.java      | 132 ++++++++
 .../api/TwoFactorConfigurationApiResource.java  |  86 ++++++
 .../security/api/UserDetailsApiResource.java    |  17 +-
 .../InvalidateTFAccessTokenCommandHandler.java  | 108 +++++++
 .../UpdateTwoFactorConfigCommandHandler.java    |  60 ++++
 .../TwoFactorConfigurationConstants.java        |  59 ++++
 .../security/constants/TwoFactorConstants.java  |  30 ++
 .../security/data/AccessTokenData.java          |  47 +++
 .../data/AuthenticatedOauthUserData.java        |  12 +-
 .../security/data/AuthenticatedUserData.java    |  12 +-
 .../security/data/OTPDeliveryMethod.java        |  38 +++
 .../security/data/OTPMetadata.java              |  53 ++++
 .../security/data/OTPRequest.java               |  53 ++++
 .../data/TwoFactorConfigurationValidator.java   | 120 ++++++++
 .../security/domain/OTPRequestRepository.java   |  51 ++++
 .../security/domain/TFAccessToken.java          | 137 +++++++++
 .../domain/TFAccessTokenRepository.java         |  31 ++
 .../security/domain/TwoFactorConfiguration.java |  84 +++++
 .../TwoFactorConfigurationRepository.java       |  34 +++
 .../exception/AccessTokenInvalidIException.java |  28 ++
 .../OTPDeliveryMethodInvalidException.java      |  29 ++
 .../exception/OTPTokenInvalidException.java     |  28 ++
 .../InsecureTwoFactorAuthenticationFilter.java  |  82 +++++
 .../filter/TwoFactorAuthenticationFilter.java   | 139 +++++++++
 .../service/AccessTokenGenerationService.java   |  24 ++
 .../security/service/RandomOTPGenerator.java    |  38 +++
 .../service/TwoFactorConfigurationService.java  |  51 ++++
 .../TwoFactorConfigurationServiceImpl.java      | 304 +++++++++++++++++++
 .../security/service/TwoFactorService.java      |  43 +++
 .../security/service/TwoFactorServiceImpl.java  | 229 ++++++++++++++
 .../security/service/TwoFactorUtils.java        |  47 +++
 .../UUIDAccessTokenGenerationService.java       |  32 ++
 .../useradministration/domain/AppUser.java      |  17 ++
 .../main/resources/META-INF/spring/ehcache.xml  |   4 +
 .../META-INF/spring/securityContext.xml         |  38 ++-
 .../core_db/V336__two_factor_authentication.sql |  63 ++++
 47 files changed, 2762 insertions(+), 35 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/fineract/blob/1a501287/fineract-provider/src/main/java/org/apache/fineract/commands/service/CommandWrapperBuilder.java
----------------------------------------------------------------------
diff --cc fineract-provider/src/main/java/org/apache/fineract/commands/service/CommandWrapperBuilder.java
index 359e427,93bd160..ae53bb7
--- a/fineract-provider/src/main/java/org/apache/fineract/commands/service/CommandWrapperBuilder.java
+++ b/fineract-provider/src/main/java/org/apache/fineract/commands/service/CommandWrapperBuilder.java
@@@ -3039,83 -3039,20 +3039,97 @@@ public class CommandWrapperBuilder 
          this.entityId = adHocId;
          this.href = "/adhocquery/" + adHocId;
          this.json = "{}";
 +        return this ;
 +    }
 +    public CommandWrapperBuilder createEmail() {
 +        this.actionName = "CREATE";
 +        this.entityName = "EMAIL";
 +        this.entityId = null;
 +        this.href = "/emailcampaigns/template";
 +        return this;
 +    }
 +
 +    public CommandWrapperBuilder updateEmail(final Long resourceId) {
 +        this.actionName = "UPDATE";
 +        this.entityName = "EMAIL";
 +        this.entityId = resourceId;
 +        this.href = "/emailcampaigns/"+resourceId;
 +        return this;
 +    }
 +
 +    public CommandWrapperBuilder deleteEmail(final Long resourceId) {
 +        this.actionName = "DELETE";
 +        this.entityName = "EMAIL";
 +        this.entityId = resourceId;
 +        this.href = "/emailcampaigns/"+resourceId;
 +        return this;
 +    }
 +
 +    public CommandWrapperBuilder createEmailCampaign() {
 +        this.actionName = "CREATE";
 +        this.entityName = "EMAIL_CAMPAIGN";
 +        this.entityId = null;
 +        this.href = "/emailcampaigns/campaign";
 +        return this;
 +    }
 +
 +    public CommandWrapperBuilder updateEmailCampaign(final Long resourceId) {
 +        this.actionName = "UPDATE";
 +        this.entityName = "EMAIL_CAMPAIGN";
 +        this.entityId = resourceId;
 +        this.href = "/emailcampaigns/"+resourceId;
 +        return this;
 +    }
 +
 +    public CommandWrapperBuilder deleteEmailCampaign(final Long resourceId) {
 +        this.actionName = "DELETE";
 +        this.entityName = "EMAIL_CAMPAIGN";
 +        this.entityId = resourceId;
 +        this.href = "/emailcampaigns/"+resourceId;
 +        return this;
 +    }
 +
 +    public CommandWrapperBuilder activateEmailCampaign(final Long resourceId) {
 +        this.actionName = "ACTIVATE";
 +        this.entityName = "EMAIL_CAMPAIGN";
 +        this.entityId = resourceId;
 +        this.href = "/emailcampaigns/"+resourceId + "?command=activate";
 +        return this;
 +    }
 +
 +    public CommandWrapperBuilder closeEmailCampaign(final Long resourceId) {
 +        this.actionName = "CLOSE";
 +        this.entityName = "EMAIL_CAMPAIGN";
 +        this.entityId = resourceId;
 +        this.href = "/emailcampaigns/"+resourceId + "?command=close";
 +        return this;
 +    }
 +    public CommandWrapperBuilder reactivateEmailCampaign(final Long resourceId) {
 +        this.actionName = "REACTIVATE";
 +        this.entityName = "EMAIL_CAMPAIGN";
 +        this.entityId = resourceId;
 +        this.href = "/emailcampaigns/"+resourceId + "?command=reactivate";
 +        return this;
 +    }
 +
 +    public CommandWrapperBuilder updateEmailConfiguration() {
 +        this.actionName = "UPDATE";
 +        this.entityName = "EMAIL_CONFIGURATION";
 +        this.href = "/emailcampaigns/configuration/";
          return this;
      }
+ 
+     public CommandWrapperBuilder invalidateTwoFactorAccessToken() {
+         this.actionName = "INVALIDATE";
+         this.entityName = "TWOFACTOR_ACCESSTOKEN";
+         this.href = "/twofactor/invalidate";
+         return this;
+     }
+ 
+     public CommandWrapperBuilder updateTwoFactorConfiguration() {
+         this.actionName = "UPDATE";
+         this.entityName = "TWOFACTOR_CONFIGURATION";
+         this.href = "/twofactor/configure";
+         return this;
+     }
  }