Apigee 스페이스로 API 리소스 관리

Apigee Edge 문서 보기

이 주제에서는 스페이스에서 API 리소스를 만들고 관리하는 방법을 설명합니다. 스페이스에서 API 프록시, 공유 흐름, API 제품을 만들 수 있습니다. 스페이스에 생성된 리소스는 스페이스와 동일한 권한을 상속합니다.

스페이스에서 리소스를 만드는 것은 Apigee 조직에서 리소스를 만드는 것과 동일하지만 리소스를 만들 때 스페이스를 선택할 수 있다는 점이 다릅니다. 비공개 GA 출시 버전의 경우 Apigee API를 사용하거나 Cloud 콘솔의 Apigee를 사용하여 명령줄에서 API 리소스를 만들 수 있습니다.

이 가이드에서는 다음에 필요한 단계를 간략하게 설명합니다.

Apigee 스페이스 개요는 Apigee 스페이스를 참조하세요.

Apigee API 리소스 유형에 대한 자세한 내용은 다음을 참조하세요.

시작하기 전에

Apigee 스페이스에서 API 리소스를 만들려면 먼저 다음 태스크가 완료되었는지 확인합니다.

  • Apigee 구독 또는 사용한 만큼만 지불 조직을 프로비저닝해야 합니다. Apigee 프로비저닝에 필요한 단계는 Apigee 설정을 참조하세요.
  • Apigee 조직에서 스페이스를 만들어야 합니다. 자세한 내용은 Apigee 스페이스 만들기를 참조하세요.
  • 스페이스에 구성원을 할당해야 합니다. 자세한 내용은 스페이스에서 구성원 및 역할 관리를 참조하세요.

필수 역할 및 권한

Apigee 스페이스가 도입됨에 따라 IAM에서 API 리소스에 대한 일부 작업을 수행하는 데 필요한 권한을 확인하는 방식이 변경되었습니다. API 리소스가 스페이스에 있는 경우 IAM은 작업을 수행하는 스페이스 구성원의 스페이스 수준에서 적절한 권한을 확인합니다. API 리소스가 스페이스에 있는 이러한 작업에 필요한 권한은 아래에 설명되어 있습니다.

작업 권한 필요 범위
API 프록시 배포
apigee.deployments.create
AND
apigee.proxyrevisions.deploy
환경
 
API 프록시
API 프록시의 모든 배포 나열 apigee.proxies.get API 프록시
API 프록시 버전의 모든 배포 나열 apigee.proxyrevisions.get API 프록시 버전
환경의 모든 API 프록시 배포 나열
apigee.deployments.list
또는
apigee.proxies.get
환경
 
API 프록시
API 프록시 버전 배포 가져오기
apigee.deployments.get
또는
apigee.proxyrevisions.get
API 프록시 버전
 
환경
API 프록시 버전 삭제 apigee.deployments.delete API 프록시 버전 및 환경
공유 흐름 배포
apigee.deployments.create
AND
apigee.sharedflows.deploy
환경
 
공유 흐름
공유 흐름의 모든 배포 나열 apigee.sharedflows.get 공유 흐름
공유 흐름 버전의 모든 배포 나열 apigee.sharedflowrevisions.get 공유 흐름 버전
환경의 공유 흐름의 모든 배포 나열
apigee.deployments.list
또는
apigee.sharedflows.get
환경
 
공유 흐름
공유 흐름 버전의 배포 가져오기
apigee.deployments.get
또는
apigee.sharedflowrevisions.get
API 프록시 버전
 
