Code Engine 작업 만들기
사용자 지정 자격증명 비밀 유형을 사용하면 Secrets Manager 사용자가 Secrets Manager API 및 통합을 사용하여 외부 시스템(예: Artifactory, PagerDuty )에 대한 자격증명 수명 주기를 관리할 수 있습니다. 사용자 지정 자격증명 비밀을 만들려면 먼저 IBM Cloud® Code Engine 에서 프로젝트를 설정하고 Secrets Manager 과 자격 증명이 필요한 외부 서비스 간에 인터페이스할 작업을 정의해야 합니다.
사용자 지정 자격 증명은 광범위한 타사 시스템을 지원하므로 Code Engine 작업 구성에 대한 지침은 Code Engine 모범 사례에 초점을 맞춘 일반적인 지침입니다. 매개변수의 형식이 올바르게 지정되고 유효한 Code Engine 프로젝트와 작업을 선택하면 Secrets Manager 에서 다양한 구성으로 작업을 실행할 수 있습니다. 그러나 Secrets Manager 에서는 구성이 특정 사용 사례와 일치하는지 여부를 확인하지 않습니다. 제공된 설정만 실행합니다.
외부 공급자와 상호 작용하기 위한 작업 로직을 구현하는 데 도움이 되도록 Secrets Manager 에서 개발자 문서, 모범 사례, 작업 생성기 및 배포자 도구, 코드 예제를 제공합니다. 사용자 지정 자격증명 공급자 리포지토리에서 새 자격증명 공급자 작업을 디자인하는 방법을 알아보세요.
자격증명 공급자 작업 수명 주기
일반적인 작업 흐름에는 다음이 포함됩니다:
- 새 자격 증명이 생성되는 자격 증명 만들기.
- 자격 증명을 삭제하면 자격 증명이 해지됩니다.
- 비밀 작업을 업데이트하여 결과를 Secrets Manager 으로 다시 보냅니다.
다음 Code Engine 작업 흐름 다이어그램은 이 라이프사이클을 보여줍니다.
Secrets Manager 는 삭제 시도가 실패하면 매일(최대 10일 동안) 자격증명 삭제를 다시 시도합니다. 요청 재시도는 해당되는 경우 권장되지만 명확성을 위해 흐름 다이어그램에서는 생략했습니다. 비밀 작업 업데이트 요청에 대한 400 또는 404 상태 응답은 재시도로 비밀 작업을 업데이트할 수 없음을 나타냅니다.
보안 고려사항
보안을 강화합니다:
- 최소 권한 원칙을 따르세요: 전용 비밀 그룹을 사용하여 필요한 비밀에 대해서만 업무 접근 권한을 제한하세요.
- IAM 역할: 작업에서 인증에 사용하는 API 키를 할당합니다 Secrets Manager SecretTaskUpdater 역할. 작업에서 비밀을 읽어야 하는 경우 해당 작업에도 SecretsReader 역할도 할당하세요. 두 역할 모두 전용 비밀 그룹으로 범위를 지정해야 합니다.
- 개인 식별 정보(PII) 및 기밀 데이터 사용 금지: 개인 식별자나 기밀 데이터(예: 이메일 주소 또는 주민등록번호)를 입력 매개변수나 자격증명 ID로 사용하지 마세요. Secrets Manager 에서는 입력 매개변수와 자격증명 ID를 민감한 비밀 데이터가 아닌 메타데이터로 취급합니다.
오류 처리
자격 증명 공급자 작업에서 자격 증명을 만들거나 삭제할 수 없는 경우 애플리케이션 오류 코드와 사용자 대면 오류 메시지와 함께 Secrets Manager 를 업데이트해야 합니다. 이 오류는 실패한 작업에 대해 Secrets Manager 콘솔에 표시되며 사용자가 수정 조치를 적용할 수 있습니다.
문제점 해결
기본적으로 Secrets Manager 은 완료된 작업을 즉시 제거하도록 Code Engine 을 구성합니다. 이렇게 하면 작업 실행 누적을 방지하고 시간이 지남에 따라 할당량 제한을 초과하는 것을 방지할 수 있습니다. 그러나 개발 중에는 완료된 작업을 유지하여 구성과 로그를 검토하고 싶을 수 있습니다.
Code Engine UI를 사용하여 완료된 작업을 유지하려면:
- IBM Cloud 콘솔에서 컨테이너 → 프로젝트로 이동하여 자격 증명 공급자 프로젝트를 엽니다.
- 프로젝트 페이지에서 작업으로 이동하여 작업 탭을 클릭하고 작업을 선택합니다.
- 구성 페이지에서 환경 변수 탭을 엽니다.
CE_REMOVE_COMPLETED_JOBS변수를 찾아 해당 행을 클릭하여 편집합니다.- 환경 변수 편집 패널에서 값을
IMMEDIATELY(예: 3일)에서4320(3일)로 변경한 다음 완료를 클릭합니다. - 환경 변수 페이지로 돌아가서 배포를 클릭하여 변경 사항을 적용합니다. 이제 완료된 작업 실행은 3일 동안 유지됩니다.
프로덕션 환경에서의 문제 해결을 위해서는 Code Engine 을 Cloud Logs와 통합하는 것이 좋습니다. 설정 지침은 두 서비스의 설명서를 참조하세요.
다음 단계
Code Engine 프로젝트와 작업을 만들었으면 이제 사용자 지정 자격 증명 엔진 구성을 만들 수 있습니다.