Skip to main content
Astra Automation
이 제품의 최신 릴리즈를 사용할 수 있습니다.
본 한국어 번역은 사용자 편의를 위해 제공되는 기계 번역입니다. 영어 버전과 한국어 버전이 서로 어긋나는 경우에는 언제나 영어 버전이 우선합니다.

새 자격 증명 생성

POST /accounts/{account_id}/core/v1/credentials

생성할 Credential API 리소스에 대해 원하는 값을 나타냅니다.

매개변수

이름 유형 에서 필수 요소입니다 설명

account_id

문자열

경로

포함하는 계정 리소스의 ID

  • 예: {{.Account}}

요청 본문

생성할 Credential API 리소스에 대해 원하는 값을 나타냅니다.

이름 유형 필수 요소입니다 설명

유형

문자열

리소스의 미디어 유형입니다. 정의된 값은 다음과 같습니다.

  • "application/astra-credential"

버전

문자열

리소스 버전입니다. 정의된 값은 다음과 같습니다.

  • "1.0"

  • "1.1"

이름

문자열

사용자가 지정한 이름을 포함하는 JSON 문자열입니다. 사용자 자격 증명이 생성될 때 이름은 해당 사용자의 UUID로 설정됩니다. 정의된 값은 다음과 같습니다.

  • 최소 길이: 1

  • 최대 길이: 127

keyType

문자열

거짓

keyStore의 콘텐츠에 대한 선택적 사용자 지정 데이터 유효성 검사 유형 설명자를 포함하는 JSON 문자열입니다. 확장된 업데이트 제약 조건:

  • 리소스에 keyType이 존재하지 않고 업데이트에서도 지정되지 않은 경우, 해당 keyType은 업데이트된 리소스에 계속 존재해서는 안 됩니다.

  • 리소스에 keyType이 존재하지 않지만 업데이트에서 지정된 경우, 해당 keyType을 리소스에 추가하고 유효성 검사를 수행해야 합니다. 유효성 검사에 실패하면 업데이트가 실패합니다.

  • 리소스에 keyType이 존재하지만 업데이트에서 지정되지 않은 경우, 해당 keyType을 유지해야 합니다.

  • 리소스에 keyType이 존재하고 업데이트에서 지정되었으며 지정된 keyType이 기존 keyType과 일치하는 경우 해당 keyType을 유지해야 합니다.

  • 리소스에 keyType이 존재하고 업데이트에 지정되었으며, 지정된 keyType이 기존 keyType과 다른 경우 업데이트가 실패합니다. 정의된 값은 다음과 같습니다.

  • "generic" - 자격 증명은 일반적인 데이터 모음입니다. 이는 keyType을 포함하지 않는 것과 같습니다.

  • 확장 검증은 다음과 같이 수행됩니다.

  • keyStore에 하나 이상의 문자열이 있어야 합니다.

  • keyStore의 모든 문자열은 base64로 인코딩된 값을 가져야 합니다.

  • "passwordHash" - 자격 증명은 비밀번호 해시입니다.

  • 확장 검증은 다음과 같이 수행됩니다.

  • 자격 증명의 이름은 고유해야 합니다.

  • 자격 증명의 이름은 유효한 사용자 리소스 ID와 동일해야 합니다.

  • 자격 증명의 이름은 변경해서는 안 됩니다.

  • 해당 사용자 리소스는 "authProvider"가 "local"이어야 합니다.

  • base64로 인코딩된 평문 암호를 포함하는 값을 가진 "평문" 문자열이 keyStore 내에 존재해야 합니다.

  • 비밀번호 평문은 계정의 비밀번호 정책을 준수해야 합니다.

  • 비밀번호는 해시값으로 저장됩니다.

  • "change" 문자열은 keyStore 내에 base64로 인코딩된 "true" 또는 "false" 문자열 값을 포함하여 존재해야 합니다.

  • passwordHash 유형의 자격 증명은 이름으로 표시된 사용자 ID가 존재하지 않는 경우에만 삭제할 수 있습니다.

  • "apikey" - 자격 증명은 API 키입니다.

  • 확장 검증은 다음과 같이 수행됩니다.

  • keyStore 내에 base64로 인코딩된 임의의 문자열을 포함하는 값을 가진 "apikey" 문자열이 존재해야 합니다.

  • "kubeconfig" - 자격 증명은 kubeconfig입니다.

  • 확장 검증은 다음과 같이 수행됩니다.

  • keyStore 내에 base64로 인코딩된 JSON kubeconfig 파일을 포함하는 값을 가진 "base64" 문자열이 존재해야 합니다.

  • kubeconfig 파일에는 단일 클러스터에 대한 설명만 포함되어야 합니다.

  • keyStore 내에 다른 필드가 존재할 수 없습니다.

  • "certificate" - 자격 증명은 PEM 인코딩 인증서입니다

  • 확장 검증은 다음과 같이 수행됩니다.

  • keyStore 내에 base64로 인코딩된 PEM 인증서를 포함하는 값을 가진 "certificate" 문자열이 존재해야 합니다.

  • "privkey" - 자격 증명은 PEM 형식으로 인코딩된 개인 키입니다.

  • 확장 검증은 다음과 같이 수행됩니다.

  • keyStore 내에 base64로 인코딩된 PEM 개인 키를 포함하는 값을 가진 "privkey" 문자열이 존재해야 합니다.

  • "s3" - 해당 자격 증명이 Simple Storage Service(S3) 액세스용임을 나타냅니다.

  • 확장 검증은 다음과 같이 수행됩니다.

  • "accessKey" 문자열은 base64로 인코딩된 S3 액세스 키를 포함하는 값과 함께 keyStore 내에 존재해야 합니다.

  • "accessSecret" 문자열은 base64로 인코딩된 S3 액세스 비밀 키를 포함하는 값과 함께 keyStore 내에 존재해야 합니다.