공유 흐름
공유 흐름 삭제 apigee.deployments.delete 공유 흐름 및 환경
API 프록시 버전의 디버그 세션 만들기 apigee.tracesessions.create API 프록시 버전 및 환경
디버그 세션 검색 apigee.tracesessions.get API 프록시 및 환경
디버그 세션에서 데이터 삭제 apigee.tracesessions.delete API 프록시 및 환경
API 프록시 버전에서 활성 디버그 세션 나열 apigee.tracesessions.list 환경 또는 API 프록시 버전
트랜잭션에서 디버그 데이터 가져오기 apigee.tracesessions.get 환경 및 API 프록시 버전
디버그 세션의 트랜잭션 ID 나열 apigee.tracesessions.get 환경 및 API 프록시 버전

스페이스 멤버에 역할 및 권한 할당

설명된 다양한 권한은 apigee.apiAdminV2 역할 또는 apigee.environmentAdmin 역할에 포함되어 있습니다. 자세한 내용은 Apigee 역할을 참조하세요.

이러한 역할과 권한을 스페이스 구성원에게 할당하려면 다음 중 하나를 수행합니다.

  • API를 사용하여 스페이스에 roles/apiAdminV2 역할을 추가하고 API를 사용하여 대상 환경에 roles/environmentAdmin 역할을 추가합니다.
  • IAM 사용자 인터페이스를 사용하여 프로젝트에 역할을 추가합니다.

역할 확인

  1. Google Cloud 콘솔에서 IAM 페이지로 이동합니다.

    IAM으로 이동
  2. 프로젝트를 선택합니다.
  3. 주 구성원 열에서 나 또는 내가 속한 그룹을 식별하는 모든 행을 찾습니다. 내가 속한 그룹을 알아보려면 관리자에게 문의하세요.

  4. 나를 지정하거나 포함하는 모든 행의 역할 열을 확인하여 역할 목록에 필요한 역할이 포함되어 있는지 확인합니다.

역할 부여

  1. Google Cloud 콘솔에서 IAM 페이지로 이동합니다.

    IAM으로 이동
  2. 프로젝트를 선택합니다.
  3. 액세스 권한 부여를 클릭합니다.
  4. 새 주 구성원 필드에 사용자 식별자를 입력합니다. 일반적으로 Google 계정의 이메일 주소입니다.

  5. 역할 선택 목록에서 역할을 선택합니다.
  6. 역할을 추가로 부여하려면 다른 역할 추가를 클릭하고 각 역할을 추가합니다.
  7. 저장을 클릭합니다.

Google Cloud 콘솔에서 API 리소스에 액세스하는 데 필요한 역할

스페이스팀 구성원으로서 Cloud 콘솔의 Apigee UI에 액세스하려면 사용자에게 ApigeeSpaceUser 역할이 부여되어야 합니다. 자세한 내용은 IAM 권한 및 역할을 참조하세요.

스페이스에서 API 프록시 관리

스페이스에 할당된 Apigee 조직 구성원은 API 프록시를 스페이스 리소스로 만들고, 배포, 배포 취소할 수 있습니다. 다른 스페이스에만 할당된 구성원은 이러한 프록시에 대해 액세스 또는 관리를 수행할 수 없습니다.

API 프록시를 스페이스 리소스로 만들기

다음 섹션에 설명된 대로 Cloud 콘솔의 Apigee 또는 API를 사용하여 API 프록시를 스페이스 리소스로 만듭니다.

Cloud 콘솔의 Apigee

Cloud 콘솔의 Apigee를 사용하여 API 프록시를 스페이스 리소스로 만들려면 다음 안내를 따르세요.

  1. API 프록시 만들기에 설명된 단계를 따릅니다.
  2. 5단계에서는 프록시 세부정보 아래에 API 프록시의 스페이스를 선택할 수 있는 추가 필드가 표시됩니다. 목록 상자에서 스페이스를 선택합니다. 스페이스에 API 프록시를 할당하지 않으려면 이 필드를 건너뛰면 됩니다.
  3. 다음을 클릭하여 프록시 생성의 선택적 배포 단계를 진행하거나 만들기를 클릭하여 프록시를 배포하지 않고 만듭니다.

Apigee API

