diff --git a/customer-apigateway-service/src/main/resources/application.yml b/customer-apigateway-service/src/main/resources/application.yml index f42e06c..508cf62 100644 --- a/customer-apigateway-service/src/main/resources/application.yml +++ b/customer-apigateway-service/src/main/resources/application.yml @@ -1,6 +1,12 @@ server: port: 8000 + ssl: + enabled: true + key-alias: baeldung + key-store-password: 1q2w3e4r! + key-store: classpath:baeldung.p12 + key-store-type: PKCS12 eureka: client: @@ -24,7 +30,7 @@ spring: globalcors: cors-configurations: '[/**]': - allowedOrigins: "http://just-pickup.com:8080" + allowedOrigins: "https://just-pickup.com:8080" allowedMethods: - GET - POST diff --git a/customer-apigateway-service/src/main/resources/baeldung.p12 b/customer-apigateway-service/src/main/resources/baeldung.p12 new file mode 100644 index 0000000..ec10052 Binary files /dev/null and b/customer-apigateway-service/src/main/resources/baeldung.p12 differ diff --git a/customer-vue/.env b/customer-vue/.env index 999a455..e05beaf 100644 --- a/customer-vue/.env +++ b/customer-vue/.env @@ -1,3 +1,3 @@ -VUE_APP_BASEURL=http://just-pickup.com:8080 -VUE_APP_OWNER_SERVICE_BASEURL=http://just-pickup.com:8001 -VUE_APP_CUSTOMER_SERVICE_BASEURL=http://just-pickup.com:8000 \ No newline at end of file +VUE_APP_BASEURL=https://just-pickup.com:8080 +VUE_APP_OWNER_SERVICE_BASEURL=https://just-pickup.com:8001 +VUE_APP_CUSTOMER_SERVICE_BASEURL=https://just-pickup.com:8000 \ No newline at end of file diff --git a/customer-vue/mydomain.key b/customer-vue/mydomain.key new file mode 100644 index 0000000..c5aec78 --- /dev/null +++ b/customer-vue/mydomain.key @@ -0,0 +1,32 @@ +Bag Attributes + friendlyName: apiencryptionkey + localKeyID: 54 69 6D 65 20 31 36 34 36 33 36 35 33 39 30 34 36 38 +Key Attributes: +-----BEGIN PRIVATE KEY----- +MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDRT+5bmhgNxTql +m0y1GKoz1duJItDGfVYnLCVElQclmNtXC/efPHdjtSDVE0m01BgMLoCZ1fD5Lhza +X1rxEabK/bPAUaPK+Yw0pIowKg7uhL5aB8iXKFSlCLS9kLbcQWVNHB/UsOKSRYQj +l7N0t71aTaV1v9tPpNlKwJXemIODahzCp0PBBS0cw4Bw0mw0ATne6+Zt8JmQNn7N +K5bpldAzu9STdm+NET7UtSI+A5DhVvTY0abOCgO/DJAqm2WYgm4hWYbnASe20u8v +Xbb9XOtTIt9a33ZyaQbl3YlQz2P+2C+Yy60dQ5PoqLDNcyDbRRhEA89ljt6ZqTsl +pCCjIV7FAgMBAAECggEAIuomZHlL0eA4bC9/mCXJHmRp/nIkSTfXCym9/bauPoNE +8zw3zgQUFjm8hE53WQaYDFAle4PIcohSn8qQLO442FuBhG8Z113RGWbo9ifN3dOe +vP3XY/+CPxU4sPZWyl7OOxKZ7Kyk3qlh5V4EvU948ntJQl8CgkKJTILbfQoLxfu7 +xWMS+eih5zI0qnhKTT6UqAFfgL6U/Xc+ZUDmsstS1537U8zgbSbYH4OzBpXxijfQ +yxG4J2sB+DO9FKJ71YVers3KNLbvf6Zyp8WCp+1x974sUk2yUXh8e89F8f7M+hVo +mdyNxVYHsMUN5IjectQprBB2hbfoo4hAMaViqpZYgQKBgQD+hEwd70GsMkCEN7Am +ZLpN/fgmjR0VCco/9YVNyevM8X9p0E5Pb8zTahxaP1kq3LrikZ4a+P+1wNpb+IJI +gvnHZWRYmWuh99yuwFmJqDZFXzbU5PnR/yva2RXTmWlCsK6ySdFBxjMiAdXIw3ln +SQK0O6kHTLXLQICtCTWjZW97LQKBgQDSiDHsqF7oDPrK1+HPR/84KL/eLX48xdT4 +w/7ODGoXbC5MLydG8JqQ7D18uWu6+Q53L9GV7AJPaqA8bg6ckZ5Ix3fTqmJfp8ek +y77l7CUC8HP0V+AZ7olfp7dGyA4Cv4pgAcRhXegkjvGpVih9cTny377ar7F93TZU +vZnB5tbQ+QKBgQDSDsxnlFTGUr8uoGtwdIfS4L4SyzpqZ6cVvIQlnHZRsisvYK2R +IDuTbSszTL9CAeT4I6iyqDkbf6x4ZZTZVcfiyorUGONdTR1E2RnM5BjOjnPJp6WL +rKc8OxipiB743KuCGCxtta/z7EHOLY6gMQDbUbYCgUw1EOpiZYxwa8JjjQKBgCI1 +gS88OJeqLEIzi/ybbUwZyvt2FvIXD0EQz+F5QO/nYyp76vzq8aKk0GTo2Cl8eK5D +NeIPhFyVLc5D79nfC4I17zGUmQGECLutY6qGkYkFu0Gz2bU8/lNttCkrLqOhrgFl +qBxOHv95vqjOWCvx7wGY+7EbJVMXU9G3MTnBoZw5AoGBAK/TWl02WbjkpSKPUn82 +3441hSMitxxwGPy1gELtECb87n52lNCOEIPY6Tw2fy1K5R5OoYtV4pvoATymJe8i +DEJobTpYYbi7uggWsNoHo7cKAsUOzdDrbzr3leL8wJmXtvs0tnW33KDv+zDQIc29 +fmd6fpr6VGXmsxEVCLCAP0sY +-----END PRIVATE KEY----- diff --git a/customer-vue/src/api/store.js b/customer-vue/src/api/store.js index 6c685a2..c1a8b8b 100644 --- a/customer-vue/src/api/store.js +++ b/customer-vue/src/api/store.js @@ -10,7 +10,7 @@ export default { page: page } } - return axios.get("http://localhost:8000/store-service/search-store", options); + return axios.get(process.env.VUE_APP_CUSTOMER_SERVICE_BASEURL+"/store-service/search-store", options); }, getCategoryList(){ return axios.get(process.env.VUE_APP_CUSTOMER_SERVICE_BASEURL+'/store-service/category/'); diff --git a/customer-vue/src/main.js b/customer-vue/src/main.js index 06d671f..b8f32fa 100644 --- a/customer-vue/src/main.js +++ b/customer-vue/src/main.js @@ -4,6 +4,7 @@ import vuetify from "@/plugins/vuetify"; import router from "./router/router.js"; import axios from "axios"; import auth from "@/api/auth"; +import jwt from "@/common/jwt"; axios.defaults.withCredentials = true; Vue.config.productionTip = false @@ -14,6 +15,12 @@ new Vue({ render: h => h(App), }).$mount('#app') +axios.interceptors.request.use(function (config) { + config.headers.Authorization = "Bearer " + jwt.getToken(); + return config; +}); + + axios.interceptors.response.use( (response) => { return response; diff --git a/customer-vue/trustService.cer b/customer-vue/trustService.cer new file mode 100644 index 0000000..59aaf3e --- /dev/null +++ b/customer-vue/trustService.cer @@ -0,0 +1,21 @@ +-----BEGIN CERTIFICATE----- +MIIDdzCCAl+gAwIBAgIEVZNDtTANBgkqhkiG9w0BAQsFADBsMQswCQYDVQQGEwJL +UjEOMAwGA1UEBxMFU2VvdWwxHTAbBgNVBAoTFGpvbmVjb25zdWx0aW5nLmNvLmty +MRgwFgYDVQQLEw9BUEkgRGV2ZWxvcG1lbnQxFDASBgNVBAMTC0tlbm5ldGggTGVl +MB4XDTIyMDMwNDAzMzc0N1oXDTIyMDYwMjAzMzc0N1owbDELMAkGA1UEBhMCS1Ix +DjAMBgNVBAcTBVNlb3VsMR0wGwYDVQQKExRqb25lY29uc3VsdGluZy5jby5rcjEY +MBYGA1UECxMPQVBJIERldmVsb3BtZW50MRQwEgYDVQQDEwtLZW5uZXRoIExlZTCC +ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANFP7luaGA3FOqWbTLUYqjPV +24ki0MZ9VicsJUSVByWY21cL9588d2O1INUTSbTUGAwugJnV8PkuHNpfWvERpsr9 +s8BRo8r5jDSkijAqDu6EvloHyJcoVKUItL2QttxBZU0cH9Sw4pJFhCOXs3S3vVpN +pXW/20+k2UrAld6Yg4NqHMKnQ8EFLRzDgHDSbDQBOd7r5m3wmZA2fs0rlumV0DO7 +1JN2b40RPtS1Ij4DkOFW9NjRps4KA78MkCqbZZiCbiFZhucBJ7bS7y9dtv1c61Mi +31rfdnJpBuXdiVDPY/7YL5jLrR1Dk+iosM1zINtFGEQDz2WO3pmpOyWkIKMhXsUC +AwEAAaMhMB8wHQYDVR0OBBYEFJIAY9oDnROlKibW2EOHoD3j1GyaMA0GCSqGSIb3 +DQEBCwUAA4IBAQDQZzV1JKs0KMHBABhTjLFyIjOLcmyJpG0v06b10yqoOpRuCH0X +V4A72tUYvWwhT2qwfi8qb9ldBv1jSjOUnVwZ+G6dNAXKt2oUmOaQbQmqLgHR6OCL +Q4e7ovaqSV26+2KBM9baJrDwWVwsC2jtQ00N4sypbo+/6W8WxeeWJNx1STIKp2t7 +nk0N+2EEf4EZeUE4jkEgt4bCnVnVhhBqFdeMVpvLond2I2tS/OK4lc0Ctn+0meNv +moBdX7GbOVnBzm+fpXTab/feMF5ikzB9xPLURIIknhrU/k6wu1YNBiYUSgQtjWCt +NJi8m1ZHWPfw5gmoSTa60cNxts/RCoRV124p +-----END CERTIFICATE----- diff --git a/customer-vue/vue.config.js b/customer-vue/vue.config.js index 99fd690..2a394eb 100644 --- a/customer-vue/vue.config.js +++ b/customer-vue/vue.config.js @@ -1,6 +1,12 @@ +const fs = require("fs"); module.exports = { transpileDependencies: true, devServer:{ allowedHosts: 'all', + https: { + key: fs.readFileSync('mydomain.key'), + cert: fs.readFileSync('trustService.cer'), + } + } } diff --git a/user-service/src/main/java/com/justpickup/userservice/domain/jwt/service/OAuthService.java b/user-service/src/main/java/com/justpickup/userservice/domain/jwt/service/OAuthService.java index ce8ffde..76363a9 100644 --- a/user-service/src/main/java/com/justpickup/userservice/domain/jwt/service/OAuthService.java +++ b/user-service/src/main/java/com/justpickup/userservice/domain/jwt/service/OAuthService.java @@ -106,7 +106,7 @@ public class OAuthService implements OAuth2UserService