Author: keith
Date: Thu Jan 3 01:11:08 2008
New Revision: 11805
Log:
Fixing authenticator
Modified:
trunk/mashup/java/modules/core/src/org/wso2/mashup/realm/wsas/HybridAuthenticator.java
Modified:
trunk/mashup/java/modules/core/src/org/wso2/mashup/realm/wsas/HybridAuthenticator.java
==============================================================================
---
trunk/mashup/java/modules/core/src/org/wso2/mashup/realm/wsas/HybridAuthenticator.java
(original)
+++
trunk/mashup/java/modules/core/src/org/wso2/mashup/realm/wsas/HybridAuthenticator.java
Thu Jan 3 01:11:08 2008
@@ -2,21 +2,46 @@
import org.wso2.usermanager.Authenticator;
import org.wso2.usermanager.UserManagerException;
+import org.wso2.wsas.persistence.PersistenceManager;
+import org.wso2.wsas.persistence.dataobject.ServiceUserDO;
+import org.wso2.wsas.persistence.dataobject.ServiceUserRoleDO;
+import org.wso2.wsas.ServerConstants;
+import org.wso2.utils.ServerConfiguration;
+import org.wso2.utils.security.CryptoUtil;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import java.io.File;
public class HybridAuthenticator implements Authenticator{
+ private static final Log log =
LogFactory.getLog(HybridAuthenticator.class);
+
public boolean authenticate(String userName, Object credentials)
throws UserManagerException {
- /* try {
- GlobalAdmin admin = new GlobalAdmin();
- return admin.login(userName, (String)credentials);
-
- } catch (AxisFault e) {
- throw new UserManagerException(e.getMessage());
- }*/
- return true;
- }
-
-
-}
+ PersistenceManager pm = new PersistenceManager();
+
+ ServiceUserDO user = pm.getUser(userName);
+
+ if (user == null) {
+ return false;
+ }
+
+ try {
+ ServerConfiguration config = ServerConfiguration.getInstance();
+ CryptoUtil cryptoUtil =
+ new CryptoUtil(new
File(config.getFirstProperty("Security.KeyStore.Location")).getAbsolutePath(),
+
config.getFirstProperty("Security.KeyStore.Password"),
+
config.getFirstProperty("Security.KeyStore.KeyAlias"),
+
config.getFirstProperty("Security.KeyStore.KeyPassword"),
+
config.getFirstProperty("Security.KeyStore.Type"));
+ return new
String(cryptoUtil.base64DecodeAndDecrypt(user.getPassword())).
+ equals(credentials);
+ } catch (Exception e) {
+ log.error("Exception occurred during authentication", e);
+ }
+
+ return false;
+ }
+}
\ No newline at end of file
_______________________________________________
Mashup-dev mailing list
[email protected]
http://www.wso2.org/cgi-bin/mailman/listinfo/mashup-dev