Apigee API를 사용하여 API 프록시를 스페이스 리소스로 만들려면 다음 명령어를 사용합니다.

curl "https://apigee.googleapis.com/v1/organizations/ORG_NAME/apis?name=PROXY_NAME&space=SPACE_NAME&action=import" \
    -X POST -H "Authorization: Bearer $TOKEN" \
    -H "Content-type: multipart/form-data" \
    -F "file=@PROXY_BUNDLE"

각 항목의 의미는 다음과 같습니다.

  • ORG_NAME은 Apigee 조직의 이름입니다.
  • PROXY_NAME은 만들려는 API 프록시의 이름입니다. 이름은 스페이스 내에서만 고유한 것이 아니라 전역적으로 고유해야 합니다.
  • SPACE_NAME은 API 프록시를 만들려는 스페이스의 이름입니다.
  • PROXY_BUNDLE은 API 프록시 번들 파일의 이름입니다.

예를 들어 다음 명령어에서 red 팀 구성원은 proxy-bundle.zip 파일을 사용해서 acme 조직의 red 스페이스 리소스에 proxy-1이라는 API 프록시를 만듭니다.

curl "https://apigee.googleapis.com/v1/organizations/acme/apis?name=proxy-1&space=red&action=import" \
    -X POST -H "Authorization: Bearer $TOKEN" \
    -H "Content-type: multipart/form-data \
    -F "file=@proxy-bundle.zip"

다음 예시에서는 이 명령어의 응답을 보여줍니다.

{
  "basepaths": ["/proxy-1"],
  "revision": 1,
  "apiProxyId": "proxy-1",
  "resourceName": "organizations/acme/apis/proxy-1/revisions/1",
  "space": "red",
  "createTime": ...,
  "updateTime": ...
}

API 프록시를 스페이스 리소스로 배포

다음 섹션에 설명된 대로 Cloud 콘솔의 Apigee 또는 API를 사용하여 API 프록시를 스페이스 리소스로 배포합니다.

Cloud 콘솔의 Apigee

Cloud 콘솔의 Apigee를 사용하여 스페이스 리로스에 API 프록시를 배포하려면 API 프록시 배포에 설명된 단계를 따르세요. 추가 단계나 필드가 필요하지 않습니다.

Apigee API

Apigee API를 사용하여 API 프록시를 스페이스 리소스로 배포하려면 다음 명령어를 사용합니다.

curl "https://apigee.googleapis.com/v1/organizations/ORG_NAME/environments/ENV_NAME/apis/PROXY_NAME/revisions/REVISION_NUMBER/deployments" \
          -X POST -H "Authorization: Bearer $TOKEN" \
          -H "Content-type: application/json"

각 항목의 의미는 다음과 같습니다.

  • ORG_NAME은 Apigee 조직의 이름입니다.
  • ENV_NAME은 API 프록시를 배포하려는 환경의 이름입니다.
  • PROXY_NAME은 배포하려는 API 프록시의 이름입니다.
  • REVISION_NUMBER는 배포하려는 API 프록시의 버전 번호입니다.

예를 들어 다음 명령어에서 red 팀 구성원은 acme 조직에서 API 프록시 proxy-1, 버전 1을 prod 환경에 배포합니다.

curl "https://apigee.googleapis.com/v1/organizations/acme/environments/prod/apis/proxy-1/revisions/1/deployments" \
          -X POST -H "Authorization: Bearer $TOKEN" \
          -H "Content-type: application/json"

다음 예시에서는 이 명령어의 응답을 보여줍니다.

      {
        "environment": "prod",
        "revision": "1",
        "apiProxy": "proxy-1",
        ...
      }
      

스페이스와 연결된 API 프록시 배포 취소

다음 섹션에 설명된 대로 Cloud 콘솔의 Apigee 또는 API를 사용하여 스페이스와 연결된 API 프록시 배포를 취소합니다.

Cloud 콘솔의 Apigee

