Added support for optional config parameter to disable authorization via policy.
Change-Id: I79e3decee7ed4c5c02ceafa1e8655282c0e5fd3a
Issue-ID: AAI-2005
Signed-off-by: Stela Stoykova <Stela.Stoykova@amdocs.com>
Logger logger = LoggerFactory.getInstance().getLogger(CrudRestService.class.getName());
Logger auditLogger = LoggerFactory.getInstance().getAuditLogger(CrudRestService.class.getName());
private Auth auth;
Logger logger = LoggerFactory.getInstance().getLogger(CrudRestService.class.getName());
Logger auditLogger = LoggerFactory.getInstance().getAuditLogger(CrudRestService.class.getName());
private Auth auth;
+ private boolean authorizationEnabled;
private String mediaType = MediaType.APPLICATION_JSON;
public static final String HTTP_PATCH_METHOD_OVERRIDE = "X-HTTP-Method-Override";
private String mediaType = MediaType.APPLICATION_JSON;
public static final String HTTP_PATCH_METHOD_OVERRIDE = "X-HTTP-Method-Override";
public CrudRestService(AbstractGraphDataService graphDataService) throws Exception {
this.graphDataService = graphDataService;
public CrudRestService(AbstractGraphDataService graphDataService) throws Exception {
this.graphDataService = graphDataService;
- this.auth = new Auth(CrudServiceConstants.CRD_AUTH_FILE);
+
+ this.authorizationEnabled = Boolean.parseBoolean(
+ CrudProperties.get(CrudServiceConstants.CRD_AUTHORIZATION_ENABLED, "true"));
+
+ this.auth = null;
+ if (this.authorizationEnabled) {
+ this.auth = new Auth(CrudServiceConstants.CRD_AUTH_FILE);
+ }
protected boolean validateRequest(HttpServletRequest req, String uri, String content, Action action,
String authPolicyFunctionName, HttpHeaders headers) throws CrudException {
protected boolean validateRequest(HttpServletRequest req, String uri, String content, Action action,
String authPolicyFunctionName, HttpHeaders headers) throws CrudException {
+
+ if (!authorizationEnabled) {
+ validateRequestHeader(headers);
+ return true;
+ }
+
boolean isValid = false;
try {
String cipherSuite = (String) req.getAttribute("javax.servlet.request.cipher_suite");
boolean isValid = false;
try {
String cipherSuite = (String) req.getAttribute("javax.servlet.request.cipher_suite");
public static final String CRD_CHAMP_AUTH_FILE = CRD_HOME_AUTH + "champ-cert.p12";
public static final String CRD_DATAROUTER_AUTH_FILE = CRD_HOME_AUTH + "datarouter-cert.p12";
public static final String CRD_AUTH_POLICY_NAME = "crud";
public static final String CRD_CHAMP_AUTH_FILE = CRD_HOME_AUTH + "champ-cert.p12";
public static final String CRD_DATAROUTER_AUTH_FILE = CRD_HOME_AUTH + "datarouter-cert.p12";
public static final String CRD_AUTH_POLICY_NAME = "crud";
+ public static final String CRD_AUTHORIZATION_ENABLED = "crud.authorization.enabled";
public static final String CRD_ASYNC_REQUEST_TIMEOUT = "crud.async.request.timeout";
public static final String CRD_ASYNC_RESPONSE_PROCESS_POLL_INTERVAL = "crud.async.response.process.poll.interval";
public static final String CRD_COLLECTION_PROPERTIES_KEY = "crud.collection.properties.key";
public static final String CRD_ASYNC_REQUEST_TIMEOUT = "crud.async.request.timeout";
public static final String CRD_ASYNC_RESPONSE_PROCESS_POLL_INTERVAL = "crud.async.response.process.poll.interval";
public static final String CRD_COLLECTION_PROPERTIES_KEY = "crud.collection.properties.key";