SHIELDRM 인증/인가 서비스 연동
클러스터에 문서 변환 서비스, MIP 변환 서비스를 올리기 전에 작업하여야 합니다.
1. master-tenant에 앱 서비스 등록
- 인증/인가 구축 시 최초 1회 등록, 이후에 테넌트가 추가되도 변경하지 않아도 됩니다.
- 문서 변환 서비스 (cloud-ss-evtr-svc) 에서 사용할 앱 서비스를 등록합니다.
- master-tenant에 등록하므로 최초 1회만 등록하면 됩니다.
1-1. master-tenant 에 shieldrm-svc 앱 서비스 등록
(1) master-tenant에 shieldrm-svc 앱 서비스를 등록합니다.
token 접근 범위 : CompanyInfo.ReadWrite, Profile.ReadWrite, UserInfo.Read
접근 범위 | 비고 |
---|---|
ClientAppInfo.ReadWrite | 2023-03-31 에 추가 |
CompanyInfo.ReadWrite | |
Profile.ReadWrite | |
UserInfo.Read |
(2) kube-deploy.yaml 에 환경변수 수정 [내용 수정 필요]
apiVersion: v1
kind: ConfigMap
metadata:
name: cloud-ssevtr-config
namespace: dev
data:
#인증/인가 서비스 URL
SC_AUTH_SERVER_URL: "https://devlogin.softcamp.co.kr/"
#인증/인가 서비스에 등록한 shiedrm-svc의 client ID
SC_AUTH_CLIENT_ID: "144b38de-5cd4-44ac-a389-842d13995f67"
#인증/인가 서비스에 등록한 shiedrm-svc의 client Secret
SC_AUTH_CLIENT_SECRET: "JignJy0pKyYnLSonJyMrJyciJSImKywkKCYpJi0qLCM"
#인증/인가 서비스의 master-tenant Company ID
SC_AUTH_MASTER_COMPANY_ID: "uFhoVIZI-wni6zwDS-E6xGXPqT-m2ms8GWh"
SCSL_KEY_FILE_DIR: "/rmswork/KeyFile/"
MIP_SHARED_DIR: "/rmswork/"
MIP_SERVICE_URL: "http://mip-restapi.dev.svc.cluster.local"
DOWNLOAD_DIR: "/Download/"
1.2 "shieldrm-svc-CONFIG-PROFILE" 빌트인 프로파일에 Azure App 정보 등록
master-tenant의 빌트인 프로파일에 "Security365" 앱 정보 등록이 필요합니다.
Azure App 정보 등록 업데이트 안내
1.2.1 기존 방식 (Deprecated)
주의: 아래 방식은 더 이상 지원되지 않습니다.
기존 방식은 Add-in 설치 시에 사용되며 Add-in 설치 의 경우 Graph API 를 사용하는 목적 으로 사용하고 있지 않습니다. 주로 공용앱을 설정하게 됩니다. 예(Security 365 앱)
| Key | Value |
| ------------------ | ------------------------------------- |
| AZURE_CLIENTID | 7e82e70d-4386-419d-9dfd-6c8d6e6068 |
| AZURE_CLIENTSECRET | Q8d7Q~LjUDZ0CSgT35TkqYxvsN4KtQxf_0 |
1.2.2. 새로운 방식
새롭게 추가된 AZURE_APPINFO 키를 사용하여 정보를 등록할 때, 여러 가지 주의사항이 있습니다.
## 1.2.2.1 멀티 정보 및 단일 정보 사용
새롭게 추가된 AZURE_APPINFO
키는 멀티 정보를 배열 형식으로 받아들입니다. 여러 개의 Azure 앱 정보를 한번에 등록할 수 있습니다.
하지만 1개의 앱 정보만 사용하고 싶은 경우, 1개의 아이템만 배열에 포함시켜 등록할 수 있습니다.
| Key | Value |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| AZURE_APPINFO| [{"AZURE_CLIENTID":"05493eb8-caa3-4ccc-b373-d6f26d10..","AZURE_CLIENTSECRET":"2W18Q~2KxpfaEWs9pUPwkuRO3GErgkB0AhuO.."}, ...] |
다중 앱 정보 등록
[
{
"AZURE_CLIENTID":"05493eb8-caa3-4ccc-b373-d6f26d10..",
"AZURE_CLIENTSECRET":"2W18Q~2KxpfaEWs9pUPwkuRO3GErgkB0AhuO.."
},
{
"AZURE_CLIENTID":"a80203ad-ff36-40c9-a57b-659725d29..",
"AZURE_CLIENTSECRET":"zyh8Q~JlTaT9mNgSPjXiiQ7em3i.."
},
{
"AZURE_CLIENTID":"e309b87b-c60c-44f2-9bb0-ac723b96c..",
"AZURE_CLIENTSECRET":"kpZ8Q~PfQA1bc4LDEDqV4X3MytAtBw.."
}
]
단일 앱 정보 등록
[
{
"AZURE_CLIENTID":"05493eb8-caa3-4ccc-b373-d6f26d10..",
"AZURE_CLIENTSECRET":"2W18Q~2KxpfaEWs9pUPwkuRO3GErgkB0AhuO.."
}
]
이 배열 형식을 사용하여 여러 Azure 앱의 정보를 순차적으로 등록할 수 있습니다. 각 아이템은 AZURE_CLIENTID
와 AZURE_CLIENTSECRET
의 쌍으로 구성됩니다.
1.2.2.2 값의 암호화
AZURE_APPINFO
에 입력하는 값은 평문으로 사용되지 않습니다. 대신, Jasypt Online Encryption & Decryption tool을 사용하여 암호화된 값을 넣어야 합니다.
암호화 방법:
- 위의 링크로 이동하여 Jasypt 암호화 툴을 엽니다.
- "Input" 항목에 평문 정보를 입력합니다.
- "Password" 항목에
softcamp1!
를 입력합니다. - "Encrypt" 버튼을 클릭하여 값을 암호화합니다.
- 암호화된 값이 출력되면, 이 값을
AZURE_APPINFO
에 입력합니다.
예시:
암호화된 값 샘플:
kTRvtyDmS1g12CIgBAliyTNUtO+DIqrZlmiaxyQ2gMa9oqFuCrRZKxHrPi5TfgUIJ8if8d5mGMGJqaZ/qkhgdTt9WZRvdirGIL+bHiuNFThHk+c0lE521miOoTS7cx1DZYQezC+YLaTW5S0H/wc/sGeLDvhX0unOrmzzuuRBY6J7BbsR01kI8Zrge7QEmHaYHHEvFaBXqfJx9BnPsAm4FgUfistqTETrx/K+OCYOdM93YZsLU9ZLS6P1QdMswAipkktpiqTgOBt9i62DdKHIMEdP+r++oHxf99Tm4pB9KQPZg2k1mOazDDr9gOmhud/FKCLdGpP5CpC7ESPtxm3da3AIT1I+ef7L8i0DNL1f9dApqzsfWu7G+az1XIC124OtLMozrw1j9Shf+3Fdq2dYzovpORhX8AE71wspNt6S3BMvc115MtTuc5CvEqzadU98wyluZU+QYbtl7oQXl8rvGbhnQIQGEAT396Guh31Arhw=