You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sc...@apache.org on 2016/07/28 20:31:19 UTC
airavata git commit: rolling back
Repository: airavata
Updated Branches:
refs/heads/develop 5025f4f42 -> 29e666a5f
rolling back
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/29e666a5
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/29e666a5
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/29e666a5
Branch: refs/heads/develop
Commit: 29e666a5fd4d505398b6b570711c619813d0d2e2
Parents: 5025f4f
Author: scnakandala <su...@gmail.com>
Authored: Thu Jul 28 16:31:13 2016 -0400
Committer: scnakandala <su...@gmail.com>
Committed: Thu Jul 28 16:31:13 2016 -0400
----------------------------------------------------------------------
.../server/security/xacml/DefaultXACMLPEP.java | 45 ++++++++++----------
1 file changed, 23 insertions(+), 22 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/29e666a5/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/security/xacml/DefaultXACMLPEP.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/security/xacml/DefaultXACMLPEP.java b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/security/xacml/DefaultXACMLPEP.java
index 77ea7e0..f1c8884 100644
--- a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/security/xacml/DefaultXACMLPEP.java
+++ b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/security/xacml/DefaultXACMLPEP.java
@@ -20,6 +20,7 @@
*/
package org.apache.airavata.api.server.security.xacml;
+import org.apache.airavata.common.utils.Constants;
import org.apache.airavata.model.security.AuthzToken;
import org.apache.airavata.security.AiravataSecurityException;
import org.apache.axis2.AxisFault;
@@ -28,6 +29,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
+import org.wso2.carbon.identity.entitlement.stub.EntitlementServiceException;
import org.wso2.carbon.identity.entitlement.stub.EntitlementServiceStub;
import org.wso2.carbon.utils.CarbonUtils;
import org.xml.sax.SAXException;
@@ -38,6 +40,7 @@ import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;
+import java.rmi.RemoteException;
import java.util.Map;
/**
@@ -71,28 +74,26 @@ public class DefaultXACMLPEP {
* @return
*/
public boolean getAuthorizationDecision(AuthzToken authzToken, Map<String, String> metaData) throws AiravataSecurityException {
- //FIXME
- return true;
-// String decision;
-// try {
-// String subject = authzToken.getClaimsMap().get(Constants.USER_NAME);
-// String action = "/airavata/" + metaData.get(Constants.API_METHOD_NAME);
-// String decisionString = entitlementServiceStub.getDecisionByAttributes(subject, null, action, null);
-// //parse the XML decision string and obtain the decision
-// decision = parseDecisionString(decisionString);
-// if (Constants.PERMIT.equals(decision)) {
-// return true;
-// } else {
-// logger.error("Authorization decision is: " + decision);
-// return false;
-// }
-// } catch (RemoteException e) {
-// logger.error(e.getMessage(), e);
-// throw new AiravataSecurityException("Error in authorizing the user.");
-// } catch (EntitlementServiceException e) {
-// logger.error(e.getMessage(), e);
-// throw new AiravataSecurityException("Error in authorizing the user.");
-// }
+ String decision;
+ try {
+ String subject = authzToken.getClaimsMap().get(Constants.USER_NAME);
+ String action = "/airavata/" + metaData.get(Constants.API_METHOD_NAME);
+ String decisionString = entitlementServiceStub.getDecisionByAttributes(subject, null, action, null);
+ //parse the XML decision string and obtain the decision
+ decision = parseDecisionString(decisionString);
+ if (Constants.PERMIT.equals(decision)) {
+ return true;
+ } else {
+ logger.error("Authorization decision is: " + decision);
+ return false;
+ }
+ } catch (RemoteException e) {
+ logger.error(e.getMessage(), e);
+ throw new AiravataSecurityException("Error in authorizing the user.");
+ } catch (EntitlementServiceException e) {
+ logger.error(e.getMessage(), e);
+ throw new AiravataSecurityException("Error in authorizing the user.");
+ }
}
/**