v1

package
v0.0.0-...-4af415e Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 9, 2026 License: Apache-2.0 Imports: 8 Imported by: 0

README

KeyManager v1

Gophercloud v2.15.0의 keymanager/v1 API를 하나의 인증된 서비스 객체에서 사용합니다. 인증, region, endpoint interface와 TLS 설정은 Connection이 관리합니다.

작업 openstacksdk Go
서비스 접근 conn.key_manager conn.KeyManagerV1(ctx)
선택 인자·기본값 keyword arguments concrete options와 작업별 With...Options
확장 입력 **attrs, **query 가능한 연산의 With...Field/Query/Header
결과 Resource 또는 generator typed 값과 error 또는 iter.Seq2

전체 API 호출 지원과 openstacksdk의 리소스 객체·복합 작업 지원은 별도로 추적합니다. Python 입력 별칭을 자동으로 Go 필드에 적용하지 않습니다. 기본 응답 모델은 Gophercloud 타입을 사용하며 SDK가 추가한 모델은 서비스별로 설명합니다. 수정한 응답이 자동 저장되지는 않습니다.

Orders.Resources.List/All의 resource.WithFilter/WithFilters는 상속 query limit·marker와 로컬 Body 속성 14개를 분류합니다. 최상위 원문 name과 중첩 meta.name을 구분하며 원문 metadata·timestamp를 비교합니다. id는 literal id 또는 전체 order_ref이고 order_id·secret_id는 각 참조의 별도 HREF accessor입니다. native Order·Meta 전체 페이지 디코드 뒤 typed Order를 반환합니다. 공통 WithName과 이름 Ref 조회는 지원하지 않으며 ID 조회·삭제·대기는 호출자의 고정 order 경로를 사용합니다. Order 목록 Python/Go 사용법에 metadata 비교·두 formatter·반복 query·고정 소스 검증과 응답 모델 경계를 설명합니다.

Containers.Resources.List/All의 resource.WithFilter/WithFilters는 상속 query limit·marker와 로컬 Body 속성 10개를 분류합니다. name은 로컬 조건이며 기존 WithName의 서버 hint와 구분합니다. timestamp·참조·중첩 배열을 원본 행에서 비교하며 id는 literal id 또는 전체 container_ref이고 container_id는 별도의 HREF accessor입니다. native 전체 페이지 디코드 뒤 typed Container를 반환합니다. Container 목록 Python/Go 사용법에 raw name/offset 확장·반복 query·원문 배열·고정 소스 검증과 응답 모델 경계를 설명합니다.

Secrets.Resources.List/All의 resource.WithFilter/WithFilters는 Python 속성 이름을 서버 query 12개 또는 로컬 Body 12개로 자동 분류합니다. algorithm은 wire alg로 보내며 두 이름을 한 bulk에 지정하면 canonical 값이 우선합니다. created_at·updated_at·expires_at은 timestamp 원문을, id는 literal id 또는 전체 secret_ref를, secret_id는 별도의 HREF accessor 결과를 비교합니다. native 전체 페이지 디코드 뒤 원문 행을 비교하고 typed Secret을 반환합니다. Secret 목록 Python/Go 사용법에 반복 query·JSON snapshot·충돌·로컬 cap·응답 모델 경계와 고정 소스 검증을 설명합니다.

Secrets.FindIdentity(ctx, identity, options...)는 안전한 ID의 metadata·조건부 payload 조회를 먼저 시도하고, 기본 HTTP400·403·404 뒤에는 이름 hint를 넣은 metadata 목록 전체에서 정확한 ID 또는 이름을 찾습니다. 목록 결과에는 payload를 추가 조회하지 않습니다. resource.WithIdentityFindIgnoreMissing(false)와 WithIdentityFindFallback으로 미존재·fallback 정책을 선택합니다. raw query·details·all-projects·extra-specs 옵션은 지원하지 않습니다. 응답의 원문 id/secret_ref는 비교에만 쓰며 요청 경로로 따라가지 않습니다. Secret 자동 조회 Python/Go 사용법에 nullable ID·중복·offset 순회·고정 서비스 설정과 Python 기본 status 처리 차이를 설명합니다. native Secrets.Resources는 기존 metadata collection입니다.

Secrets.GetPayload(ctx, secretID)는 payload GET의 전체 []byte를 반환하고 native 응답 body를 닫습니다. 기본 Accept는 text/plain이며 concrete GetPayloadOpts로 바꿀 수 있습니다. Payload 조회와 반환형 변경에 native 오류·헤더 정책과 기존 Download에서 bytes로 바꾸는 방법을 설명합니다.

