diff --git a/.github/workflows/package.yml b/.github/workflows/package.yml
index fff0b3f9..c1dfbc44 100644
--- a/.github/workflows/package.yml
+++ b/.github/workflows/package.yml
@@ -1,4 +1,3 @@
-
 name: Package
 
 on:
@@ -29,7 +28,6 @@ jobs:
     
     - name: Checkout code 
       uses: actions/checkout@v2
-
     - name: Setup JDK 8
       uses: actions/setup-java@v2
       with:
diff --git a/.github/workflows/sast-and-package.yml b/.github/workflows/sast-and-package.yml
index c8bf1453..97b4a174 100644
--- a/.github/workflows/sast-and-package.yml
+++ b/.github/workflows/sast-and-package.yml
@@ -28,13 +28,11 @@ jobs:
     
     - name: Checkout code 
       uses: actions/checkout@v2
-
     - name: Setup JDK 8
       uses: actions/setup-java@v2
       with:
         java-version: 8
         distribution: 'adopt'
-
         
     - name: Build with Maven
       run: mvn clean install -DENV_VAR=${{ env.ENV_VAR }}
diff --git a/.java-version b/.java-version
new file mode 100644
index 00000000..62593409
--- /dev/null
+++ b/.java-version
@@ -0,0 +1 @@
+1.8
diff --git a/README.md b/README.md
index 98173c4d..0d4c562f 100644
--- a/README.md
+++ b/README.md
@@ -26,8 +26,15 @@ This service has been tested on Wildfly as the application server.
 * Redis
 * MySQL Database
 
+## Environment and setup
+
+1. Install dependencies `mvn clean install`
+2. You can copy `common_example.properties` to `common_local.properties` and edit the file accordingly. The file is under `src/main/environment` folder.
+3. Run the spring server with local configuration `mvn spring-boot:run -DENV_VAR=local`
+
 ## Integrations
 * RMNCH (Reproductive, Maternal, Newborn, and Child Health)
+
 ## Usage
 All features have been exposed as REST endpoints. Refer to the SWAGGER API specification for details.
 
diff --git a/pom.xml b/pom.xml
index 7fe31aa3..4c914458 100644
--- a/pom.xml
+++ b/pom.xml
@@ -29,7 +29,7 @@
 		<org.projectlombok.version>1.16.18</org.projectlombok.version>
 		<environment>${ENV_VAR}</environment>
 		<target-properties>target/classes/application.properties</target-properties>
-		<source-properties>src/main/environment/common_${environment}.properties</source-properties>
+		<source-properties>target/classes/common_${environment}.properties</source-properties>
 		<maven.test.skip>true</maven.test.skip>
 		<sonar.java.binaries>target</sonar.java.binaries>
 	</properties>
@@ -211,7 +211,7 @@
 			<properties>
 				<final-name>1097identityapi-v1.0</final-name>
 				<target-properties>target/classes/application.properties</target-properties>
-				<source-properties>src/main/environment/1097_${environment}.properties</source-properties>
+				<source-properties>target/classes/1097_${environment}.properties</source-properties>
 			</properties>
 			<build>
 				<finalName>1097identityapi-v1.0</finalName>
@@ -219,8 +219,6 @@
 		</profile>
 	</profiles>
 
-
-
 	<build>
 		<finalName>identity-0.0.1</finalName>
 		<plugins>
@@ -255,6 +253,32 @@
 					</annotationProcessorPaths>
 				</configuration>
 			</plugin>
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-resources-plugin</artifactId>
+				<executions>
+					<execution>
+						<id>filter-resources</id>
+						<phase>process-resources</phase>
+						<goals>
+							<goal>resources</goal>
+						</goals>
+						<configuration>
+							<delimiters>@</delimiters>
+							<useDefaultDelimiters>false</useDefaultDelimiters>
+							<resources>
+								<resource>
+									<directory>src/main/environment</directory>
+									<filtering>true</filtering>
+									<includes>
+										<include>common_${environment}.properties</include>
+									</includes>
+								</resource>
+							</resources>
+						</configuration>
+					</execution>
+				</executions>
+			</plugin>
 			<plugin>
 				<groupId>org.apache.maven.plugins</groupId>
 				<artifactId>maven-antrun-plugin</artifactId>
