BeyondCorp Enterprise용 정책 문제 해결 도구를 사용하여 문제 해결

BeyondCorp Enterprise는 관리자가 최종 사용자의 실패한 액세스를 선별하고 분석하기 위해 사용할 수 있는 문제 해결 도구를 제공합니다.

BeyondCorp Enterprise를 통해 기업은 컨텍스트 기반 애플리케이션 액세스를 제공하는 고급 규칙을 만들 수 있습니다. 하지만 위치 제한부터 기기 규칙까지 리소스에 여러 액세스 규칙이 적용되는 경우에는 최종 사용자가 리소스에 액세스할 수 없는 이유를 확인하기 어려울 수 있습니다.

정책 문제 해결 도구를 사용하면 관리자가 액세스 실패 이유를 확인하고, 필요에 따라 정책을 변경하고 액세스를 허용하기 위해 최종 사용자에게 해당 컨텍스트를 수정하도록 안내할 수 있습니다.

정책 문제 해결 도구는 여러 사용자 그룹을 위해 여러 리소스에 여러 규칙을 적용해야 하는 조직에 있어서 귀중한 도구입니다.

시작하기 전에

정책 문제 해결 도구는 프리미엄 기능이며 BeyondCorp Enterprise 라이선스가 필요합니다.

정책 문제 해결 도구를 사용하려면 IAP 보호 애플리케이션 오른쪽에 있는 3개의 점, 설정을 클릭한 다음 문제해결 URL 생성을 선택하여 IAP 설정에서 IAP 리소스에 대해 이 기능을 사용 설정해야 합니다. 정책 문제 해결 도구의 효과를 극대화하기 위해서는 IAP 설정 관리자 역할(roles/iap.settingsAdmin)이 필요합니다. 이 역할이 있으면 모든 IAP 리소스의 IAP 설정을 검색하고 업데이트할 수 있습니다.

문제 해결 URL은 사용 설정된 경우 기본 403 페이지에만 제공됩니다.

문제 해결 도구 워크플로 개요

정책 문제 해결 도구는 대상 IAP 리소스의 모든 유효 정책에 대해 자세한 평가 결과를 볼 수 있는 사용자 인터페이스를 제공합니다. 사용자 액세스가 실패하면 정책 문제 해결 도구에 실패한 바인딩의 세부정보 및 실패한 액세스 수준에 대한 분석(바인딩에 있는 경우)이 표시됩니다.

사용자 액세스 거부됨

사용자에게 권한이 없거나 IAP 리소스 액세스에 필요한 조건을 충족시키지 못한 경우 403 액세스 거부 오류 페이지가 표시됩니다. 403 페이지에는 문제 해결 URL이 포함되어 있습니다. 이를 복사하여 애플리케이션 소유자 또는 보안 관리자에게 수동으로 전송할 수 있습니다. 또는 사용자 인터페이스에서 이메일 전송을 클릭할 수 있습니다.

사용자가 이메일 전송을 클릭하면 OAuth 동의 화면에 구성된 지원 이메일 주소(supportEmail)로 이메일이 전송됩니다. OAuth 동의 화면 구성에 대한 자세한 내용은 프로그래매틱 방식으로 IAP용 OAuth 클라이언트 만들기를 참조하세요.

실패한 액세스 문제 해결

실패한 액세스 요청에 대한 링크가 수신되었을 때 URL을 클릭하면 기본 브라우저로 URL이 열립니다. 기본 브라우저에서 Google Cloud Console에 로그인되지 않았으면 정책 문제 해결 도구 분석 페이지에 액세스하기 위해 다른 로그인 페이지로 리디렉션됩니다.

정책 문제 해결 도구 분석 페이지에는 대상 주체 이메일 주소, 대상 IAP 리소스 URL, 필요한 권한을 포함하여 제한된 액세스에 대한 세부정보가 표시됩니다. 또한 주체 구성원 아님 및 충족 안 함 조건과 같은 오류가 발생한 위치에 대한 상위 수준의 보기와 함께 Identity and Access Management(IAM) binding의 실제 평가 결과에 대한 목록 보기가 표시됩니다.

