You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juddi.apache.org by al...@apache.org on 2015/07/25 23:03:59 UTC
juddi git commit: JUDDI-933 all authenticated users are now populated
into the database
Repository: juddi
Updated Branches:
refs/heads/master a56a64ffc -> c606f786f
JUDDI-933 all authenticated users are now populated into the database
Project: http://git-wip-us.apache.org/repos/asf/juddi/repo
Commit: http://git-wip-us.apache.org/repos/asf/juddi/commit/c606f786
Tree: http://git-wip-us.apache.org/repos/asf/juddi/tree/c606f786
Diff: http://git-wip-us.apache.org/repos/asf/juddi/diff/c606f786
Branch: refs/heads/master
Commit: c606f786f73979560410f10c0ae69a70d169f4e2
Parents: a56a64f
Author: Alex <al...@apache.org>
Authored: Sat Jul 25 17:03:50 2015 -0400
Committer: Alex <al...@apache.org>
Committed: Sat Jul 25 17:03:50 2015 -0400
----------------------------------------------------------------------
.../v3/auth/CryptedXMLDocAuthenticator.java | 46 ++++++++++++++++++++
.../v3/auth/HTTPContainerAuthenticator.java | 2 +-
.../juddi/v3/auth/HTTPHeaderAuthenticator.java | 2 +-
.../v3/auth/LdapExpandedAuthenticator.java | 2 +-
.../juddi/v3/auth/LdapSimpleAuthenticator.java | 2 +-
.../juddi/v3/auth/MD5XMLDocAuthenticator.java | 46 ++++++++++++++++++++
.../juddi/v3/auth/XMLDocAuthenticator.java | 44 ++++++++++++++++++-
7 files changed, 139 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/juddi/blob/c606f786/juddi-core/src/main/java/org/apache/juddi/v3/auth/CryptedXMLDocAuthenticator.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/v3/auth/CryptedXMLDocAuthenticator.java b/juddi-core/src/main/java/org/apache/juddi/v3/auth/CryptedXMLDocAuthenticator.java
index eab3420..b581773 100644
--- a/juddi-core/src/main/java/org/apache/juddi/v3/auth/CryptedXMLDocAuthenticator.java
+++ b/juddi-core/src/main/java/org/apache/juddi/v3/auth/CryptedXMLDocAuthenticator.java
@@ -25,15 +25,20 @@ import java.security.NoSuchAlgorithmException;
import javax.crypto.BadPaddingException;
import javax.crypto.IllegalBlockSizeException;
import javax.crypto.NoSuchPaddingException;
+import javax.persistence.EntityManager;
+import javax.persistence.EntityTransaction;
import javax.xml.bind.JAXBException;
import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.juddi.config.AppConfig;
+import org.apache.juddi.config.PersistenceManager;
import org.apache.juddi.config.Property;
import org.apache.juddi.v3.client.cryptor.Cryptor;
import org.apache.juddi.cryptor.CryptorFactory;
+import org.apache.juddi.model.Publisher;
+import static org.apache.juddi.v3.auth.XMLDocAuthenticator.log;
import org.apache.juddi.v3.error.AuthenticationException;
import org.apache.juddi.v3.error.ErrorMessage;
import org.apache.juddi.v3.error.FatalErrorException;
@@ -150,6 +155,47 @@ public class CryptedXMLDocAuthenticator extends XMLDocAuthenticator {
throw new UnknownUserException(new ErrorMessage(
"errors.auth.InvalidUserId", userID));
}
+ int MaxBindingsPerService = -1;
+ int MaxServicesPerBusiness = -1;
+ int MaxTmodels = -1;
+ int MaxBusinesses = -1;
+ try {
+ MaxBindingsPerService = AppConfig.getConfiguration().getInt(Property.JUDDI_MAX_BINDINGS_PER_SERVICE, -1);
+ MaxServicesPerBusiness = AppConfig.getConfiguration().getInt(Property.JUDDI_MAX_SERVICES_PER_BUSINESS, -1);
+ MaxTmodels = AppConfig.getConfiguration().getInt(Property.JUDDI_MAX_TMODELS_PER_PUBLISHER, -1);
+ MaxBusinesses = AppConfig.getConfiguration().getInt(Property.JUDDI_MAX_BUSINESSES_PER_PUBLISHER, -1);
+ } catch (Exception ex) {
+ MaxBindingsPerService = -1;
+ MaxServicesPerBusiness = -1;
+ MaxTmodels = -1;
+ MaxBusinesses = -1;
+ log.error("config exception! " + userID, ex);
+ }
+ EntityManager em = PersistenceManager.getEntityManager();
+ EntityTransaction tx = em.getTransaction();
+ try {
+ tx.begin();
+ Publisher publisher = em.find(Publisher.class, userID);
+ if (publisher == null) {
+ log.warn("Publisher \"" + userID + "\" was not found in the database, adding the publisher in on the fly.");
+ publisher = new Publisher();
+ publisher.setAuthorizedName(userID);
+ publisher.setIsAdmin("false");
+ publisher.setIsEnabled("true");
+ publisher.setMaxBindingsPerService(MaxBindingsPerService);
+ publisher.setMaxBusinesses(MaxBusinesses);
+ publisher.setMaxServicesPerBusiness(MaxServicesPerBusiness);
+ publisher.setMaxTmodels(MaxTmodels);
+ publisher.setPublisherName("Unknown");
+ em.persist(publisher);
+ tx.commit();
+ }
+ } finally {
+ if (tx.isActive()) {
+ tx.rollback();
+ }
+ em.close();
+ }
return userID;
}
}
http://git-wip-us.apache.org/repos/asf/juddi/blob/c606f786/juddi-core/src/main/java/org/apache/juddi/v3/auth/HTTPContainerAuthenticator.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/v3/auth/HTTPContainerAuthenticator.java b/juddi-core/src/main/java/org/apache/juddi/v3/auth/HTTPContainerAuthenticator.java
index e003aa3..71b9454 100644
--- a/juddi-core/src/main/java/org/apache/juddi/v3/auth/HTTPContainerAuthenticator.java
+++ b/juddi-core/src/main/java/org/apache/juddi/v3/auth/HTTPContainerAuthenticator.java
@@ -89,7 +89,7 @@ public class HTTPContainerAuthenticator implements Authenticator {
tx.begin();
Publisher publisher = em.find(Publisher.class, user);
if (publisher == null) {
- log.warn("Publisher \"" + user + "\" was not found, adding the publisher in on the fly.");
+ log.warn("Publisher \"" + user + "\" was not found in the database, adding the publisher in on the fly.");
publisher = new Publisher();
publisher.setAuthorizedName(user);
publisher.setIsAdmin("false");
http://git-wip-us.apache.org/repos/asf/juddi/blob/c606f786/juddi-core/src/main/java/org/apache/juddi/v3/auth/HTTPHeaderAuthenticator.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/v3/auth/HTTPHeaderAuthenticator.java b/juddi-core/src/main/java/org/apache/juddi/v3/auth/HTTPHeaderAuthenticator.java
index 99e79d9..7eeb221 100644
--- a/juddi-core/src/main/java/org/apache/juddi/v3/auth/HTTPHeaderAuthenticator.java
+++ b/juddi-core/src/main/java/org/apache/juddi/v3/auth/HTTPHeaderAuthenticator.java
@@ -94,7 +94,7 @@ public class HTTPHeaderAuthenticator implements Authenticator {
tx.begin();
Publisher publisher = em.find(Publisher.class, user);
if (publisher == null) {
- log.warn("Publisher \"" + user + "\" was not found, adding the publisher in on the fly.");
+ log.warn("Publisher \"" + user + "\" was not found in the database, adding the publisher in on the fly.");
publisher = new Publisher();
publisher.setAuthorizedName(user);
publisher.setIsAdmin("false");
http://git-wip-us.apache.org/repos/asf/juddi/blob/c606f786/juddi-core/src/main/java/org/apache/juddi/v3/auth/LdapExpandedAuthenticator.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/v3/auth/LdapExpandedAuthenticator.java b/juddi-core/src/main/java/org/apache/juddi/v3/auth/LdapExpandedAuthenticator.java
index eb9018d..a2c2caa 100644
--- a/juddi-core/src/main/java/org/apache/juddi/v3/auth/LdapExpandedAuthenticator.java
+++ b/juddi-core/src/main/java/org/apache/juddi/v3/auth/LdapExpandedAuthenticator.java
@@ -169,7 +169,7 @@ public class LdapExpandedAuthenticator implements Authenticator {
tx.begin();
Publisher publisher = em.find(Publisher.class, authorizedName);
if (publisher == null) {
- logger.warn("Publisher was not found, adding the publisher in on the fly.");
+ logger.warn("Publisher was not found in the database, adding the publisher in on the fly.");
publisher = new Publisher();
publisher.setAuthorizedName(authorizedName);
publisher.setIsAdmin("false");
http://git-wip-us.apache.org/repos/asf/juddi/blob/c606f786/juddi-core/src/main/java/org/apache/juddi/v3/auth/LdapSimpleAuthenticator.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/v3/auth/LdapSimpleAuthenticator.java b/juddi-core/src/main/java/org/apache/juddi/v3/auth/LdapSimpleAuthenticator.java
index f8793bf..532441c 100644
--- a/juddi-core/src/main/java/org/apache/juddi/v3/auth/LdapSimpleAuthenticator.java
+++ b/juddi-core/src/main/java/org/apache/juddi/v3/auth/LdapSimpleAuthenticator.java
@@ -170,7 +170,7 @@ public class LdapSimpleAuthenticator implements Authenticator {
tx.begin();
Publisher publisher = em.find(Publisher.class, authorizedName);
if (publisher == null) {
- logger.warn("Publisher was not found, adding the publisher in on the fly.");
+ logger.warn("Publisher was not found in the database, adding the publisher in on the fly.");
publisher = new Publisher();
publisher.setAuthorizedName(authorizedName);
publisher.setIsAdmin("false");
http://git-wip-us.apache.org/repos/asf/juddi/blob/c606f786/juddi-core/src/main/java/org/apache/juddi/v3/auth/MD5XMLDocAuthenticator.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/v3/auth/MD5XMLDocAuthenticator.java b/juddi-core/src/main/java/org/apache/juddi/v3/auth/MD5XMLDocAuthenticator.java
index 5e40a8c..0e65ae4 100644
--- a/juddi-core/src/main/java/org/apache/juddi/v3/auth/MD5XMLDocAuthenticator.java
+++ b/juddi-core/src/main/java/org/apache/juddi/v3/auth/MD5XMLDocAuthenticator.java
@@ -18,13 +18,17 @@
package org.apache.juddi.v3.auth;
import java.io.IOException;
+import javax.persistence.EntityManager;
+import javax.persistence.EntityTransaction;
import javax.xml.bind.JAXBException;
import org.apache.commons.codec.digest.DigestUtils;
import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.juddi.config.AppConfig;
+import org.apache.juddi.config.PersistenceManager;
import org.apache.juddi.config.Property;
+import org.apache.juddi.model.Publisher;
import org.apache.juddi.v3.error.AuthenticationException;
import org.apache.juddi.v3.error.ErrorMessage;
import org.apache.juddi.v3.error.FatalErrorException;
@@ -61,6 +65,7 @@ public class MD5XMLDocAuthenticator extends XMLDocAuthenticator {
/**
*
*/
+ @Override
public String authenticate(String userID, String credential)
throws AuthenticationException, FatalErrorException {
preProcess(userID, credential);
@@ -116,6 +121,47 @@ public class MD5XMLDocAuthenticator extends XMLDocAuthenticator {
throw new UnknownUserException(new ErrorMessage(
"errors.auth.InvalidUserId", userID));
}
+ int MaxBindingsPerService = -1;
+ int MaxServicesPerBusiness = -1;
+ int MaxTmodels = -1;
+ int MaxBusinesses = -1;
+ try {
+ MaxBindingsPerService = AppConfig.getConfiguration().getInt(Property.JUDDI_MAX_BINDINGS_PER_SERVICE, -1);
+ MaxServicesPerBusiness = AppConfig.getConfiguration().getInt(Property.JUDDI_MAX_SERVICES_PER_BUSINESS, -1);
+ MaxTmodels = AppConfig.getConfiguration().getInt(Property.JUDDI_MAX_TMODELS_PER_PUBLISHER, -1);
+ MaxBusinesses = AppConfig.getConfiguration().getInt(Property.JUDDI_MAX_BUSINESSES_PER_PUBLISHER, -1);
+ } catch (Exception ex) {
+ MaxBindingsPerService = -1;
+ MaxServicesPerBusiness = -1;
+ MaxTmodels = -1;
+ MaxBusinesses = -1;
+ log.error("config exception! " + userID, ex);
+ }
+ EntityManager em = PersistenceManager.getEntityManager();
+ EntityTransaction tx = em.getTransaction();
+ try {
+ tx.begin();
+ Publisher publisher = em.find(Publisher.class, userID);
+ if (publisher == null) {
+ log.warn("Publisher \"" + userID + "\" was not found in the database, adding the publisher in on the fly.");
+ publisher = new Publisher();
+ publisher.setAuthorizedName(userID);
+ publisher.setIsAdmin("false");
+ publisher.setIsEnabled("true");
+ publisher.setMaxBindingsPerService(MaxBindingsPerService);
+ publisher.setMaxBusinesses(MaxBusinesses);
+ publisher.setMaxServicesPerBusiness(MaxServicesPerBusiness);
+ publisher.setMaxTmodels(MaxTmodels);
+ publisher.setPublisherName("Unknown");
+ em.persist(publisher);
+ tx.commit();
+ }
+ } finally {
+ if (tx.isActive()) {
+ tx.rollback();
+ }
+ em.close();
+ }
return userID;
}
http://git-wip-us.apache.org/repos/asf/juddi/blob/c606f786/juddi-core/src/main/java/org/apache/juddi/v3/auth/XMLDocAuthenticator.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/v3/auth/XMLDocAuthenticator.java b/juddi-core/src/main/java/org/apache/juddi/v3/auth/XMLDocAuthenticator.java
index 8b3ad5c..1e9787d 100644
--- a/juddi-core/src/main/java/org/apache/juddi/v3/auth/XMLDocAuthenticator.java
+++ b/juddi-core/src/main/java/org/apache/juddi/v3/auth/XMLDocAuthenticator.java
@@ -69,7 +69,7 @@ import org.apache.juddi.v3.error.UnknownUserException;
*/
public class XMLDocAuthenticator implements Authenticator
{
- private static Log log = LogFactory.getLog(AuthenticatorFactory.class);
+ protected static Log log = LogFactory.getLog(AuthenticatorFactory.class);
/** Container for the user credentials */
Map<String,User> userTable;
@@ -152,9 +152,51 @@ public class XMLDocAuthenticator implements Authenticator
else
throw new UnknownUserException(new ErrorMessage("errors.auth.InvalidUserId", userID));
+ int MaxBindingsPerService = -1;
+ int MaxServicesPerBusiness = -1;
+ int MaxTmodels = -1;
+ int MaxBusinesses = -1;
+ try {
+ MaxBindingsPerService = AppConfig.getConfiguration().getInt(Property.JUDDI_MAX_BINDINGS_PER_SERVICE, -1);
+ MaxServicesPerBusiness = AppConfig.getConfiguration().getInt(Property.JUDDI_MAX_SERVICES_PER_BUSINESS, -1);
+ MaxTmodels = AppConfig.getConfiguration().getInt(Property.JUDDI_MAX_TMODELS_PER_PUBLISHER, -1);
+ MaxBusinesses = AppConfig.getConfiguration().getInt(Property.JUDDI_MAX_BUSINESSES_PER_PUBLISHER, -1);
+ } catch (Exception ex) {
+ MaxBindingsPerService = -1;
+ MaxServicesPerBusiness = -1;
+ MaxTmodels = -1;
+ MaxBusinesses = -1;
+ log.error("config exception! " + userID, ex);
+ }
+ EntityManager em = PersistenceManager.getEntityManager();
+ EntityTransaction tx = em.getTransaction();
+ try {
+ tx.begin();
+ Publisher publisher = em.find(Publisher.class, userID);
+ if (publisher == null) {
+ log.warn("Publisher \"" + userID + "\" was not found in the database, adding the publisher in on the fly.");
+ publisher = new Publisher();
+ publisher.setAuthorizedName(userID);
+ publisher.setIsAdmin("false");
+ publisher.setIsEnabled("true");
+ publisher.setMaxBindingsPerService(MaxBindingsPerService);
+ publisher.setMaxBusinesses(MaxBusinesses);
+ publisher.setMaxServicesPerBusiness(MaxServicesPerBusiness);
+ publisher.setMaxTmodels(MaxTmodels);
+ publisher.setPublisherName("Unknown");
+ em.persist(publisher);
+ tx.commit();
+ }
+ } finally {
+ if (tx.isActive()) {
+ tx.rollback();
+ }
+ em.close();
+ }
return userID;
}
+ @Override
public UddiEntityPublisher identify(String authInfo, String authorizedName, WebServiceContext ctx) throws AuthenticationException {
EntityManager em = PersistenceManager.getEntityManager();
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@juddi.apache.org
For additional commands, e-mail: commits-help@juddi.apache.org