Cloud 콘솔의 Apigee를 사용하여 스페이스와 연결된 API 프록시를 배포 취소하려면 API 프록시 배포 취소에 설명된 단계를 따르세요. 추가 단계나 필드가 필요하지 않습니다.

Apigee API

Apigee API를 사용하여 스페이스와 연결된 API 프록시를 배포 취소하려면 다음 명령어를 사용합니다.

curl "https://apigee.googleapis.com/v1/organizations/ORG_NAME/environments/ENV_NAME/apis/PROXY_NAME/revisions/REVISION_NUMBER/deployments" \
          -X DELETE -H "Authorization: Bearer $TOKEN" \
          -H "Content-type: application/json"

각 항목의 의미는 다음과 같습니다.

  • ORG_NAME은 Apigee 조직의 이름입니다.
  • ENV_NAME은 API 프록시를 배포 취소하려는 환경의 이름입니다.
  • PROXY_NAME은 배포 취소하려는 API 프록시의 이름입니다.
  • REVISION_NUMBER는 배포 취소하려는 API 프록시의 버전 번호입니다.

예를 들어 다음 명령어에서 red 팀 구성원은 prod 환경으로부터 acme 조직의 API 프록시 proxy-1, 버전 1을 배포 취소합니다.

curl "https://apigee.googleapis.com/v1/organizations/acme/environments/prod/apis/proxy-1/revisions/1/deployments" \
          -X DELETE -H "Authorization: Bearer $TOKEN" \
          -H "Content-type: application/json"

스페이스 리소스로 공유 흐름 관리

스페이스에 할당된 구성원은 공유 흐름을 스페이스 리소스로 만들고, 배포, 배포 취소할 수도 있습니다. 다른 스페이스의 구성원은 이러한 공유 흐름을 액세스 또는 관리할 수 없습니다.

스페이스 리소스로 공유 흐름 만들기

다음 섹션에 설명된 대로 Cloud 콘솔의 Apigee 또는 API를 사용하여 공유 흐름을 스페이스 리소스로 만듭니다.

Cloud 콘솔의 Apigee

Cloud 콘솔의 Apigee를 사용하여 공유 흐름을 스페이스 리소스로 만들려면 다음 안내를 따르세요.
  1. Apigee UI에서 공유 흐름 만들기에 설명된 단계에 따라 처음부터 새 공유 흐름을 만들거나 기존 흐름 번들을 업로드합니다.
  2. 4단계에서 공유 흐름 만들기 대화상자에 API 프록시의 스페이스를 선택할 수 있는 추가 필드가 표시됩니다. 목록 상자에서 스페이스를 선택합니다. 스페이스에 API 프록시를 할당하지 않으려면 이 필드를 건너뛰면 됩니다.
  3. 만들기를 클릭하여 공유 흐름을 만듭니다.

Apigee API

Apigee API를 사용하여 공유 흐름을 스페이스 리소스로 만들려면 다음 명령어를 사용합니다.

curl "https://apigee.googleapis.com/v1/organizations/ORG_NAME/sharedflows?name=FLOW_NAME&space=SPACE_NAME&action=import" \
          -X POST -H "Authorization: Bearer $TOKEN" \
          -H "Content-type: multipart/form-data" \
          -F "file=@SHARED_FLOW_BUNDLE"

각 항목의 의미는 다음과 같습니다.

  • ORG_NAME은 Apigee 조직의 이름입니다.
  • FLOW_NAME은 만들려는 공유 흐름의 이름입니다. 이름은 스페이스 내에서만 고유한 것이 아니라 전역적으로 고유해야 합니다.
  • SPACE_NAME은 공유 흐름을 만들려는 스페이스의 이름입니다.
  • SHARED_FLOW_BUNDLE은 공유 흐름 번들 파일의 이름입니다.

예를 들어 다음 명령어에서 red 팀 구성원은 acme 조직의 red 스페이스와 연결된 flow-1이라는 공유 흐름을 만듭니다.