Secrets.Fetch(ctx, resource.ID(secretID))는 metadata GET 뒤 선택한 content type이 있을 때만 원래 ID의 payload를 조회합니다. 기본 선택은 metadata의 content_types.default이며 WithFetchContentType으로 우선 지정하거나 WithFetchPayload(false)로 metadata만 조회합니다. 정확한 text/plain만 UTF-8 텍스트로 제공하고 나머지는 원본 bytes로 반환합니다. 두 HTTP 응답의 Body·header·status와 요청 ID를 구분하며 후속 payload 실패에도 이미 받은 metadata를 반환합니다. native Secrets.Get과 GetPayload는 각각 별도의 metadata와 payload 호출입니다. Secret Python/Go 사용법에 content type·고정 경로·옵션·오류 및 seeded Python Resource와의 차이를 설명합니다.

Containers.Fetch(ctx, resource.ID(id))와 Orders.Fetch(ctx, resource.ID(id))는 metadata GET의 owned 결과를 제공합니다. 원래 request ID, 선언된 속성 view와 실제 Wire/HTTP receipt를 구분하며 foreign response ref를 요청 경로로 따라가지 않습니다. Metadata 조회 비교에서 nullable 배열·임의 order meta·ID와 오류 정책을 설명합니다.

Containers.CreateRecord, Orders.CreateRecord, Secrets.CreateRecord는 생성 입력과 실제 POST 응답을 병합한 Resource view를 제공합니다. WithCreateRecordAttributes/WithCreateRecordAttribute로 생략·null·빈 값과 alias를 지정하고, SDK가 snapshot·flat body·고정 경로를 처리합니다. 실제 Wire/HTTP receipt는 입력과 분리되며 생성 뒤 GET·payload GET·wait를 자동 실행하지 않습니다. 생성 Python/Go 비교에 세 서비스의 옵션·결과·오류와 기존 native Create 대응을 설명합니다.

Containers.Remove, Orders.Remove, Secrets.Remove와 기본 Resources.Delete는 owned DELETE를 사용하며 기본 404 무시와 resource.WithMissingError()를 유지합니다. accepted body는 해석하지 않고 읽기·Close·source·context 오류의 실제 HTTP 증거를 보존합니다. native Delete(ctx, string)의 202/204와 strict 오류 의미는 그대로입니다. Metadata 삭제 비교에서 ID·이름·상태 코드·부분 오류와 Python 대응을 설명합니다.

Barbican의 native API와 함께 SDK가 직접 구현한 SecretStores와 Quotas를 제공합니다. SecretStores.List/All, GetGlobalDefault, GetPreferred는 목록과 두 고정 selector의 조회이며 자동 fallback·CRUD·상태 대기를 추가하지 않습니다. Quotas.Get은 현재 인증된 프로젝트의 effective quota이고 Quotas.InProject(ctx, resource.ID(projectID))는 고정 프로젝트의 Get·Update·Delete입니다. Update는 설정 교체 PUT204이고 삭제는 override 초기화 DELETE204이며 둘 다 자동 재조회하지 않습니다. 반환 acknowledgement는 실제 빈 응답·header·status이며 Python의 seeded Resource와 구분합니다. secretstores.WithListFilter/WithListFilters로9개 서버 query와5개 로컬 속성을 선택하며 SDK가 분류·원문 비교·raw cap을 처리합니다. SecretStore Python/Go 사용법과 Quota Python/Go 사용법에 marker·nullable 응답·정수 입력·기본값 및 남은 Resource/cache 계약을 설명합니다. 현재 프로젝트 quota만 읽을 때는 service.Quotas.Get(ctx)를 사용하며, 프로젝트 ID 없이 원문 값과 실제 HTTP 오류 증거를 반환합니다.

SecretConsumers.InSecret(ctx, resource.ID(secretID))는 고정 secret의 consumer association 생성·삭제와 목록을 제공합니다. association은 service·resource_type·resource_id로 식별하며 별도 consumer ID를 만들지 않습니다. 생성·삭제는 실제 HTTP200 secret 응답을 반환하고 목록은 advertised offset next를 따릅니다. SecretConsumer Python/Go 사용법에 세 proxy 연산·삭제 404 기본값·고정 부모·응답과 Python의 seeded Resource 차이를 설명합니다.

Go 사용

// context.Context ctx, *openstack.Connection conn을 사용하는 함수 안에서
service, err := conn.KeyManagerV1(ctx)
if err != nil { return err }
for value, err := range service.Secrets.Resources.List(ctx) {
    if err != nil { return err }
    fmt.Println(value)
}
value, err := service.Secrets.Find(ctx, resource.Name("example"))
if err != nil { return err }
_ = value

예제의 fmt는 표준 라이브러리, resource는 github.com/JSYoo5B/go-openstacksdk/resource입니다. Find는 기본적으로 미존재를 오류로 처리합니다. resource.WithIgnoreMissing()을 추가하면 nil, nil을 반환합니다. Delete의 기본값은 미존재 무시입니다.