keyStore

"keyStore"

JSON 문자열을 포함하는 JSON 객체입니다. keyStore의 각 문자열은 자격 증명의 일부를 나타냅니다. 각 문자열의 이름은 자격 증명 부분을 나타내며, 해당 키-값 쌍은 자격 증명의 해당 부분에 대한 값을 base64 형식으로 저장합니다. 정의된 값은 다음과 같습니다.

  • base64 인코딩 데이터 스키마를 준수하며 문자열 길이에 제한이 없습니다.

유효합니다

문자열

거짓

자격 증명의 사용 유효성을 설명하는 JSON 문자열입니다. 생략 시 기본값은 "true"입니다. 정의된 값은 다음과 같습니다.

  • "true" - 해당 자격 증명을 사용할 수 있습니다.

  • "false" - 해당 자격 증명은 사용해서는 안 됩니다.

validFromTimestamp

문자열

거짓

자격 증명이 유효한 시점을 나타내는 타임스탬프가 포함된 JSON 문자열입니다. 이는 자격 증명 순환에 사용됩니다. 정의된 값은 다음과 같습니다.

  • ISO-8601 날짜/시간 스키마를 준수합니다.

validUntilTimestamp

문자열

거짓

자격 증명이 더 이상 유효하지 않은 시점을 나타내는 타임스탬프가 포함된 JSON 문자열입니다. 이는 자격 증명 순환에 사용됩니다. 정의된 값은 다음과 같습니다.

  • ISO-8601 날짜/시간 스키마를 준수합니다.

메타데이터

"type_astra_메타데이터_업데이트"

거짓

리소스와 연결된 클라이언트 및 서비스 지정 메타데이터입니다. 정의된 값은 다음과 같습니다.

  • Astra 메타데이터 스키마를 준수합니다. 생성 시 지정하지 않으면 레이블이 없는 메타데이터 객체가 생성됩니다. 업데이트 시 지정하지 않으면 메타데이터 객체의 레이블인 creationTimestamp와 createdBy는 수정 없이 유지됩니다.