curl "https://apigee.googleapis.com/v1/organizations/acme/sharedflows?name=flow-1&space=red&action=import" \
          -X POST -H "Authorization: Bearer $TOKEN" \
          -H "Content-type: multipart/form-data" \
          -F "file=@sharedflow-bundle.zip"

다음 예시에서는 이 명령어의 응답을 보여줍니다.

      {
        "name": "organizations/acme/sharedflows/flow-1",
        "revision": 1,
        "sharedFlowId": "flow-1",
        "space": "red",
        "createTime": ...,
        "updateTime": ...
      }
      

공유 흐름을 스페이스 리소스로 배포

다음 섹션에 설명된 대로 Cloud 콘솔의 Apigee 또는 API를 사용하여 공유 흐름을 스페이스 리소스로 배포합니다.

Cloud 콘솔의 Apigee

Cloud 콘솔의 Apigee를 사용하여 공유 흐름을 스페이스 리소스로 배포하려면 다음 안내를 따르세요.

  1. Cloud 콘솔에서 Apigee UI에 로그인합니다.
  2. 공유 흐름을 포함하는 조직을 선택합니다. 조직 간 전환을 참조하세요.
  3. 왼쪽 탐색 메뉴에서 프록시 개발 > 공유 흐름을 선택합니다.
  4. 공유 흐름 개요 페이지에서 배포하려는 공유 흐름의 이름을 클릭합니다. 공유 흐름의 세부정보 페이지가 표시됩니다.
  5. 배포를 클릭하여 배포 대화상자를 엽니다.
  6. 다음을 입력합니다.
    • 버전: 배포하려는 공유 흐름의 버전 번호입니다.
    • 환경: 공유 흐름을 배포하려는 환경입니다.
    • 서비스 계정(선택사항): 공유 흐름의 서비스 계정입니다.
  7. 배포를 클릭합니다.

Apigee API

Apigee API를 사용하여 공유 흐름을 스페이스 리소스로 배포하려면 다음 명령어를 사용합니다.

curl "https://apigee.googleapis.com/v1/organizations/ORG_NAME/environments/ENV_NAME/sharedflows/FLOW_NAME/revisions/REVISION_NUMBER/deployments" \
          -X POST -H "Authorization: Bearer $TOKEN" \
          -H "Content-type: application/json"

각 항목의 의미는 다음과 같습니다.

  • ORG_NAME은 Apigee 조직의 이름입니다.
  • ENV_NAME은 공유 흐름을 배포하려는 환경의 이름입니다.
  • FLOW_NAME은 배포하려는 공유 흐름의 이름입니다.
  • REVISION_NUMBER은 배포하려는 공유 흐름의 버전 번호입니다.

예를 들어 다음 명령어에서 red 팀 구성원은 acme 조직의 공유 흐름 flow-1, 버전 번호 1prod 환경에 배포합니다.

curl "https://apigee.googleapis.com/v1/organizations/acme/environments/prod/sharedflows/flow-1/revisions/1/deployments" \
          -X POST -H "Authorization: Bearer $TOKEN" \
          -H "Content-type: application/json"

다음 예시에서는 이 명령어의 응답을 보여줍니다.

      {
        "environment": "prod",
        "revision": "1",
        "sharedFlow": "flow-1",
        ...
      }
      

스페이스와 연결된 공유 흐름 배포 취소

다음 섹션에 설명된 대로 Cloud 콘솔의 Apigee 또는 API를 사용하여 스페이스와 연결된 공유 흐름을 배포 취소합니다.

Cloud 콘솔의 Apigee