실패한 액세스 권한을 추가로 분석하려면 Binding 세부정보를 참조하세요. Binding 세부정보 내에서 binding 구성요소인 역할, 주체, 조건을 볼 수 있습니다. 권한이 충분한 구성요소에는 조치 필요 없음이 표시됩니다. 주체 카테고리: 아래 그룹에 주체를 추가하십시오.와 같이 액세스가 실패한 구성요소, 권한 격차가 명시적으로 설명됩니다.

사용자 인터페이스에서 관련 binding 섹션은 기본적으로 사용 설정되어 있습니다. 관련 binding 섹션에 나열된 binding은 전체 목록이 아니며, 특정 액세스 문제를 해결할 때 중요할 수 있는 가장 관련성이 높은 binding입니다. 특정 리소스와 연관된 실제 정책에는 프로젝트 수준에 부여된 Cloud Storage 권한과 같이 리소스와 관련이 없는 binding이 많이 포함되었을 수 있습니다. 관련이 없는 세부정보는 필터링됩니다.

또한 액세스 수준 설명을 확인하여 실패한 조건을 추가로 조사할 수 있습니다. 액세스 수준 세부정보는 오류가 발생한 위치를 알려주고 오류 해결을 위한 수정 사항을 제안합니다. 필요에 따라 필요한 작업을 다시 사용자에게 전달하거나 정책을 수정할 수 있습니다. 예를 들어 기기가 기업 소유가 아니기 때문에 요청이 실패했습니다.와 같은 작업을 다시 사용자에게 전송할 수 있습니다.

일반적인 문제 해결 시나리오

다음은 정책 문제 해결 도구를 사용할 때 발생할 수 있는 일반적인 시나리오입니다.

  • 회사 소유 기기로 전환 또는 운영체제 업데이트와 같은 최종 사용자 안내와 같이 문제 해결 후 최종 사용자에게 작업 가능 항목을 제공합니다.
  • 최종 사용자에게 올바른 권한을 할당하지 않은 것이 확인되어 IAP 인터페이스(roles/iap.httpsResourceAccessor)에서 대상 주체에 대해 새 binding을 만듭니다.
  • 다음에 예시로 든 이유로 액세스 수준을 잘못 만든 것이 확인되었습니다.
    • 회사 서브네트워크와 같이 직원이 현재 재택근무 중이기 때문에 더 이상 적용되지 않는 복잡한 중첩된 속성 제한을 만들었습니다.
    • 잘못된 액세스 수준의 매개변수를 적용했습니다. 예를 들어 사용자가 공급업체 제한을 포함하는 커스텀 수준을 만들 수 있도록 지정했지만 속성을 다른 유형과 비교했습니다. 예를 들면 device.vendors["vendorX"].data.["should_contain_boolean_value"] == "true"입니다. 왼쪽은 부울 값을 반환하고 오른쪽은 true 문자열을 반환합니다. 동등하지 않은 속성으로 인해 정책 구성에서 오류를 감지하는 것이 어렵습니다. 정책 문제 해결 도구는 양 측면에서 자세한 일부 평가 결과와 함께 항목이 오류로 평가된 이유를 설명합니다.

제한된 액세스 문제 해결

정책 문제 해결 도구의 효과를 극대화하기 위해서는 보안 검토자 역할(roles/iam.securityReviewer)이 필요합니다. 이 역할은 적용 가능한 모든 Cloud IAM 정책을 읽을 수 있도록 보장합니다.

기기 권한은 선택사항입니다. 대상 리소스와 연결된 정책에 기기를 암호화하도록 요구하는 액세스 수준과 같은 기기 정책이 포함된 경우, 대상 주체의 기기 세부정보를 검색하는 권한이 확인되지 않은 한 정확한 결과를 얻지 못할 수 있습니다. Google Workspace 최고 관리자, 서비스 관리자, 모바일 관리자는 일반적으로 기기 세부정보를 볼 수 있는 액세스 권한을 갖습니다. 최고 관리자, 서비스 관리자, 모바일 관리자가 아닌 사용자가 액세스 문제를 해결하도록 하려면 다음 단계를 완료합니다.

  1. MDM 관리자 권한으로 커스텀 Google Workspace 관리자 역할을 만듭니다.
  2. 관리 콘솔을 사용하여 사용자에게 역할을 할당합니다.