요청 예시
{
  "type": "application/astra-credential",
  "version": "1.1",
  "name": "myCert",
  "keyStore": {
    "privKey": "SGkh",
    "pubKey": "VGhpcyBpcyBhbiBleGFtcGxlLg=="
  }
}

응답

Status: 201, Returns the newly created credential resource in the JSON response body.
이름 유형 필수 요소입니다 설명

유형

문자열

리소스의 미디어 유형입니다. 정의된 값은 다음과 같습니다.

  • "application/astra-credential"

버전

문자열

리소스 버전입니다. 정의된 값은 다음과 같습니다.

  • "1.0"

  • "1.1"

ID입니다

문자열

리소스의 전역 고유 식별자입니다. 정의된 값은 다음과 같습니다.

  • UUIDv4 스키마를 준수합니다.

이름

문자열

사용자가 지정한 이름을 포함하는 JSON 문자열입니다. 사용자 자격 증명이 생성될 때 이름은 해당 사용자의 UUID로 설정됩니다. 정의된 값은 다음과 같습니다.

  • 최소 길이: 1

  • 최대 길이: 127

keyType

문자열

거짓

keyStore의 콘텐츠에 대한 선택적 사용자 지정 데이터 유효성 검사 유형 설명자를 포함하는 JSON 문자열입니다. 확장된 업데이트 제약 조건:

  • 리소스에 keyType이 존재하지 않고 업데이트에서도 지정되지 않은 경우, 해당 keyType은 업데이트된 리소스에 계속 존재해서는 안 됩니다.

  • 리소스에 keyType이 존재하지 않지만 업데이트에서 지정된 경우, 해당 keyType을 리소스에 추가하고 유효성 검사를 수행해야 합니다. 유효성 검사에 실패하면 업데이트가 실패합니다.

  • 리소스에 keyType이 존재하지만 업데이트에서 지정되지 않은 경우, 해당 keyType을 유지해야 합니다.

  • 리소스에 keyType이 존재하고 업데이트에서 지정되었으며 지정된 keyType이 기존 keyType과 일치하는 경우 해당 keyType을 유지해야 합니다.

  • 리소스에 keyType이 존재하고 업데이트에 지정되었으며, 지정된 keyType이 기존 keyType과 다른 경우 업데이트가 실패합니다. 정의된 값은 다음과 같습니다.

  • "generic" - 자격 증명은 일반적인 데이터 모음입니다. 이는 keyType을 포함하지 않는 것과 같습니다.

  • 확장 검증은 다음과 같이 수행됩니다.

  • keyStore에 하나 이상의 문자열이 있어야 합니다.

  • keyStore의 모든 문자열은 base64로 인코딩된 값을 가져야 합니다.

  • "passwordHash" - 자격 증명은 비밀번호 해시입니다.

  • 확장 검증은 다음과 같이 수행됩니다.

  • 자격 증명의 이름은 고유해야 합니다.

  • 자격 증명의 이름은 유효한 사용자 리소스 ID와 동일해야 합니다.

  • 자격 증명의 이름은 변경해서는 안 됩니다.

  • 해당 사용자 리소스는 "authProvider"가 "local"이어야 합니다.

  • base64로 인코딩된 평문 암호를 포함하는 값을 가진 "평문" 문자열이 keyStore 내에 존재해야 합니다.

  • 비밀번호 평문은 계정의 비밀번호 정책을 준수해야 합니다.

  • 비밀번호는 해시값으로 저장됩니다.

  • "change" 문자열은 keyStore 내에 base64로 인코딩된 "true" 또는 "false" 문자열 값을 포함하여 존재해야 합니다.

  • passwordHash 유형의 자격 증명은 이름으로 표시된 사용자 ID가 존재하지 않는 경우에만 삭제할 수 있습니다.

  • "apikey" - 자격 증명은 API 키입니다.

  • 확장 검증은 다음과 같이 수행됩니다.

  • keyStore 내에 base64로 인코딩된 임의의 문자열을 포함하는 값을 가진 "apikey" 문자열이 존재해야 합니다.

  • "kubeconfig" - 자격 증명은 kubeconfig입니다.

  • 확장 검증은 다음과 같이 수행됩니다.

  • keyStore 내에 base64로 인코딩된 JSON kubeconfig 파일을 포함하는 값을 가진 "base64" 문자열이 존재해야 합니다.

  • kubeconfig 파일에는 단일 클러스터에 대한 설명만 포함되어야 합니다.

  • keyStore 내에 다른 필드가 존재할 수 없습니다.

  • "certificate" - 자격 증명은 PEM 인코딩 인증서입니다

  • 확장 검증은 다음과 같이 수행됩니다.

  • keyStore 내에 base64로 인코딩된 PEM 인증서를 포함하는 값을 가진 "certificate" 문자열이 존재해야 합니다.

  • "privkey" - 자격 증명은 PEM 형식으로 인코딩된 개인 키입니다.

  • 확장 검증은 다음과 같이 수행됩니다.

  • keyStore 내에 base64로 인코딩된 PEM 개인 키를 포함하는 값을 가진 "privkey" 문자열이 존재해야 합니다.

  • "s3" - 해당 자격 증명이 Simple Storage Service(S3) 액세스용임을 나타냅니다.

  • 확장 검증은 다음과 같이 수행됩니다.

  • "accessKey" 문자열은 base64로 인코딩된 S3 액세스 키를 포함하는 값과 함께 keyStore 내에 존재해야 합니다.

  • "accessSecret" 문자열은 base64로 인코딩된 S3 액세스 비밀 키를 포함하는 값과 함께 keyStore 내에 존재해야 합니다.