Cloud 콘솔의 Apigee에서 스페이스와 연결된 공유 흐름을 배포 취소하려면 다음 안내를 따르세요.

  1. Cloud 콘솔에서 Apigee UI에 로그인합니다.
  2. 공유 흐름을 포함하는 조직을 선택합니다. 조직 간 전환을 참조하세요.
  3. 왼쪽 탐색 메뉴에서 프록시 개발 > 공유 흐름을 선택합니다.
  4. 공유 흐름 개요 페이지에서 배포 취소하려는 공유 흐름의 이름을 클릭합니다. 공유 흐름의 세부정보 페이지가 표시됩니다.
  5. 배포에서 배포 취소를 클릭합니다.

Apigee API

Apigee API를 사용하여 스페이스와 연결된 공유 흐름을 배포 취소하려면 다음 명령어를 사용합니다.

curl "https://apigee.googleapis.com/v1/organizations/ORG_NAME/environments/ENV_NAME/sharedflows/FLOW_NAME/revisions/REVISION_NUMBER/deployments" \
          -X DELETE -H "Authorization: Bearer $TOKEN" \
          -H "Content-type: application/json"

각 항목의 의미는 다음과 같습니다.

  • ORG_NAME은 Apigee 조직의 이름입니다.
  • ENV_NAME은 공유 흐름을 배포 취소하려는 환경의 이름입니다.
  • FLOW_NAME은 배포 취소하려는 공유 흐름의 이름입니다.
  • REVISION_NUMBER은 배포 취소하려는 공유 흐름의 버전 번호입니다.

스페이스 리소스로 API 제품 관리

스페이스에 할당된 구성원은 API 제품을 만들어서 API 프록시를 번들로 묶을 수 있습니다. 스페이스 구성원은 API 제품을 만들 때 조직에 직접 생성된 프록시와 멤버십이 있는 스페이스에서 리소스로 생성된 API 프록시를 포함하여 자신이 액세스할 수 있는 API 프록시를 선택할 수 있습니다. 다른 스페이스 구성원은 이러한 API 제품에 대해 액세스 또는 관리를 수행할 수 없습니다.

다음 섹션에 설명된 대로 Cloud 콘솔의 Apigee 또는 API를 사용하여 API 제품을 스페이스 리소스로 만듭니다.

Cloud 콘솔의 Apigee

Cloud 콘솔의 Apigee를 사용하여 API 제품을 스페이스 리소스로 만들려면 다음 안내를 따르세요.

  1. API 제품 만들기의 단계를 따릅니다.
  2. 4단계에서 제품 세부정보 페이지에 API 제품의 스페이스를 선택할 수 있는 추가 필드가 표시됩니다. 목록 상자에서 스페이스를 선택합니다. 스페이스에 API 제품을 할당하지 않으려면 이 필드를 건너뛰면 됩니다.
  3. 나머지 구성 정보를 작성한 다음 저장을 클릭합니다.

Apigee API

API 제품을 스페이스 리소스로 만들려면 다음 명령어를 사용합니다.

curl "https://apigee.googleapis.com/v1/organizations/ORG_NAME/apiproducts" \
            -X POST -H "Authorization: Bearer $TOKEN" \
            -H "Content-type: application/json" \
            -d  \
              `{
                "name": "PRODUCT_NAME",
                "displayName": "DISPLAY_NAME",
                "description": "PRODUCT_DESCRIPTION",
                "approvalType": "auto",
                "apiResources": [
                  {
                    "apiproduct": "PRODUCT_NAME",
                    "apiResource": "PROXY_NAME",
                    "operations": [
                      {
                        "method": "GET",
                        "path": "/"
                      }
                    ]
                  }
                ],
                "space": "SPACE_NAME"
              }`

각 항목의 의미는 다음과 같습니다.

  • ORG_NAME은 Apigee 조직의 이름입니다.
  • PRODUCT_NAME은 만들려는 API 제품의 이름입니다. 이름은 스페이스 내에서만 고유한 것이 아니라 전역적으로 고유해야 합니다.
  • DISPLAY_NAME은 UI에 표시된 대로 만들려는 API 제품의 이름입니다.
  • PRODUCT_DESCRIPTION은 만들려는 API 제품에 대한 설명입니다.
  • SPACE_NAME은 API 제품을 만들려는 스페이스의 이름입니다.
  • PROXY_NAME은 API 제품에 추가하려는 API 프록시의 이름입니다.