그룹 멤버십 보기 권한은 선택사항입니다. 정책에 그룹이 포함된 경우 이를 열기 전 그룹 세부정보를 볼 수 있는 권한이 있어야 합니다. 일반적으로 Google Workspace 최고 관리자와 그룹 관리자에게는 그룹 멤버십을 볼 수 있는 권한이 있습니다. 최고 관리자 또는 그룹 관리자가 아닌 사용자가 액세스 문제를 해결하도록 하려면 다음 단계를 완료합니다.

  1. groups.read 권한(Admin API 권한 아래에 있음)을 포함하는 커스텀 Google Workspace 관리자 역할을 만듭니다.
  2. 사용자에게 역할을 할당합니다. 그러면 사용자가 개발자 도메인 내 모든 그룹의 멤버십을 보고 더욱 효율적으로 액세스 문제를 해결할 수 있습니다.

커스텀 역할 권한은 선택사항입니다. 커스텀 역할 보기 권한이 없으면 커스텀 역할을 포함하는 binding에서 주체에 액세스 권한이 있는지 여부를 확인하지 못할 수 있습니다.

문제 해결 도구 의도된 동작

문제 해결은 현재 타임스탬프와 함께 현재 정책 및 기기 정보를 사용하는 제한된 액세스 권한에 따라 수행됩니다. 따라서 제한된 액세스 거부 후 기기를 동기화했거나 정책을 변경한 경우에는 이전 컨텍스트 및 데이터를 사용하여 문제 해결을 수행할 수 없습니다. 현재 컨텍스트 및 데이터를 사용하여 문제 해결이 수행됩니다.

binding 문제 해결 팁

승인 오류가 있는 binding의 모든 구성요소(역할, 주체, 조건)에 대해 이러한 binding의 문제 해결 결과를 확인하려면 필요한 권한을 부여합니다.

binding에서 역할 검사가 실패하면 다음 작업을 완료합니다.

  • 다른 binding을 선택하거나 IAP 인터페이스를 사용해서 필요에 따라 적용된 액세스 수준으로 주체에 roles/iap.httpsResourceAccessor 역할을 부여하여 새 binding을 만듭니다.
  • 커스텀 역할인 경우 커스텀 역할에 대상 권한을 추가하여 권한을 부여할 수 있습니다(해당하는 경우 모든 주체 오류 및 모든 조건 오류를 해결한 후). 기존 커스텀 역할에 권한을 추가하면 필요한 것보다 많은 권한이 포함된 다른 binding을 이 커스텀 역할에 부여할 수 있습니다. 그러한 커스텀 역할의 범위와 작업의 위험성을 인지하고 있지 않으면 이렇게 하지 마세요.
  • 커스텀 역할이 아닌 경우에는 다른 binding을 선택하거나 IAP 인터페이스를 사용해서 필요에 따라 적용된 액세스 수준으로 주체에 roles/iap.httpsResourceAccessor 역할을 부여하여 새 binding을 만듭니다.

역할 선택이 성공했지만 주체 선택이 실패하면 다음 작업을 수행합니다.

  • 구성원에 그룹이 포함된 경우 그룹에 주체를 추가하여 권한을 부여할 수 있습니다(해당하는 경우 모든 조건 오류를 해결한 후). 기존 그룹에 주체를 추가하면 필요한 것보다 많은 권한이 그룹에 부여될 수 있습니다. 그러한 그룹의 범위와 작업의 위험성을 인지하고 있지 않으면 이렇게 하지 마세요.
  • 멤버에 그룹이 포함되지 않았으면 다른 binding을 선택하거나 IAP 인터페이스를 사용해서 필요에 따라 적용된 액세스 수준으로 주체에 roles/iap.httpsResourceAccessor를 부여하여 새 binding을 만듭니다.

역할 및 주체 선택이 성공했지만 조건이 실패하면 해당 조건 아래에 나열된 각 개별 액세스 수준에 대해 문제 해결 세부정보를 보고 조건이 OR 논리 연산자와 연결된 액세스 수준만으로 구성되는지 확인합니다.