써드파티 인증 기관 연결

IBM Cloud® Secrets Manager을(를) 사용하면 인스턴스에 구성을 추가하여 써드파티 인증 기관에 연결할 수 있습니다.

인증 기관(CA)은 SSL/TLS 인증서를 서명하고 발행하는 엔티티입니다. CA 구성을 추가하여 Secrets Manager를 통해 공용 인증서 주문 시 사용하고자 하는 기관을 지정할 수 있습니다.

인스턴스당 최대 10개의 인증 기관 구성을 정의할 수 있습니다. 인스턴스에 사용할 수 있는 구성 목록을 보려면 Secrets Manager UI의 시크릿 엔진 > 공용 인증서 페이지로 이동하십시오.

인스턴스당 최대 10개의 인증 기관 구성을 정의할 수 있습니다. 인스턴스에 사용할 수 있는 구성 목록을 얻으려면 구성 나열 API를 사용할 수 있습니다.

시작하기 전에

시작하기 전에 필수 액세스 레벨이 있는지 확인하십시오. 인스턴스의 엔진 구성을 관리하려면 관리자 서비스 역할 이상이 필요합니다.

지원되는 인증 기관

다음 인증 기관을 Secrets Manager 서비스 인스턴스와 통합할 수 있습니다.

전제 조건 - 암호화 시작하기
전제조건

Let's Encrypt를 연결하기 전에 다음 사항을 확인하세요:

  • ACME(자동 인증서 관리 환경) 계정과 연결된 개인 키를 받습니다.
    ACME 프로토콜을 사용하면 사용자 개입 없이 브라우저에서 신뢰된 인증서를 자동으로 얻을 수 있습니다. Secrets Manager 를 통해 Let's Encrypt 인증서를 요청하려면 먼저 ACME 계정이 있어야 합니다. 이미 작동 중인 ACME 계정이 있는 경우 계정을 처음 만들 때 생성한 비공개 키가 필요합니다.

  • 선택 사항입니다: ACME 계정을 만듭니다.
    기존 ACME 클라이언트나 계정이 없는 경우 ACME 계정 생성 도구를 사용하여 계정을 만들 수 있습니다.

인증 기관은 인증서를 주문하거나 갱신할 때 비용을 적용할 수 있습니다. 또한 다양한 속도 한계가 적용됩니다. Secrets Manager에서는 인증서 주문과 연관된 비용 또는 비율 한계를 제한하지 않습니다. 렛츠 인크립트 인증서를 주문할 때 염두에 두어야 할 요금 제한에 대한 자세한 내용은 렛츠 인크립트 설명서를 확인하세요.

UI에 인증 기관 구성 추가하기

Secrets Manager UI를 사용하여 서비스 인스턴스에 인증 기관 구성을 추가할 수 있습니다.

  1. 콘솔에서 메뉴 아이콘 메뉴 아이콘 > 리소스 목록을 클릭하십시오.

  2. 서비스 목록에서 Secrets Manager의 인스턴스를 선택하십시오.

  3. 시크릿 엔진 페이지에서 공용 인증서 탭을 클릭하십시오.

  4. 인증 기관 테이블에서 추가를 클릭하십시오.

  5. 사용할 인증 기관을 선택하십시오. 현재, Let's Encrypt가 지원됩니다.

    1. 프로덕션 환경을 대상으로 하려면 Let's Encrypt를 선택하십시오.
    2. 스테이징 환경을 대상으로 지정하려면 **Let's Encrypt(스테이징)**를 선택하십시오. 아직 프로덕션 준비가 되지 않은 인증서를 발행하려면 이 옵션을 선택하십시오.
  6. ACME 계정과 연관된 PEM 형식으로 개인 키 파일을 추가하거나 값을 입력하십시오.

  7. 추가 를 클릭하십시오.

    이제 인증서를 주문할 때 이 구성을 선택할 수 있습니다. 기존 구성을 수정하거나 제거하려면 업데이트할 구성의 행에서 조치 메뉴 조치 아이콘를 클릭하십시오.

CLI에서 인증 기관 구성 추가하기

Secrets Manager CLI를 사용하여 서비스 인스턴스에 인증 기관 구성을 추가할 수 있습니다.

구성을 추가하려면 ibmcloud secrets-manager configuration-create 명령을 실행하십시오.

ibmcloud secrets-manager configuration-create '{
  config_type": "public_cert_configuration_ca_lets_encrypt",
  "lets_encrypt_environment": "production",
  "lets_encrypt_private_key": "-----BEGIN PRIVATE KEY-----\nMY_PRIVATE_KEY_WITH_NEWLINES_TRANSFORMED_TO_\N_CHARS-----...", "name": "my-lets-encrypt-config"
  }'

API를 사용하여 인증 기관 구성 추가하기

Secrets Manager API를 사용하여 서비스 인스턴스에 인증 기관 구성을 추가할 수 있습니다.

다음 예제는 Let's Encrypt에 대한 구성을 추가하는 데 사용할 수 있는 쿼리를 보여 줍니다. API를 호출할 때 private_key 값을 ACME 계정과 연결된 개인 키로 바꿉니다.

Secrets Manager API에서 올바르게 구문 분석할 수 있도록 개인용 키 파일을 단일 행 형식으로 변환해야 합니다. 다음 UNIX 명령을 사용하여 파일을 단일 행 문자열로 형식화할 수 있습니다. awk 'NF {sub(/\r/, ""); printf "%s\\n",$0;}' <private_key_file>