리소스와 공통 정책

서비스 필드 API 패키지 공통 정책·범위
Acls acls API 연산 제공; 공통 Collection 미적용
Containers containers Resources: ID 조회, 목록, 이름 조회, 삭제·삭제 대기, 상태 대기
Orders orders Resources: ID 조회, 목록, 삭제·삭제 대기, 상태 대기
Quotas quotas Get(ctx): 인증된 프로젝트 effective quota; InProject(ctx, ID): Get·교체 Update·override Delete, 목록·Find·Wait 없음
SecretConsumers secretconsumers InSecret(ctx, ref): association Create·Delete와 offset List/All; 실제 secret 응답, consumer ID·Resources·Find·Wait 없음
Secrets secrets Resources: ID 조회, 목록, 이름 조회, 삭제·삭제 대기, 상태 대기
SecretStores secretstores List/All, GetGlobalDefault, GetPreferred: 목록·두 고정 조회; Resources·CRUD·Find·Wait 없음

공통 Collection은 정확한 이름 검색, 중복 이름 오류, 페이지 순회, context 취소와 HTTP 오류 보존을 적용합니다. 상태가 없는 리소스의 Wait는 ErrUnsupported를 반환합니다.

native pager에 연결된 Resources.List/All과 부모 scope의 List/All은 resource.WithMaxItems(n)과 resource.WithPaginated(false)로 raw 행 소비량과 첫 페이지를 제어합니다. cap은 로컬 name/status 및 Trove 사용자 host 필터 전에 적용합니다. 0은 무제한이며 음수는 lazy 순회 시 HTTP 전에 오류입니다. native 경로는 cap을 wire limit hint로 보내지 않고 명시 페이지 크기·query·header를 보존합니다. 페이지 전체 extraction 때문에 cap 뒤 malformed 행도 오류를 낼 수 있습니다. 기존 native typed List의 작업별 옵션은 유지하며, 공통 소비 옵션은 Collection/scope에 전달합니다. 서비스별 Python/Go 목록 비교에서 실제 binding과 continuation 정책을 확인합니다.

변경 요청

리소스 API의 Create/Update에 concrete options를 전달합니다. 기본 필드는 typed options로 지정하고 추가 필드는 With...Field로 지정합니다. query와 header도 해당 연산이 제공하는 With... 함수를 사용합니다. 기본 필드·헤더 덮어쓰기와 지원되지 않는 확장 방식은 요청 전에 거부합니다. 요청 builder interface는 SDK가 구현합니다.

부모가 필요한 연산은 범위 객체를 사용합니다. 범위 객체가 제공하는 Create/Update에도 같은 concrete options를 사용합니다. 응답 변경 추적이나 Python cloud의 모든 복합 작업은 이 API 참조 페이지의 지원 범위를 뜻하지 않습니다.

전체 비교 기준은 openstacksdk 목록, Go API 호출은 전체 API 설명, 실행·검증은 프로젝트 README를 참고합니다.

Documentation

Overview

Code generated by sdkgen; DO NOT EDIT.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Service

type Service struct {
	Acls            *resource0.API
	Containers      *resource1.API
	Orders          *resource2.API
	Quotas          *resource3.API
	SecretConsumers *resource4.API
	Secrets         *resource5.API
	SecretStores    *resource6.API
	// contains filtered or unexported fields
}

Service shares one authenticated client across its resource APIs.

func New

func New(client *gophercloud.ServiceClient) *Service

func (*Service) RawClient

func (s *Service) RawClient() *gophercloud.ServiceClient

Directories

Path Synopsis
Code generated by sdkgen from Gophercloud v2.15.0; DO NOT EDIT.
Code generated by sdkgen from Gophercloud v2.15.0; DO NOT EDIT.
Code generated by sdkgen from Gophercloud v2.15.0; DO NOT EDIT.
Code generated by sdkgen from Gophercloud v2.15.0; DO NOT EDIT.
Code generated by sdkgen from Gophercloud v2.15.0; DO NOT EDIT.
Code generated by sdkgen from Gophercloud v2.15.0; DO NOT EDIT.
Package quotas reads effective Barbican quotas and manages project overrides.
Package quotas reads effective Barbican quotas and manages project overrides.
Package secretconsumers manages associations between one Barbican secret and its consumers.
Package secretconsumers manages associations between one Barbican secret and its consumers.
Code generated by sdkgen from Gophercloud v2.15.0; DO NOT EDIT.
Code generated by sdkgen from Gophercloud v2.15.0; DO NOT EDIT.
Package secretstores reads Barbican's available, global-default and preferred secret-store backends.
Package secretstores reads Barbican's available, global-default and preferred secret-store backends.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL