GraphQL을 사용하여 감사 보고서 설정

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-Managed, GitLab Dedicated

이 페이지에서는 GraphiQL 탐색기를 사용하여 특정 사용자 하위 집합을 대상으로 감사 보고서를 설정하는 방법에 대해 설명합니다.

이 쿼리는 다음을 포함합니다:

pageInfo

이것은 페이지네이션을 구현하는 데 필요한 데이터를 포함합니다. GitLab은 커서 기반의 페이지네이션을 사용합니다. 자세한 정보는 GraphQL 문서의 Pagination을 참조하세요.

nodes

GraphQL 쿼리에서 노드그래프 상의 노드들의 컬렉션을 나타내는 데 사용됩니다. 이 경우에는 노드의 컬렉션인 사용자 개체의 집합입니다. 각각에 대해 다음을 출력합니다:

  • 사용자의 id.
  • 해당 사용자에 속한 프로젝트 또는 그룹 멤버십을 나타내는 membership 조각. 조각을 출력하는 것은 ...memberships 표기로 나타냅니다.

GitLab GraphQL API는 다양한 엔터티의 많은 데이터를 산출할 수 있는 광범위하고 다양한 API입니다. 가장 최신 정보는 공식 참조 문서를 참조하세요.

GraphiQL 탐색기 설정

이 절차는 GraphiQL 탐색기에 복사하여 붙여넣을 수 있는 구체적인 예제를 제시합니다. GraphiQL 탐색기는 다음에서 사용할 수 있습니다:

  1. 다음 코드 조각을 복사하세요.

    {
      users(usernames: ["user1", "user2", "user3"]) {
        pageInfo {
          endCursor
          startCursor
          hasNextPage
        }
        nodes {
          id
          ...memberships
        }
      }
    }
       
    fragment membership on MemberInterface {
      createdAt
      updatedAt
      accessLevel {
        integerValue
        stringValue
      }
      createdBy {
        id
      }
    }
       
    fragment memberships on User {
      groupMemberships {
        nodes {
          ...membership
          group {
            id
            name
          }
        }
      }
         
      projectMemberships {
        nodes {
          ...membership
          project {
            id
            name
          }
        }
      }
    }
    
  2. GraphiQL 탐색기 도구를 엽니다.
  3. 위에 나열된 query를 GraphiQL 탐색 도구의 왼쪽 창에 붙여넣으세요.
  4. 결과를 얻으려면 실행을 선택하세요.

GraphiQL 탐색기에서 보드 검색

note
GraphQL API는 표준 ID 대신 GlobalID를 반환합니다. 또한 단일 정수가 아닌 GlobalID를 입력으로 예상합니다.

이 GraphQL 쿼리는 사용자가 명시적으로 멤버로 만들어진 그룹과 프로젝트를 반환합니다. GraphiQL 탐색기는 리소스에 액세스하는 권한을 인증하기 위해 세션 토큰을 사용하므로, 출력은 현재 인증된 사용자가 액세스할 수 있는 프로젝트와 그룹으로 제한됩니다. 인스턴스 관리자로서 로그인한 경우, 소유 여부에 관계없이 모든 레코드에 액세스할 수 있습니다.

자세한 정보는 다음을 참조하세요: