IBM Cloudant를 사용한 인증 FAQ

IBM Cloud® IAM(Identity and Access Management)은 사용자 ID, 서비스 및 액세스 제어 관리를 하나의 접근 방식으로 결합합니다. IBM® Cloudant® for IBM Cloud®의 경우 IBM Cloud ID 및 액세스 관리와 통합됩니다.

IBM Cloudant 레거시 액세스 제어와 IAM 액세스 제어의 차이점은 무엇입니까?

IBM Cloud IAM

  • IBM Cloud 전체에서 중앙 집중식으로 액세스를 관리합니다.
  • 사용자 또는 서비스가 동일한 인증 정보 세트(예: 동일한 사용자 이름 및 비밀번호 또는 IAM API 키)를 사용하여 다양한 리소스에 액세스할 수 있도록 허용합니다.
  • IAM API 키에는 새 데이터베이스 작성과 같은 계정 관리 기능에 대한 액세스 권한이 부여될 수 있습니다.

IBM Cloudant 레거시

  • IBM Cloudant에 고유합니다.
  • 각 서비스 인스턴스에 대한 액세스에는 해당 인증 정보 세트가 필요합니다.
  • 개별 사용자 또는 서비스에 바인드되지 않은 인증 정보로 HTTP 기본 인증을 사용합니다.

IAM만 사용 모드가 선호되는 이유는 무엇입니까?

IAM만 사용 모드는 서비스 바인딩 및 인증 정보 생성을 사용하여 IAM 인증 정보만 제공됨을 의미합니다. IBM Cloud IAM을 사용할 때 다음과 같은 혜택을 얻을 수 있습니다.

  • IBM Cloudant의 표준 도구를 사용하여 IBM Cloud에 대한 액세스를 관리합니다.
  • IBM Cloud IAM을 사용할 때 쉽게 호출하고 순환할 수 있는 인증 정보 사용

이 모드의 장점과 단점에 대한 정보는 두 액세스 제어 메커니즘의 장점 및 단점을 참조하십시오.

명령행을 사용하여 인스턴스를 작성할 수 있는 방법은 무엇입니까?

명령행에서 새 IBM Cloudant 인스턴스를 작성하는 경우에는 ibmcloud 매개변수를 사용하여 -p 도구를 포함해야 합니다. 이 매개변수는 JSON 형식으로 옵션을 전달하여 계정에 대한 레거시 인증 정보를 사용 또는 사용 안함으로 설정합니다. 옵션은 legacyCredentials라고 합니다.

IAM만 사용으로 인스턴스를 작성하려면 다음 명령을 실행하십시오.

ibmcloud resource service-instance-create  "Instance Name" \
    cloudantnosqldb Standard us-south \
    -p '{"legacyCredentials": false}'

IAM 독자 및 작성자 역할을 사용할 때 IAM만 사용 모드를 사용하지 않으면 의도한 것보다 더 많은 액세스 권한이 있는 레거시 인증 정보를 사용자에게 부여할 수 있습니다.

서비스 인증 정보를 생성하는 방법

기본 IBM Cloud IAM 인터페이스에서 서비스 인증 정보를 생성할 수 있습니다. IAM만 사용을 선택하는 경우 서비스 인증 정보는 IAM 값만 포함합니다. 서비스 인증 정보 JSON은 다음 예와 유사합니다.

{
  "apikey": "MxVp86XHkU82Wc97tdvDF8qM8B0Xdit2RqR1mGfVXPWz",
  "host": "2922d728-27c0-4c7f-aa80-1e59fbeb04d0-bluemix.cloudant.com",
  "iam_apikey_description": "Auto generated apikey during resource-key [...]",
  "iam_apikey_name": "auto-generated-apikey-050d21b5-5f[...]",
  "iam_role_crn": "crn:v1:bluemix:public:iam::::serviceRole:Manager",
  "iam_serviceid_crn": "crn:v1:staging:public:iam-identity::[...]",
  "url": "https://76838001-b883-444d-90d0-46f89e942a15-bluemix.cloudant.com",
  "username": "76838001-b883-444d-90d0-46f89e942a15-bluemix"
}

이전 예의 값은 다음 목록에 설명되어 있습니다.

apikey
IAM API 키입니다.
host
도메인 이름을 해당 IP 주소로 분석하는 DNS입니다.
iam_apikey_description
IAM API 키에 대한 설명입니다.
iam_apikey_name
IAM API 키의 ID입니다.
iam_role_crn
IAM API 키가 가진 IAM 역할입니다.
iam_serviceid_crn
서비스 ID의 CRN입니다.
url
IBM Cloudant 서비스 URL입니다.
username
내부 IBM Cloudant 계정 이름입니다.

자세한 정보는 IBM Cloud API 키 및 IAM만 사용을 참조하십시오.

신임 정보를 회전하려면 어떻게 해야 합니까?

대부분의 경우 순환 신임 정보는 간단한 프로세스입니다.

  1. 대체 서비스 신임 정보를 생성합니다. 자세한 내용은 “서비스 자격 증명을 생성하려면 어떻게 해야 하나요? ”를 참조하세요.

  2. 현재 신임 정보를 새로 생성된 신임 정보로 바꾸십시오.

  3. 더 이상 사용되지 않는 서비스 신임 정보를 삭제하십시오.

그러나 복제에 대한 신임 정보를 회전할 때 복제 문서에서 레거시 신임 정보를 사용하는 경우 복제가 처음부터 시작됩니다. 변경사항이 시기 적절한 방식으로 도착하도록 하려면, 이전 복제 및 연관된 서비스 신임 정보를 삭제하여 따라잡는 순간 새 복제를 작성하도록 권장합니다. 이 과정은 다음과 같은 단계로 설명됩니다:

  1. 대체 서비스 신임 정보를 생성합니다. 자세한 내용은 “서비스 자격 증명을 생성하려면 어떻게 해야 하나요? ”를 참조하세요.

  2. 동일한 설정이지만 새 신임 정보로 복제를 작성합니다.

  3. ‘활성 작업(Active Tasks )’을 사용하여 새로운 복제를 모니터링하거나, 다음을 사용할 수도 있습니다 _scheduler/jobs.

  4. 새 복제의 changes_pending 필드가 요구사항에 대해 적합하게 낮은 값인 경우, 이전 신임 정보를 사용하는 복제를 삭제할 수 있습니다.

  5. 더 이상 사용되지 않는 서비스 신임 정보를 삭제하십시오.

IAM API 키를 사용하는 복제는 복제하는 변경사항을 지연시키지 않고 새로운 API 키를 직접 사용하도록 업데이트될 수 있습니다.