예를 들어 다음 명령어에서 red 팀 구성원은 acme 조직의 red 스페이스와 연결된 product-1이라는 API 제품을 만듭니다.

curl "https://apigee.googleapis.com/v1/organizations/acme/apiproducts?name=product-1&space=red&action=import" \
            -X POST -H "Authorization: Bearer $TOKEN" \
            -X "Content-type: application/json" \
            -d  \
              `{
                "name": "product-1",
                "displayName": "product-1",
                "description": "Product 1",
                "apiResources": [
                  {
                    "apiproduct": "product-1",
                    "apiResource": "proxy-1",
                    "operations": [
                      {
                        "method": "GET",
                        "path": "/"
                      }
                    ]
                  }
                ],
                "space": "red"
              }`

다음 예시에서는 이 명령어의 응답을 보여줍니다.

        {
          "name": "organizations/acme/apiproducts/product-1",
          "displayName": "product-1",
          "description": "Product 1",
          "apiResources": [
            {
              "apiproduct": "product-1",
              "apiResource": "proxy-1",
              "operations": [
                {
                  "method": "GET",
                  "path": "/"
                }
              ]
            }
          ],
          "space": "red",
          "createTime": ...,
          "updateTime": ...
        }

스페이스와 연결된 모든 API 리소스 나열

ListApiProxies, ListSharedFlows, ListApiProducts를 포함하는 모든 목록 작업에 대해 해당 스페이스와 연결된 모든 리소스를 나열하도록 스페이스 이름을 지정할 수 있습니다. 공간 이름을 지정하지 않으면 나열 작업으로 리소스가 스페이스와 연결되었는지 여부에 관계없이 조직에서 사용자에게 액세스 권한이 있는 모든 리소스가 반환됩니다.

이 태스크를 수행하려면 apigee.apiResources.list 권한이 있어야 합니다. 이 권한은 Apigee > Apigee Organization Admin 역할에 포함되어 있습니다.

특정 스페이스와 연결된 API 리소스 나열

다음 섹션에 설명된 대로 Cloud 콘솔의 Apigee에서 또는 API를 사용하여 특정 스페이스와 연결된 모든 API 리소스를 나열합니다.

Cloud 콘솔의 Apigee

Cloud 콘솔의 Apigee에서 특정 스페이스와 연결된 든 API 리소스를 나열하려면 관련 리소스 유형(API 프록시, 공유 흐름 또는 API 제품)의 개요 페이지를 엽니다. 필터 상자의 목록에서 스페이스 옵션을 선택한 후 스페이스 이름을 입력합니다. 해당 스페이스에 할당된 리소스 목록이 표시됩니다. 사용자가 구성원으로 있는 스페이스와 연결된 리소스만 표시됩니다.

Apigee API

지정된 스페이스와 연결된 모든 API 리소스를 나열하려면 다음 명령어를 사용합니다.

curl -H "Authorization: Bearer $TOKEN" "https://apigee.googleapis.com/v1/organizations/ORG_NAME/RESOURCE_TYPE?space=SPACE_NAME"

각 항목의 의미는 다음과 같습니다.

  • ORG_NAME은 Apigee 조직의 이름입니다.
  • RESOURCE_TYPE은 나열하려는 리소스의 유형입니다. 유효한 값으로 다음이 포함되어 있습니다.
    • apis
    • sharedFlows
    • apiProducts
  • SPACE_NAME은 리소스를 나열하려는 스페이스의 이름입니다.

예를 들어 다음 명령어에서 red 팀 구성원은 acme 조직의 red 스페이스와 연결된 모든 API 프록시를 나열합니다.

