authz
권한 grant 발급·조회·회수
내가 받은 권한(grant)을 조회하는 operation 이 있는 페이지예요. grant 는 어떤 커넥터를 어떤 preset(허용 action)으로, 어디까지(범위) 쓸 수 있는지를 담아요. 관리자가 쓰는 grant 범위·접근 정책 표면도 아래에 짧게 정리했어요. 권한을 주고 회수하는 운영 흐름은 멤버 관리 가이드에 있어요.
1 operations — 권한 grant 발급·조회·회수
GET /api/v1/tenants/{tenantID}/me/grants
authorizationGetApiV1TenantsByTenantIDMeGrants
자기 user_id 로 발급된 active grant 들을 시간 역순으로 조회.
- 호출 권한: tenant_member
| 언어 | 호출 |
|---|---|
| node | sdk.gateway(…) — 리소스 모델 — 인자·반환 타입은 패키지의 TypeScript 정의 참조 |
| go | client.Authz().AuthorizationGetApiV1TenantsByTenantIDMeGrants(ctx, axhub.OperationParams{PathParams: …, Query: …, Body: …}) |
| java | client.authz().authorizationGetApiV1TenantsByTenantIDMeGrants(pathParams, query, body) — 비동기: authorizationGetApiV1TenantsByTenantIDMeGrantsAsync(…) → CompletableFuture |
| kotlin | client.authz.authorizationGetApiV1TenantsByTenantIDMeGrants(pathParams, query, body) — suspend |
| python | client.authz.authorization_get_api_v1_tenants_by_tenant_id_me_grants(path_params=…, query=…, body=…) — AsyncAxHubClient 는 동일명 await |
| ruby | client.authz.authorization_get_api_v1_tenants_by_tenant_id_me_grants(path_params: …, query: …, body: …) |
| 공통 | request("authorizationGetApiV1TenantsByTenantIDMeGrants", pathParams, query, body) |
Path 파라미터 — pathParams 로 전달
| 이름 | 타입 | 설명 |
|---|---|---|
tenantID 필수 | string | 테넌트 UUID |
응답 — 200 · OK
배열 응답 → SDK 는 {"value": [...]} 로 감싸 반환. 원소 필드:
| 이름 | 타입 | 설명 |
|---|---|---|
connectorId (wire: connector_id) | string | |
createdAt (wire: created_at) | string | |
expiresAt (wire: expires_at) | string | |
grantedAt (wire: granted_at) | string | |
grantedBy (wire: granted_by) | string | |
id | string | |
policyIds (wire: policy_ids) | array<string> | |
presetId (wire: preset_id) | string | |
reason | string | |
revokedAt (wire: revoked_at) | string | |
revokedBy (wire: revoked_by) | string | |
scopeResourcePaths (wire: scope_resource_paths) | array<string> | 이 grant 가 닿을 수 있는 대상 목록(schema/table). 빈 배열/생략 = 커넥터 전체 (spec 172). |
source | string | |
status | string | Status 는 active / revoked / expired. |
subjectId (wire: subject_id) | string | |
subjectKind (wire: subject_kind) | string | |
tenantId (wire: tenant_id) | string | |
updatedAt (wire: updated_at) | string |
에러 status: 401 403 500 — 에러 처리
grant 범위·접근 정책 (관리 표면)
grant 는 subject×connector×preset 에 범위(scope_resource_paths) 축이 더해진 4축이다 (spec 172). 범위는 생성 시 지정하거나 tenant_admin 이 PUT /api/v1/tenants/{tenantID}/grants/{grantID}/scope (authorizationPutApiV1TenantsByTenantIDGrantsByGrantIDScope) 로 통째 교체한다 — schema/table 문자열 배열, 최대 200개(중복 제거), 빈 배열이면 커넥터 전체로 되돌린다. 회수·만료된 grant 는 409.
행·열 접근 정책(access-policy)은 /api/v1/tenants/{tenantID}/access-policies CRUD 로 관리한다. 정책마다 resource_path(적용 대상 schema/table — 비면 커넥터 전체, spec 169)·connector_id(소속 커넥터 — 비면 커넥터 무관, spec 171)를 가질 수 있다. 활성 grant 가 참조 중인 정책 삭제는 409 policy_in_use (spec 168). 범위·정책이 Gateway 호출에서 어떻게 집행되는지는 gateway 에 있다.