유효합니다

문자열

자격 증명의 사용 유효성을 설명하는 JSON 문자열입니다. 생략 시 기본값은 "true"입니다. 정의된 값은 다음과 같습니다.

  • "true" - 해당 자격 증명을 사용할 수 있습니다.

  • "false" - 해당 자격 증명은 사용해서는 안 됩니다.

validFromTimestamp

문자열

거짓

자격 증명이 유효한 시점을 나타내는 타임스탬프가 포함된 JSON 문자열입니다. 이는 자격 증명 순환에 사용됩니다. 정의된 값은 다음과 같습니다.

  • ISO-8601 날짜/시간 스키마를 준수합니다.

validUntilTimestamp

문자열

거짓

자격 증명이 더 이상 유효하지 않은 시점을 나타내는 타임스탬프가 포함된 JSON 문자열입니다. 이는 자격 증명 순환에 사용됩니다. 정의된 값은 다음과 같습니다.

  • ISO-8601 날짜/시간 스키마를 준수합니다.

메타데이터

"type_astra_메타데이터_업데이트"

리소스와 연결된 클라이언트 및 서비스 지정 메타데이터입니다. 정의된 값은 다음과 같습니다.

  • Astra 메타데이터 스키마를 준수합니다. 생성 시 지정하지 않으면 레이블이 없는 메타데이터 객체가 생성됩니다. 업데이트 시 지정하지 않으면 메타데이터 객체의 레이블인 creationTimestamp와 createdBy는 수정 없이 유지됩니다.

응답 예
{
  "type": "application/astra-credential",
  "version": "1.1",
  "id": "58e26f6a-a631-5122-8e0e-7afe306675c0",
  "name": "myCert",
  "valid": "true",
  "metadata": {
    "labels": [],
    "creationTimestamp": "2022-10-06T20:58:16.305662Z",
    "modificationTimestamp": "2022-10-06T20:58:16.305662Z",
    "createdBy": "8f84cf09-8036-51e4-b579-bd30cb07b269"
  }
}

응답