@@ -265,11 +289,11 @@
 						<goals>
 							<goal>run</goal>
 						</goals>
-						<id>properties-updated</id>
+						<id>merge-properties</id>
 						<configuration>
 							<target>
 								<echo>
-									concatinating properties file ${target-properties} and
+									concatenating properties file ${target-properties} and
 									${source-properties}
 								</echo>
 								<concat destfile="${target-properties}" append="yes"
@@ -280,6 +304,20 @@
 							</target>
 						</configuration>
 					</execution>
+					<execution>
+						<phase>process-resources</phase>
+						<goals>
+							<goal>run</goal>
+						</goals>
+						<id>clean-property-files</id>
+						<configuration>
+							<tasks>
+								<delete>
+									<file file="${source-properties}"/>
+								</delete>
+							</tasks>
+						</configuration>
+					</execution>
 				</executions>
 			</plugin>
 			<plugin>
diff --git a/src/main/environment/1097_ci.properties b/src/main/environment/1097_ci.properties
new file mode 100644
index 00000000..11418e69
--- /dev/null
+++ b/src/main/environment/1097_ci.properties
@@ -0,0 +1,5 @@
+# DataSource settings: set here your own configurations for the database
+spring.datasource.url=@env.DATABASE_URL@
+spring.datasource.username=@env.DATABASE_USERNAME@
+spring.datasource.password=@env.DATABASE_PASSWORD@
+spring.datasource.driver-class-name=com.mysql.jdbc.Driver
diff --git a/src/main/environment/1097_local.properties b/src/main/environment/1097_example.properties
similarity index 100%
rename from src/main/environment/1097_local.properties
rename to src/main/environment/1097_example.properties
diff --git a/src/main/environment/common_ci.properties b/src/main/environment/common_ci.properties
new file mode 100644
index 00000000..11418e69
--- /dev/null
+++ b/src/main/environment/common_ci.properties
@@ -0,0 +1,5 @@
+# DataSource settings: set here your own configurations for the database
+spring.datasource.url=@env.DATABASE_URL@
+spring.datasource.username=@env.DATABASE_USERNAME@
+spring.datasource.password=@env.DATABASE_PASSWORD@
+spring.datasource.driver-class-name=com.mysql.jdbc.Driver
diff --git a/src/main/environment/common_example.properties b/src/main/environment/common_example.properties
new file mode 100644
index 00000000..2792334a
--- /dev/null
+++ b/src/main/environment/common_example.properties
@@ -0,0 +1,5 @@
+# DataSource settings: set here your own configurations for the database
+spring.datasource.url=<Enter AMRIT DB_IDENTITY URL here>
+spring.datasource.username=<Enter your AMRIT DB_IDENTITY username>
+spring.datasource.password=<Enter your AMRIT DB_IDENTITY password>
+spring.datasource.driver-class-name=com.mysql.jdbc.Driver
diff --git a/src/main/environment/common_test.properties b/src/main/environment/common_test.properties
index 3b292336..2792334a 100644
--- a/src/main/environment/common_test.properties
+++ b/src/main/environment/common_test.properties
@@ -1,8 +1,5 @@
 # DataSource settings: set here your own configurations for the database
-
 spring.datasource.url=<Enter AMRIT DB_IDENTITY URL here>
 spring.datasource.username=<Enter your AMRIT DB_IDENTITY username>
 spring.datasource.password=<Enter your AMRIT DB_IDENTITY password>
 spring.datasource.driver-class-name=com.mysql.jdbc.Driver
