크로스 사이트 권한 부여 메타 생성¶
POST /api/v1/workspace_data/cross_site_grant/meta/create
개요¶
Body 요청 파라미터¶
| 파라미터명 | 유형 | 필수 | 설명 |
|---|---|---|---|
| targetWorkspaceUUID | string | 권한 부여 대상 워크스페이스 UUID; 이 필드를 우선 사용하며, 기존 필드 workspaceUUID와 호환됨 빈 값 허용: False 빈 문자열 허용: False |
|
| workspaceUUID | string | 권한 부여 대상 워크스페이스 UUID 호환 필드, 호출 측은 targetWorkspaceUUID를 사용하는 것을 권장 빈 값 허용: False 빈 문자열 허용: False |
|
| type | array | 데이터 유형, ["*"]는 전체를 의미 예시: ['logging', 'metric', 'object', 'custom_object', 'keyevent', 'tracing', 'rum', 'security', 'network', 'profiling'] 빈 값 허용: True |
|
| indexes | array | 인덱스 이름, [""]는 전체를 의미 예시: [''] 빈 값 허용: False |
|
| conditions | json | 권한 부여 범위 필터 조건 빈 값 허용: False |
파라미터 추가 설명¶
권한 부여 측에서 크로스 사이트 권한 부여 메타 파일을 생성합니다. 프론트엔드 또는 호출 측은 먼저 권한 부여 측 사이트에서 CrossSiteGrantCfg 공개키/개인키 초기화를 완료해야 합니다.
자세한 내용은 다음을 참조하세요: 배포판 크로스 사이트 권한 부여 사용 설명
- 사용 사례: 사용자가 "크로스 사이트 권한 부여"를 선택한 후, 권한 부여 워크스페이스에서 본 인터페이스를 호출하여 메타를 생성하고, 완전한 메타를 권한 부여 대상 측에 전달하여 가져오기합니다.
- 배포판 서비스는 최소 2026-06-03 릴리스 버전으로 업그레이드해야 새로운 버전의 사이트 간 권한 부여 방식을 지원합니다.
- 본 인터페이스는 권한 부여 측의 pending 레코드만 생성하고 메타를 반환하며, 권한 부여 대상 측 사이트에 능동적으로 접근하지 않습니다.
- 생성된 비즈니스 권한 부여 레코드는
/wksp_share/list를 통해 확인하고,/wksp_share/<uuid>/modify를 통해 권한 부여 범위를 수정하며,/wksp_share/delete를 통해 삭제 또는 취소합니다.
요청 예시¶
curl 'https://openapi.guance.com/api/v1/workspace_data/cross_site_grant/meta/create' \
-H 'Content-Type: application/json' \
-H 'DF-API-KEY: <DF-API-KEY>' \
--data-raw '{"targetWorkspaceUUID":"wksp_target","type":["logging"],"indexes":["*"],"conditions":{}}' \
--compressed
응답¶
{
"code": 200,
"content": {
"grantUUID": "grant_pending_1",
"status": "pending",
"expireAt": 1770000000,
"fileName": "cross-site-grant-wksp_target-1770000000.json",
"meta": {
"version": "2026-05-27",
"metaUUID": "meta_1",
"createdAt": 1769998200,
"expireAt": 1770000000,
"sourceWorkspace": {
"workspaceUUID": "wksp_source",
"workspaceName": "권한 부여 워크스페이스"
},
"targetWorkspaceUUID": "wksp_target",
"sourceSite": {
"siteCode": "testing",
"regionCode": "testing",
"issuer": "https://testing.example.com",
"baseUrl": "https://testing.example.com",
"jwksUri": "https://testing.example.com/api/v1/workspace_data/.well-known/cross-site-jwks.json",
"kid": "kid_1",
"publicKeys": [
{
"kid": "kid_1",
"publicKey": "-----BEGIN PUBLIC KEY-----..."
}
]
},
"grantScope": {
"type": [
"logging"
],
"indexes": [
"*"
],
"conditions": {}
},
"auth": {
"tempAuthCode": "temp_code_xxx",
"tempAuthCodeExpireAt": 1770000000
},
"security": {
"signAlg": "RS256",
"kid": "kid_1"
},
"signature": "<JWS>"
}
},
"errorCode": "",
"message": "",
"success": true,
"traceId": "TRACE-EXAMPLE"
}