curl -H  "Authorization: Bearer $TOKEN" "https://apigee.googleapis.com/v1/organizations/acme/apis?space=red"

다음 예시에서는 이 명령어의 응답을 보여줍니다.

      {
        "proxies": [
          {
            "basepaths": "/proxy-1",
            "revision": "1",
            "apiProxyId": "proxy-1",
            "resourceName": "organizations/acme/apis/proxy-1/revisions/1",
            "space": "red",
            "createTime": ...,
            ....
          }
        ]
      }

스페이스를 지정하지 않고 API 리소스 나열

다음 섹션에 설명된 대로 Cloud 콘솔의 Apigee에서 스페이스를 지정하지 않고 또는 API를 사용하여 모든 API 리소스를 나열합니다.

Cloud 콘솔의 Apigee

Cloud 콘솔의 Apigee에서 지정된 유형의 모든 API 리소스 목록을 보려면 스페이스 연결과 관계없이 관련 리소스 유형(API 프록시, 공유 흐름 또는 API 제품)의 개요 페이지를 엽니다. 사용 가능한 모든 리소스 목록이 표시됩니다. 사용자에게 볼 권한이 있는 리소스만 표시됩니다. 여기에는 사용자가 구성원인 스페이스 또는 스페이스와 연결된 리소스 또는 스페이스와 연결되지 않은 리소스가 포함됩니다.

Apigee API

다음 명령어를 사용하여 스페이스를 지정하지 않고 API 리소스를 나열할 수도 있습니다.

curl -H "Authorization: Bearer $TOKEN" "https://apigee.googleapis.com/v1/organizations/ORG_NAME/RESOURCE_TYPE"

각 항목의 의미는 다음과 같습니다.

  • ORG_NAME은 Apigee 조직의 이름입니다.
  • RESOURCE_TYPE은 나열하려는 리소스의 유형입니다. 유효한 값으로 다음이 포함되어 있습니다.
    • apis
    • sharedFlows
    • apiProducts

예를 들어 모든 조직 리소스에 대해 Organization Admin 액세스 권한이 있는 사용자는 다음 명령어를 사용해서 acme 조직에 있는 모든 API 프록시를 나열할 수 있습니다.

curl -H  "Authorization: Bearer $TOKEN" "https://apigee.googleapis.com/v1/organizations/acme/apis"

acme 조직에 3개의 프록시가 있으면 이 명령어로 3개 프록시 모두에 대한 세부정보가 반환됩니다. 예를 들면 다음과 같습니다.

      {
        "proxies": [
          {
            "basepaths": "/proxy-1",
            "revision": "1",
            "apiProxyId": "proxy-1",
            "resourceName": "organizations/acme/apis/proxy-1/revisions/1",
            "space": "red",
            "createTime": ...,
            ....
          },
          {
            "basepaths": "/proxy-2",
            "revision": "1",
            "apiProxyId": "proxy-2",
            "resourceName": "organizations/acme/apis/proxy-2/revisions/1",
            "space": "blue",
            "createTime": ...,
            ....
          },
          {
            "basepaths": "/proxy-3",
            "revision": "1",
            "apiProxyId": "proxy-3",
            "resourceName": "organizations/acme/apis/proxy-3/revisions/1",
            "space": "green",
            "createTime": ...,
            ....
          }
        ]
      }

red 스페이스의 리소스에 대해 apiAdmin 액세스 권한만 있는 사용자가 동일한 명령어를 사용할 경우에는 이 명령어로 proxy-1에 대한 세부정보만 반환됩니다. 응답은 다음과 같습니다.

      {
        "proxies": [
          {
            "basepaths": "/proxy-1",
            "revision": "1",
            "apiProxyId": "proxy-1",
            "resourceName": "organizations/acme/apis/proxy-1/revisions/1",
            "space": "red",
            "createTime": ...,
            ....
          }
        ]
      }

다음 단계