-
-
diff --git a/src/main/java/com/iemr/common/identity/config/BlockingHttpMethodInterceptor.java b/src/main/java/com/iemr/common/identity/config/BlockingHttpMethodInterceptor.java
new file mode 100644
index 00000000..6f42d8b9
--- /dev/null
+++ b/src/main/java/com/iemr/common/identity/config/BlockingHttpMethodInterceptor.java
@@ -0,0 +1,36 @@
+package com.iemr.common.identity.config;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.springframework.context.annotation.Configuration;
+import org.springframework.http.HttpMethod;
+import org.springframework.http.HttpStatus;
+import org.springframework.web.servlet.HandlerInterceptor;
+import org.springframework.web.servlet.ModelAndView;
+
+public class BlockingHttpMethodInterceptor implements HandlerInterceptor {
+	@Override
+    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
+        String method = request.getMethod();
+        if (!("GET".equals(method) || "POST".equals(method))) {
+            response.setStatus(HttpServletResponse.SC_METHOD_NOT_ALLOWED);
+            return false;
+        }
+        return true;
+}
+
+	@Override
+	public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
+			ModelAndView modelAndView) throws Exception {
+		// TODO Auto-generated method stub
+		
+	}
+
+	@Override
+	public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)
+			throws Exception {
+		// TODO Auto-generated method stub
+		
+	}
+}
diff --git a/src/main/java/com/iemr/common/identity/config/InterceptorConfig.java b/src/main/java/com/iemr/common/identity/config/InterceptorConfig.java
index f94c2dd1..1a271529 100644
--- a/src/main/java/com/iemr/common/identity/config/InterceptorConfig.java
+++ b/src/main/java/com/iemr/common/identity/config/InterceptorConfig.java
@@ -35,9 +35,16 @@ public class InterceptorConfig extends WebMvcConfigurerAdapter
 	@Autowired
 	HTTPRequestInterceptor requestInterceptor;
 
+//	@Override
+//	public void addInterceptors(InterceptorRegistry registry)
+//	{
+//		registry.addInterceptor(requestInterceptor);
+//	}
+	
 	@Override
 	public void addInterceptors(InterceptorRegistry registry)
 	{
-		registry.addInterceptor(requestInterceptor);
+		 registry.addInterceptor(new BlockingHttpMethodInterceptor())
+         .addPathPatterns("/**"); 
 	}
 }
\ No newline at end of file
diff --git a/src/main/java/com/iemr/common/identity/utils/CryptoUtil.java b/src/main/java/com/iemr/common/identity/utils/CryptoUtil.java
deleted file mode 100644
index 02d012d8..00000000
--- a/src/main/java/com/iemr/common/identity/utils/CryptoUtil.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package com.iemr.common.identity.utils;
-
-import java.nio.charset.StandardCharsets;
-import java.util.Base64;
-
-import javax.crypto.Cipher;
-import javax.crypto.SecretKey;
-import javax.crypto.spec.SecretKeySpec;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.stereotype.Service;
-
-@Service
-public class CryptoUtil {
-
-	private static final Logger logger = LoggerFactory.getLogger(CryptoUtil.class);
-	private static final String ALGORITHM = "AES";
-	private static final String SECRET_KEY = "dev-envro-secret";
-
-	public String encrypt(String value) throws Exception {
-		SecretKey secretKey = new SecretKeySpec(SECRET_KEY.getBytes(StandardCharsets.UTF_8), ALGORITHM);
-		Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");
-		cipher.init(Cipher.ENCRYPT_MODE, secretKey);
-		byte[] encryptedBytes = cipher.doFinal(addPadding(value).getBytes(StandardCharsets.UTF_8));
-		return Base64.getEncoder().encodeToString(encryptedBytes);
-	}
-
-	public String decrypt(String encryptedValue) {
-		try {
-			SecretKey secretKey = new SecretKeySpec(SECRET_KEY.getBytes(StandardCharsets.UTF_8), ALGORITHM);
-			Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");
-			cipher.init(Cipher.DECRYPT_MODE, secretKey);
-			byte[] decryptedBytes = cipher.doFinal(Base64.getDecoder().decode(encryptedValue));
-			return removePadding(new String(decryptedBytes, StandardCharsets.UTF_8));
-		} catch (Exception e) {
-			logger.error("Exception while decrypting string. Intentionally throwing null pointer", e);
-			return null;
-		}
-	}
-
-	private String addPadding(String value) {
-		int paddingLength = 16 - (value.length() % 16);
-		StringBuilder paddedValue = new StringBuilder(value);
-		for (int i = 0; i < paddingLength; i++) {
-			paddedValue.append((char) paddingLength);
-		}
-		return paddedValue.toString();
-	}
-
-	private String removePadding(String value) {
-		int paddingLength = value.charAt(value.length() - 1);
-		return value.substring(0, value.length() - paddingLength);
-	}
-}
