기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
JDBC를 사용하여 데이터베이스에 연결
이 가이드에서는 Java Database Connectivity(JDBC)를 사용하여 데이터베이스를 Amazon Connect Decisions에 연결하는 방법을 안내합니다. 데이터베이스 자격 증명에 대한 보안 암호화를 설정하고 Amazon Connect Decisions가 데이터에 액세스하는 데 사용할 수 있는 연결을 설정합니다.
JDBC 연결이란 무엇이며 언제 사용해야 합니까?
JDBC 연결을 사용하면 Amazon Connect Decisions가 CSV 파일을 내보내고 업로드하거나 자체 추출, 변환, 로드(ETL) 파이프라인을 S3로 설정할 필요 없이 기존 데이터베이스에 연결하여 데이터를 읽을 수 있습니다. 이 접근 방식은 다음과 같은 경우에 이상적입니다.
-
데이터가 AWS Glue 호환 관계형 데이터베이스에 이미 저장되어 있습니다. 호환되는 데이터베이스 및 버전은 이 가이드를 참조하세요.
-
수동 파일 내보내기 없이 실시간 또는 near-real-time 데이터 액세스를 원하는 경우
-
데이터 볼륨이 크고 자주 업데이트됨
-
데이터를 복제하는 대신 현재 위치에 보관하는 것이 좋습니다.
-
더 작은 데이터 세트로 작업하거나 파일 기반 업로드를 선호하는 경우 필요에 따라 표준 CSV 업로드 프로세스가 더 간단할 수 있습니다. 이 프로세스에 대한 자세한 내용은 데이터 온보딩 사용 설명서를 참조하세요.
사전 조건
시작하기 전에 다음을 갖추었는지 확인하세요.
-
KMS 키 및 Secrets Manager 리소스를 생성할 수 있는 권한이 있는 AWS 계정
-
AWS 계정 ID 및 Amazon Connect 결정이 운영될 리전
-
데이터베이스 연결 세부 정보: 호스트 이름, 포트, 데이터베이스 이름 및 자격 증명
-
연결을 확인하기 위한 데이터베이스에 대한 관리 액세스
-
AWS 서비스의 연결을 수락하도록 구성된 데이터베이스
고객 관리형 KMS 키 생성
데이터베이스를 Amazon Connect Decisions에 연결하기 전에 데이터베이스 자격 증명에 대한 암호화를 설정해야 합니다. AWS Key Management Service (KMS)는이 보안 계층을 제공하여 연결 세부 정보를 보호합니다.
KMS 키 생성
-
AWS KMS 콘솔로 이동
-
브라우저에서 AWS Management Console을 엽니다.
-
상단의 검색 창에 "KMS"를 입력하고 결과에서 "Key Management Service"를 선택합니다.
-
그러면 암호화 키를 관리할 KMS 대시보드가 열립니다.
-
-
키 생성 시작
-
KMS 대시보드에서 오른쪽 상단의 키 생성 버튼을 찾아 클릭합니다.
-
그러면 설정 프로세스를 안내하는 키 생성 마법사가 시작됩니다.
-
-
키 유형 및 사용량 구성
-
"키 구성" 페이지에서 키 유형으로 대칭을 선택합니다(기본 및 권장 옵션).
-
키 사용에서 "암호화 및 복호화"를 선택한 상태로 유지
-
-
키 식별 세부 정보 설정
-
"별칭" 필드에 다음과 같이 키를 설명하는 이름을 입력합니다.
aws-supply-chain-database-key -
"설명" 필드에 "Amazon Connect Decisions 데이터베이스 자격 증명의 암호화 키"와 같은 컨텍스트를 추가합니다.
-
선택적으로 AWS 리소스를 구성하고 추적하는 데 도움이 되는 태그를 추가합니다(예: 키: "프로젝트", 값: "Amazon Connect 결정").
-
-
키 관리 권한 정의
-
이 키를 관리할 수 있어야 하는 IAM 사용자 또는 역할 선택(정책 생성, 삭제, 수정)
-
필요한 경우 나중에 키를 수정할 수 있도록 최소한 자체 관리자 역할을 포함합니다.
-
이러한 관리자는 키를 관리할 수 있지만 암호화/암호 해독에 사용할 수 있는 권한은 자동으로 없습니다.
-
"키 삭제" 섹션에서 키 관리자가이 키를 삭제하도록 허용합니다(기본 및 권장 옵션).
-
-
키 사용 권한 정의
-
이 페이지에는 키를 사용할 수 있는 IAM 사용자 및 역할을 선택하는 옵션이 표시됩니다.
-
여기에서 특정 사용자 선택을 건너뛰면 다음 단계에서 서비스 권한을 구성합니다.
-
-
Amazon Connect Decisions 서비스에 대한 키 정책 구성
-
기본 JSON이 있는 정책 편집기가 표시됩니다.
-
KMS 키 정책 편집기에서 기존 "Statement" 배열에 다음 문을 추가합니다.
-
이 정책은 계정에 모든 권한을 부여하고 Amazon Connect Decisions의 서비스(Secrets Manager 및 Glue)가 데이터베이스 자격 증명을 해독하도록 허용합니다.
{ "Sid": "Allow GDIS service to decrypt", "Effect": "Allow", "Principal": { "Service": "scn.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:DescribeKey", "kms:CreateGrant", "kms:GenerateDataKeyWithoutPlaintext" ], "Resource": "*" } -
-
검토 및 완료
-
요약 페이지에서 모든 구성 설정 검토
-
별칭, 설명 및 정책이 올바른지 확인
-
완료를 클릭하여 키를 생성합니다.
-
생성되면 새 키가 목록에 나타나는 KMS 대시보드로 돌아갑니다.
-
기대할 수 있는 사항
키 생성은 즉시 이루어집니다. 생성되면 KMS 콘솔에 "Enabled" 상태의 새 키가 나열됩니다. 이제 키가 Secrets Manager에서 데이터베이스 자격 증명을 암호화할 준비가 되었습니다.
AWS Secrets Manager 구성
이제 KMS 키가 있으므로 AWS Secrets Manager에서 보안 암호를 생성하여 데이터베이스 자격 증명을 안전하게 저장한 다음 Amazon Connect Decisions가이 보안 암호에 액세스할 수 있도록 허용하는 리소스 정책을 구성합니다.
보안 암호 생성
-
AWS Secrets Manager로 이동
-
AWS Management Console 검색 창에 "Secrets Manager"를 입력합니다.
-
결과에서 "Secrets Manager"를 선택하여 서비스 대시보드를 엽니다.
-
-
새 보안 암호 생성 시작
-
새 보안 암호 저장 버튼을 클릭합니다.
-
"보안 암호 유형 선택" 페이지에서 다른 유형의 보안 암호를 선택합니다(이렇게 하면 보안 인증 정보를 유연하게 구성할 수 있음).
-
-
데이터베이스 자격 증명 입력
-
키-값 페어 섹션에서 데이터베이스 연결 세부 정보를 문자열로 추가합니다.
Key: username, Value: your database username Key: password, Value: your database password Key: host, Value: your database hostname (e.g., database.example.com) Key: port, Value: your database port (e.g., 3306 for MySQL) Key: database, Value: your database name -
-
암호화 키 선택
-
"암호화 키"에서 AWS KMS 키 선택을 선택합니다.
-
드롭다운에서 1단계에서 생성한 KMS 키(예:
aws-supply-chain-database-key)를 선택합니다. -
이렇게 하면 자격 증명이 고객 관리형 키로 암호화됩니다.
-
-
보안 암호 이름 지정
-
와 같이 암호를 설명하는 이름을 입력합니다.
aws-supply-chain-production-database -
선택적으로 "Amazon Connect Decisions 프로덕션 환경의 데이터베이스 자격 증명"과 같은 설명을 추가합니다.
-
조직에 필요한 경우 태그를 추가합니다(예: 키: "Environment", 값: "Production").
-
-
리소스 권한 추가
-
"권한 편집"을 클릭합니다. 정책 편집기에서 다음 정책을 붙여 넣습니다. 이 정책은 Amazon Connect Decisions의 서비스가 보안 암호를 읽도록 허용합니다.
{ "Version" : "2012-10-17", "Statement" : [ { "Effect" : "Allow", "Principal" : { "Service" : "scn.amazonaws.com" }, "Action" : [ "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret" ], "Resource" : "<COPY-THE-SECRET-ARN-HERE-AFTER-CREATING>" } ] } -
-
정책 저장
-
저장을 클릭하여 리소스 정책을 적용합니다.
-
이제 정책이 활성화되어 Amazon Connect Decisions가 데이터베이스 자격 증명을 검색할 수 있습니다.
-
-
교체 구성(선택 사항)
-
이 설정의 경우 자동 교체 비활성화를 선택하여 자동 교체를 건너뛸 수 있습니다.
-
보안 정책에 필요한 경우 나중에 교체를 활성화할 수 있습니다.
-
-
검토 및 생성
-
모든 보안 암호 세부 정보 검토
-
저장을 클릭하여 보안 암호를 생성합니다.
-
Secrets Manager 대시보드로 돌아갑니다.
-
-
보안 암호 ARN 저장
-
보안 암호 목록에서 새로 생성된 보안 암호를 찾습니다.
-
보안 암호 이름을 클릭하여 세부 정보 페이지를 엽니다.
-
상단에 보안 암호 ARN이 표시됩니다.
-
이 ARN 복사 및 저장
-
ARN 형식은 다음과 같습니다.
arn:aws:secretsmanager:us-east-1:123456789012:secret:aws-supply-chain-production-database-AbCdEf
-
-
리소스 권한 편집
-
"권한 편집"을 클릭합니다.
-
복사한 보안 암호 ARN을 붙여넣고를 복사한 ARN
<COPY-THE-SECRET-ARN-HERE-AFTER-CREATING>으로 바꿉니다. -
저장을 클릭하여 정책을 연결합니다.
-
기대할 수 있는 사항
이제 보안 암호가 안전하게 저장되고 KMS 키로 암호화됩니다. Amazon Connect Decisions의 서비스는 데이터베이스 연결을 설정할 때 자격 증명을 검색할 수 있는 권한이 있지만 자격 증명은 저장 및 전송 중에 암호화된 상태로 유지됩니다.
데이터베이스를 Amazon Connect 결정에 연결
KMS 키와 보안 암호가 구성되면 Amazon Connect 결정에서 JDBC 연결을 설정할 준비가 된 것입니다.
JDBC 연결 구성
-
Amazon Connect 결정 > 데이터 관리로 이동
-
Amazon Connect Decisions 인스턴스에 로그인
-
기본 탐색에서 "데이터 관리"를 선택합니다.
-
탭 탐색 내에서 "연결"로 이동합니다.
-
"새 연결"을 선택하여 새 연결을 생성합니다.
-
-
연결 세부 정보 입력
-
연결 이름(필수):이 연결의 고유 식별자를 입력합니다(예: "production-database").
-
설명(선택 사항): 팀이 액세스하는 데이터를 이해하는 데 도움이 되도록이 연결의 용도 및 사용에 대한 세부 정보를 추가합니다.
-
JDBC URL(필수): 전체 JDBC 연결 문자열을 형식으로 입력합니다
jdbc:<database-type>://<hostname>:<port>/<database>(예:jdbc:postgresql://db.example.com:5432/mydb). -
스키마 이름(선택 사항): 필요한 경우 데이터베이스 스키마를 지정합니다(예: "public", "dbo", "myschema"). 데이터베이스의 기본 스키마를 사용하려면 비워 둡니다.
-
보안 암호 ARN(필수): 2단계에서 저장한 보안 암호 ARN을 붙여넣습니다. 이렇게 하면 Amazon Connect Decisions가 Secrets Manager에서 데이터베이스 자격 증명을 안전하게 검색할 수 있습니다.
-
SSL 연결 적용: 데이터베이스 연결에 SSL/TLS 암호화를 요구하려면이 확인란을 선택(권장) 상태로 유지합니다.
-
VPC 엔드포인트 서비스 이름(필수): AWS PrivateLink를 통한 프라이빗 연결을 위해 VPC 엔드포인트 서비스 이름을 입력합니다(형식:
com.amazonaws.vpce.<region>.vpce-svc-xxxxxxxxx).
-
-
데이터베이스에 연결
-
"Connect"를 클릭하여 연결을 테스트하고 설정합니다. Amazon Connect Decisions는 제공된 자격 증명을 사용하여 데이터베이스에 성공적으로 연결할 수 있는지 확인합니다. 이 단계는 최대 2분이 걸릴 수 있으므로 연결 중에이 화면을 벗어나지 마십시오.
-
연결이 성공하면 테이블 선택으로 자동 이동합니다.
-
연결에 실패하는 경우:
-
연결 세부 정보를 검토하여 모든 필드가 정확한지 확인합니다.
-
보안 암호 ARN이 올바른지 확인
-
데이터베이스 자격 증명이 정확한지 확인
-
JDBC URL 형식이 올바른지 확인
-
AWS 서비스의 연결을 수락하도록 데이터베이스가 구성되어 있는지 확인합니다.
-
KMS 키 및 Secrets Manager 정책이 올바르게 구성되었는지 확인
-
-
채팅 경험을 사용하여 "내 데이터베이스 연결이 실패하는 이유는 무엇입니까?"와 같은 질문을 하여 연결 문제를 해결할 수도 있습니다. 또는 "JDBC 연결을 디버깅할 수 있도록 도와주세요"
-
-
-
수집할 테이블 선택
-
연결되면 데이터베이스에서 사용 가능한 모든 테이블을 보여주는 테이블 선택 화면이 표시됩니다.
-
수집하려는 각 테이블 옆의 확인란을 선택합니다.
-
-
테이블 새로 고침 일정 구성
-
선택한 각 테이블에 대해 작업 열에서 점 3개 메뉴를 클릭하고 "Schedule refresh"를 선택합니다.
-
로드 세부 정보 구성 대화 상자에서 다음을 설정합니다.
-
Cadence: 새로 고침 빈도(시간별, 일별, 주별 또는 사용자 지정)
-
시작 시간: 새로 고침이 시작되는 시간(시간대 오프셋과 함께 UTC로 표시됨)
-
새로 고침 유형: 새로 고침 완료(모든 데이터 교체) 또는 증분 업데이트(기존에 새 데이터 추가, 타임스탬프 기록 열 선택 필요)를 선택합니다.
-
필요에 따라 각 테이블에 대해 반복합니다.
-
-
모든 테이블이 구성되면 매핑 시작을 클릭합니다.
-
-
데이터 매핑 계속
-
이 시점부터 경험은 데이터 온보딩 흐름과 동일합니다.
-
데이터 온보딩 사용 설명서의 데이터 매핑 섹션에 따라 설정을 완료합니다.
-
기대할 수 있는 사항
연결이 설정되고 테이블이 선택되면 Amazon Connect Decisions는 데이터베이스에서 데이터를 읽을 수 있습니다. AWS Secrets Manager를 통해 암호화되고 관리되는 자격 증명을 사용하여 연결이 활성 상태로 안전하게 유지됩니다. Amazon Connect 결정에서 자격 증명을 수동으로 업데이트할 필요가 없습니다. Secrets Manager에서 변경한 내용은 자동으로 반영됩니다.
모범 사례
보안 및 액세스 관리
-
보안 인증 정보 저장: 항상 AWS Secrets Manager를 사용하여 데이터베이스 보안 인증 정보를 저장하고 연결 문자열 또는 구성 파일에 보안 인증 정보를 하드코딩하지 않습니다.
-
SSL/TLS 암호화 활성화: 전송 중 데이터가 암호화되도록 'SSL 연결 적용' 옵션을 활성화된 상태로 유지합니다.
-
KMS 및 Secrets Manager 정책을 정기적으로 검토: 승인된 서비스 및 계정만 암호화 키 및 보안 암호에 액세스할 수 있는지 확인합니다.
-
최소 권한 액세스 사용: Amazon Connect Decisions가 연결에 사용할 데이터베이스 사용자에게 필요한 최소 권한만 부여합니다.
연결 구성
-
설명 연결 이름 사용: 환경 및 목적을 나타내는 명확하고 의미 있는 이름을 선택합니다(예: "db1"이 아닌 "production-inventory-db").
-
연결 문서화: 설명 필드를 사용하여 연결이 액세스하는 데이터, 연결을 소유한 사람 및 특별한 고려 사항을 기록해 둡니다.
-
계속하기 전에 연결 테스트: 테이블을 선택하고 새로 고침 일정을 구성하기 전에 항상 연결이 작동하는지 확인합니다.
-
JDBC URL 형식 검증: 연결 오류를 방지하려면 JDBC URL 구문이 데이터베이스 유형과 일치하는지 다시 확인합니다.
데이터 새로 고침 전략
-
적절한 새로 고침 주기 선택: 소스 데이터가 변경되는 빈도와 비즈니스 요구 사항에 따라 새로 고침 빈도를 선택합니다.
-
활동이 적은 기간 동안 새로 고침 예약: 성능 영향을 최소화하기 위해 데이터베이스의 부하가 낮을 때 새로 고침 시간 구성
-
가능한 경우 증분 업데이트 사용: 자주 변경되는 대규모 데이터 세트의 경우 증분 업데이트가 전체 새로 고침보다 더 효율적입니다.
-
의미 있는 타임스탬프 열 선택: 증분 업데이트를 사용하는 경우 레코드가 생성되거나 수정된 시기를 정확하게 반영하는 열을 선택합니다.
문제 해결을 위한 채팅 작업
-
요청에 구체적으로 명시: 연결 또는 매핑 문제 해결에 도움을 요청할 때 명확한 컨텍스트 제공
-
설명 요청: 권장 사항 또는 생성된 SQL 쿼리를 이해하지 못하는 경우 설명을 요청합니다.
-
수락하기 전에 모든 SQL 변경 사항 테스트: 미리 보기 기능을 사용하여 변환이 실제 데이터와 함께 예상대로 작동하는지 확인합니다.
-
채팅을 활용하여 문제 해결: 연결에 실패하거나 새로 고침에 오류가 발생하면 "내 연결이 실패하는 이유는 무엇입니까?"와 같은 진단 질문을 합니다. 또는 "이 새로 고침 오류를 이해하도록 도와주세요"
지속적 유지 관리
-
새로 고침 실행을 정기적으로 모니터링: 데이터 관리의 대상 및 소스 탭을 확인하여 새로 고침이 성공적으로 완료되었는지 확인합니다.
-
오류 즉시 해결: Amazon Connect Decisions에서 오류를 새로 고치라는 알림을 받으면 데이터 격차를 방지하기 위해 문제를 신속하게 조사하고 해결합니다.
-
보안 인증 정보 업데이트: 데이터베이스 암호가 변경되면 AWS Secrets Manager에서 업데이트하면 Amazon Connect Decisions에서 새 보안 인증 정보를 자동으로 사용합니다.
-
사용자 지정 구성 문서화: 팀 참조를 위해 특별 새로 고침 일정, 변환 로직 또는 연결 요구 사항에 대한 메모를 보관합니다.
-
테이블 선택 항목 주기적으로 검토: 데이터 요구 사항이 발전함에 따라 수집 중인 테이블과 새로 고침 일정이 여전히 비즈니스 요구 사항에 맞는지 다시 검토합니다.