허용된 도메인 나열 및 가져오기

이 페이지에서는 허용된 도메인 API를 사용하여 허용 목록에서 특정 도메인을 나열하고 검색하는 방법을 보여주는 코드 예시와 운영 세부정보를 제공합니다.

시작하기 전에

이 페이지의 정보를 계속 진행하기 전에 다음 작업을 수행하세요.

허용 목록에 있는 도메인 나열

list 메서드를 사용하여 모든 항목을 가져옵니다. 선택적으로 pageSize, pageToken 또는 filter 문자열을 제공하여 결과를 좁힐 수 있습니다.

Python

def list_allowlisted_domains(
    service, page_size=None, page_token=None, domain_filter=None
):
  """Lists allowlisted domains."""
  try:
    filter_string = None
    if domain_filter:
      filter_string = f"domain = '{domain_filter}'"

    response = (
        service.allowlistedDomains()
        .list(
            pageSize=page_size, pageToken=page_token, filter=filter_string
        )
        .execute()
    )
    return response
  except Exception as e:
    print(f'An error occurred during list: {e}')
    return None

특정 도메인 가져오기

이전 목록 작업에서 가져온 리소스 이름을 사용하여 특정 도메인을 동기식으로 검색합니다.

Python

def get_allowlisted_domain(service, resource_name):
  """Gets an allowlisted domain."""
  if not resource_name:
    print('Resource name is missing.')
    return None

  try:
    response = service.allowlistedDomains().get(name=resource_name).execute()
    return response
  except Exception as e:
    print(f'An error occurred during get: {e}')
    return None

오류 처리

이 섹션에서는 허용된 도메인을 나열하거나 가져올 때 발생하는 일반적인 오류 조건과 문제 해결 단계를 설명합니다.

목록 오류 처리

오류 조건 RPC 상태 코드 오류 메시지 문제 해결 / 근거
리소스에 대한 권한이 없음 PERMISSION_DENIED (403) "Permission denied for allowlisted domain resource." • 사용자에게 적절한 범위가 부여되었는지 확인합니다.
• 사용자에게 필요한 권한이 있는지 확인합니다.
• 연락처 이메일에 문의하여 프로젝트/사용자가 허용 목록에 추가되었는지 확인합니다.
사용자의 고객 ID를 찾을 수 없음 NOT_FOUND (404) "Customer ID not found for user." 로그인한 사용자가 유효한 도메인에 연결되어 있지 않습니다.
페이지로 나누기 중에 목록이 변경됨 ABORTED "List has been mutated. Please restart pagination." 페이지로 나누기를 하는 동안 기본 도메인 목록이 수정 (변경)되었습니다. 첫 번째 페이지에서 allowlistedDomains.list 작업을 다시 시작해야 합니다. 동시에 진행 중인 변경사항이 있는 경우 전체 목록을 한 번에 가져오는 것이 좋습니다.
잘못된 도메인 필터 값이 제공됨 INVALID_ARGUMENT (400) "Invalid domain filter value provided. Error: <Error message>." 목록 요청의 필터 매개변수에 제공된 도메인이 비어 있지 않거나 구문상 유효하지 않은지 다시 한번 확인합니다.
잘못된 필터 매개변수가 제공된 경우:
필터에 전달된 잘못된 구문 또는 지원되지 않는 작업으로 인해 allowlistedDomains.list 작업이 실패했습니다. 오류 메시지에 정확한 사용 사례가 설명됩니다. 다음 형식을 사용하여 API를 호출해야 합니다.
GET https://cloudidentity.googleapis.com/v1/allowlistedDomains?filter="domain = 'google.com'"
필터 표현식이 잘못됨 INVALID_ARGUMENT (400) "Invalid filter expression: %s." 요청에 잘못된 필터 표현식이 전달되었습니다.
복합 조건이 지원되지 않음 INVALID_ARGUMENT (400) "Composite conditions (AND, OR, NOT) are not supported in the filter." 필터는 복합 조건을 지원하지 않습니다. 단일 조건 필터링만 허용됩니다.
'=' 연산자만 지원됨 INVALID_ARGUMENT (400) "Only '=' operator is supported in the filter." 모든 필터 표현식에 같음 연산자 (=)를 사용합니다. 다른 작업은 지원되지 않습니다.
'domain' 필드만 지원됨 INVALID_ARGUMENT (400) "Only 'domain' field is supported in the filter." 필터는 도메인 필드를 타겟팅해야 합니다 (예: domain = 'example.com'). 다른 필드는 지원되지 않습니다.
RHS에 잘못된 멤버 값이 있거나 문자열이어야 함 INVALID_ARGUMENT (400) "RHS of filter expression has invalid member value."
"RHS of filter expression should be a string."
필터 표현식의 오른쪽 값 (RHS)은 문자열 (도메인 이름)이어야 합니다.
페이지 크기가 음수임 INVALID_ARGUMENT (400) "Page size cannot be negative." pageSize 매개변수가 음이 아닌 정수인지 확인합니다.
페이지 토큰이 잘못됨 INVALID_ARGUMENT (400) "Invalid page token." 이 오류는 토큰의 형식이 잘못되었거나 토큰이 만료되었음을 나타냅니다. 이전 목록 응답의 nextPageToken 필드에서 제공된 정확하고 수정되지 않은 토큰을 사용하고 있는지 확인합니다. 유효성 검사에 실패하면 pageToken 매개변수를 생략하여 첫 번째 페이지에서 페이지로 나누기를 다시 시작합니다.

가져오기 오류 처리

오류 조건 RPC 상태 코드 오류 메시지 문제 해결 / 근거
리소스에 대한 권한이 없음 PERMISSION_DENIED (403) "Permission denied for allowlisted domain resource." • 사용자에게 적절한 범위가 부여되었는지 확인합니다.
• 사용자에게 필요한 권한이 있는지 확인합니다.
• 연락처 이메일에 문의하여 프로젝트/사용자가 허용 목록에 추가되었는지 확인합니다.
사용자의 고객 ID를 찾을 수 없음 NOT_FOUND (404) "Customer ID not found for user." 로그인한 사용자가 유효한 도메인에 연결되어 있지 않습니다.
허용 목록에서 도메인을 찾을 수 없음 NOT_FOUND (404) "Allowlisted domain <domain> not found" 제공된 도메인이 허용 목록에 없습니다.
리소스 이름이 잘못됨 INVALID_ARGUMENT (400) "Invalid resource name: <resourceName>." 리소스 이름 형식 검증: 이름 매개변수에 사용되는 문자열은 allowlistedDomains/UNIQUE_IDENTIFIER 형식을 정확히 따라야 합니다.