curl -X POST
  --H "Authorization: Bearer {iam_token}" \
  --H "Accept: application/json" \
  --H "Content-Type: application/json" \
  --d '{
    "config_type": "public_cert_configuration_ca_lets_encrypt",
    "lets_encrypt_environment": "production",
    "lets_encrypt_private_key": "-----BEGIN PRIVATE KEY-----\nMIIEowIBAAKCAQEAqcRbzV1wp0nVrPtEpMtnWMO6Js1q3rhREZluKZfu0Q8SY4H3",
    "name": "lets-encrypt-config"
  }' \
    "https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/configurations"

응답에 성공하면 서비스 인스턴스에 구성을 추가합니다. 필수 및 선택 요청 매개변수에 대한 자세한 내용은 구성 추가를 참조하세요.

Terraform으로 인증 기관 구성 추가하기

다음 예는 루트 인증 기관을 만드는 데 사용할 수 있는 구성을 보여줍니다.

    resource "ibm_sm_public_certificate_configuration_ca_lets_encrypt" "my_lets_encrypt_config" {
        instance_id = local.instance_id
        region = local.region
        name = "lets-encrypt-config"
        lets_encrypt_environment = "production"
        lets_encrypt_private_key = var.my_lets_encrypt_private_ley
    }

UI에서 인증 기관 구성 삭제하기

구성이 더 이상 필요하지 않은 경우 Secrets Manager UI를 사용하여 삭제할 수 있습니다.

구성을 삭제한 후 인증 기관과 연관된 인증서는 더 이상 자동으로 순환할 수 없습니다. 프로덕션 애플리케이션 또는 서비스의 인증서와 연관된 구성을 삭제하지 마십시오.

  1. 콘솔에서 메뉴 아이콘 메뉴 아이콘 > 리소스 목록을 클릭하십시오.

  2. 서비스 목록에서 Secrets Manager의 인스턴스를 선택하십시오.

  3. 시크릿 엔진 페이지에서 공용 인증서 탭을 클릭하십시오.

  4. 인증 기관 표를 사용하여 인스턴스의 구성을 볼 수 있습니다.

  5. 삭제할 구성의 행에서 조치 메뉴 조치 아이콘 > 삭제를 클릭하십시오.

  6. 삭제를 확인할 구성의 이름을 입력하십시오.

  7. 삭제를 클릭하십시오.

CLI에서 인증 기관 구성 삭제하기

인증 기관 구성을 삭제하려면, ibmcloud secrets-manager configuration-delete 명령.

ibmcloud secrets-manager configuration-delete my-configuration-name

API를 사용하여 인증 기관 구성 삭제하기

Secrets Manager API를 호출하여 구성을 삭제할 수 있습니다.

다음 예제는 인스턴스에서 인증 기관 구성을 제거하는 데 사용할 수 있는 조회를 보여줍니다. API를 호출하는 경우 {config_name}을(를) 삭제할 구성의 이름으로 바꾸십시오.

구성을 삭제한 후 인증 기관과 연관된 인증서는 더 이상 자동으로 순환할 수 없습니다. 프로덕션 애플리케이션 또는 서비스의 인증서와 연관된 구성을 삭제하지 마십시오.

curl -X DELETE
  --H "Authorization: Bearer {iam_token}"\
  "https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/configurations/{name}"

응답에 성공하면 서비스 인스턴스에서 구성을 제거합니다. 필수 및 선택 요청 매개변수에 대한 자세한 내용은 구성 제거를 참조하세요.

UI에서 인증 기관 구성 검색하기

Secrets Manager UI를 사용하여 인증 기관 값을 검색할 수 있습니다.

  1. 공용 인증서 시크릿 엔진의 인증 기관 테이블에서 조치 메뉴 조치 아이콘 을 클릭하여 엔진 구성에 대한 옵션 목록을 여십시오.
  2. 구성 값을 보려면 구성 보기를 클릭합니다.
  3. 안전한 환경에 있는지 확인한 후 확인 을 클릭하십시오.

시크릿 값이 15초동안 표시되면 대화 상자가 닫힙니다.

CLI를 사용하여 인증 기관 구성 검색

Secrets Manager CLI를 사용하여 인증 기관 값을 검색할 수 있습니다. 다음 예제 명령에서 엔진 구성 이름을 사용자의 구성 이름으로 바꾸십시오.

ibmcloud secrets-manager configuration --name EXAMPLE_CONFIG --service-url https://{instance_ID}.{region}.secrets-manager.appdomain.cloud

{instance_ID}{region}을 Secrets Manager 서비스 인스턴스에 적용되는 값으로 바꾸십시오. 인스턴스에 특정한 엔드포인트 URL을 찾으려면 Secrets Manager UI의 엔드포인트 페이지에서 복사할 수 있습니다. 자세한 정보는 엔드포인트 URL 보기를 참조하십시오.

API를 사용하여 인증 기관 구성 검색

Secrets Manager API를 사용하여 인증 기관 값을 검색할 수 있습니다. 다음 예제 요청에서 엔진 구성 이름을 구성 이름으로 바꾸십시오.

curl -X GET --location --header "Authorization: Bearer {iam_token}" \
--header "Accept: application/json" \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/configurations/{name}"

{instance_ID}{region}을 Secrets Manager 서비스 인스턴스에 적용되는 값으로 바꾸십시오. 인스턴스에 특정한 엔드포인트 URL을 찾으려면 Secrets Manager UI의 엔드포인트 페이지에서 복사할 수 있습니다. 자세한 정보는 엔드포인트 URL 보기를 참조하십시오.

성공적인 응답은 다른 메타데이터와 함께 엔진 구성 값을 반환합니다. 필수 및 선택적 요청 매개변수에 대한 자세한 내용은 비밀번호 가져오기를 참조하세요.

다음 단계