Status: 401, Unauthorized
이름 유형 필수 요소입니다 설명

유형

문자열

제목

문자열

세부 정보

문자열

상태

문자열

correlationID

문자열

거짓

응답 예
{
  "type": "https://astra.netapp.io/problems/3",
  "title": "Missing bearer token",
  "detail": "The request is missing the required bearer token.",
  "status": "401"
}

응답

Status: 400, Bad request
이름 유형 필수 요소입니다 설명

유형

문자열

제목

문자열

세부 정보

문자열

상태

문자열

correlationID

문자열

거짓

invalidFields

배열["invalidFields"]

거짓

유효하지 않은 요청 본문 필드 목록

응답 예
{
  "type": "https://astra.netapp.io/problems/5",
  "title": "Invalid query parameters",
  "detail": "The supplied query parameters are invalid.",
  "status": "400"
}

응답

Status: 409, Conflict
이름 유형 필수 요소입니다 설명

유형

문자열

제목

문자열

세부 정보

문자열

상태

문자열

correlationID

문자열

거짓

invalidFields

배열["invalidFields"]

거짓

유효하지 않은 요청 본문 필드 목록

응답 예
{
  "type": "https://astra.netapp.io/problems/10",
  "title": "JSON resource conflict",
  "detail": "The request body JSON contains a field that conflicts with an idempotent value.",
  "status": "409"
}

응답

Status: 403, Forbidden
이름 유형 필수 요소입니다 설명

유형

문자열

제목

문자열

세부 정보

문자열

상태

문자열

correlationID

문자열

거짓

응답 예
{
  "type": "https://astra.netapp.io/problems/11",
  "title": "Operation not permitted",
  "detail": "The requested operation isn't permitted.",
  "status": "403"
}

오류

Status: 404, Not found
이름 유형 필수 요소입니다 설명

유형

문자열

제목

문자열

세부 정보

문자열

상태

문자열

correlationID

문자열

거짓

예시 오류 응답
{
  "type": "https://astra.netapp.io/problems/2",
  "title": "Collection not found",
  "detail": "The collection specified in the request URI wasn't found.",
  "status": "404"
}

정의

정의를 참조하세요

keyStore

JSON 문자열을 포함하는 JSON 객체입니다. keyStore의 각 문자열은 자격 증명의 일부를 나타냅니다. 각 문자열의 이름은 자격 증명 부분을 나타내며, 해당 키-값 쌍은 자격 증명의 해당 부분에 대한 값을 base64 형식으로 저장합니다. 정의된 값은 다음과 같습니다.

  • base64 인코딩 데이터 스키마를 준수하며 문자열 길이에 제한이 없습니다.

문자열을 문자열로 해시 매핑

type_astra_label

이름 유형 필수 요소입니다 설명

이름

문자열

문자열

type_astra_메타데이터_업데이트

리소스와 연결된 클라이언트 및 서비스 지정 메타데이터입니다. 정의된 값은 다음과 같습니다.

  • Astra 메타데이터 스키마를 준수합니다. 생성 시 지정하지 않으면 레이블이 없는 메타데이터 객체가 생성됩니다. 업데이트 시 지정하지 않으면 메타데이터 객체의 레이블인 creationTimestamp와 createdBy는 수정 없이 유지됩니다.

이름 유형 필수 요소입니다 설명

라벨

배열["type_astra_label"]

거짓

CreationTimestamp 를 클릭합니다

문자열

거짓

modificationTimestamp

문자열

거짓

생성 시

문자열

거짓

modifiedBy

문자열

거짓

invalidParams

이름 유형 필수 요소입니다 설명

이름

문자열

잘못된 쿼리 매개변수의 이름

이유

문자열

쿼리 매개변수가 유효하지 않은 이유

invalidFields

이름 유형 필수 요소입니다 설명

이름

문자열

유효하지 않은 요청 본문 필드의 이름

이유

문자열

요청 본문 필드가 유효하지 않은 이유