액세스 제어

에이전트를 빌드하기 위해 여러 팀 구성원이 공동작업하는 경우가 많습니다. 역할을 사용하여 팀 구성원에게 부여되는 액세스와 권한을 제어할 수 있습니다.

API를 사용하는 경우 에이전트에 요청을 보내는 하나 이상의 애플리케이션이 있을 수 있습니다. 이 경우 서비스 계정으로 액세스를 제어할 수 있습니다.

ID 및 액세스 관리(IAM) 또는 Dialogflow 콘솔을 사용하여 액세스를 제어할 수 있습니다. Google Cloud Console을 사용해야 하는 경우는 다음과 같습니다.

  • Dialogflow 콘솔은 에이전트를 만든 사용자에게 소유자/관리자 역할을 제공합니다. 소유자/관리자를 변경하거나, 한 에이전트에 여러 소유자/관리자를 추가하거나, 한 에이전트의 소유자/관리자를 삭제하려면 Cloud Console을 사용해야 합니다.
  • 다른 Google Cloud 리소스(예: Cloud Functions)와의 통합이 있고, 애플리케이션에 전체 프로젝트 액세스 권한을 부여하지 않으려는 경우에는 IAM 용 Cloud Console에서 Dialogflow API 역할(관리자, 클라이언트 또는 리더)을 할당해야 합니다.
  • IAM 역할의 하위 집합에 상응하는 Dialogflow 콘솔 역할이 있는 경우. Dialogflow 콘솔에 없는 역할을 부여하려면 Cloud Console을 사용해야 합니다.

역할

다음 표에는 Dialogflow와 관련된 모든 역할이 나와 있습니다.

에이전트에 대한 액세스 권한을 수정하거나 에이전트를 삭제하려면 '전체 액세스' 권한을 제공하는 소유자/관리자 역할이 필요합니다.

Dialogflow 콘솔 역할 IAM 역할 권한 요약 권한 세부정보
관리 프로젝트 >
소유자
모든 Google Cloud 및 Dialogflow 리소스에 대한 전체 액세스 권한이 필요한 프로젝트 소유자에게 부여합니다.
  • 모든 Google Cloud 프로젝트 리소스에 대한 전체 액세스(Cloud Console 또는 API 사용)
  • Dialogflow 콘솔에 대한 전체 액세스 권한으로 에이전트를 만들고 편집
  • API를 사용하여 인텐트를 감지할 수 있음
IAM 기본 역할 정의를 참조하세요.
개발자 프로젝트 >
편집자
모든 Google Cloud 및 Dialogflow 리소스에 대한 수정 액세스 권한이 필요한 프로젝트 편집자에게 부여합니다.
  • 모든 Cloud 프로젝트 리소스에 대한 수정 액세스(Cloud Console 또는 API 사용)
  • Dialogflow 콘솔에 대한 편집 액세스 권한으로 에이전트를 편집
  • API를 사용하여 인텐트를 감지할 수 있음
IAM 기본 역할 정의를 참조하세요.
검토자 프로젝트 >
뷰어
모든 Google Cloud 및 Dialogflow 리소스에 대한 읽기 액세스 권한이 필요한 프로젝트 뷰어에게 부여합니다.
  • 모든 Cloud 프로젝트 리소스에 대한 읽기 액세스(Cloud Console 또는 API 사용)
  • Dialogflow 콘솔에 대한 읽기 권한
  • API를 사용하여 인텐트를 감지할 수 없음
IAM 기본 역할 정의를 참조하세요.
해당 사항 없음 프로젝트 >
브라우저
폴더, 조직, IAM 정책을 비롯한 프로젝트의 계층 구조를 탐색할 수 있는 읽기 액세스가 필요한 프로젝트 브라우저에 부여합니다.
  • Cloud 프로젝트 계층 구조에 대한 읽기 액세스 권한입니다.
  • Dialogflow 콘솔에 액세스할 수 없음
  • API를 사용하여 인텐트를 감지할 수 없음
IAM 프로젝트 역할 정의를 참조하세요.
해당 사항 없음 Dialogflow >
Dialogflow API 관리자
Dialogflow 관련 리소스에 대한 전체 액세스 권한이 필요한 Dialogflow API 관리자에게 부여합니다.
  • Dialogflow에 대한 전체 액세스(Cloud Console 또는 API 사용)
  • Dialogflow 콘솔에 대한 읽기 권한
  • API를 사용하여 인텐트를 감지할 수 있음
Dialogflow IAM 역할 정의를 참조하세요.
해당 없음 Dialogflow >
Dialogflow API 클라이언트
Dialogflow API 클라이언트에 Dialogflow 관련 수정을 수행하고 API를 사용하여 인텐트 호출을 감지하는 권한을 부여합니다.
  • Dialogflow에 대한 수정 액세스(Cloud Console 또는 API 사용)
  • Dialogflow 콘솔에 액세스할 수 없음
  • API를 사용하여 인텐트를 감지할 수 있음
Dialogflow IAM 역할 정의를 참조하세요.
해당 없음 Dialogflow >
Dialogflow 콘솔 에이전트 편집기
기존 에이전트를 수정하는 Dialogflow 콘솔 편집자에게 부여합니다.
  • Dialogflow에 대한 전체 액세스 권한(GCP Console 사용)
  • 대부분의 에이전트 데이터에 대한 편집 액세스 권한(Dialogflow 콘솔 사용). Cloud Functions용 인라인 편집기 또는 Google 어시스턴트 통합에 액세스할 수 없음.
  • API를 사용하여 인텐트를 감지할 수 있음
Dialogflow IAM 역할 정의를 참조하세요.
해당 없음 Dialogflow >
Dialogflow API 리더
API를 사용하여 Dialogflow 관련 읽기 전용 호출을 수행하는 Dialogflow API 클라이언트에 부여합니다.
  • Dialogflow에 대한 읽기 액세스(Cloud Console 또는 API 사용)
  • Dialogflow 콘솔에 대한 읽기 권한
  • API를 사용하여 인텐트를 감지할 수 없음
Dialogflow IAM 역할 정의를 참조하세요.

Cloud Console을 사용하여 액세스 제어

IAM 설정으로 액세스를 제어할 수 있습니다. 권한의 추가, 편집, 제거에 대한 자세한 지침은 IAM 빠른 시작을 참조하세요.

아래 설정에 액세스하려면 Cloud Console에서 IAM 페이지를 엽니다.

프로젝트에 사용자 또는 서비스 계정 구성원 추가

사용자나 서비스 계정을 Cloud 프로젝트의 구성원으로 추가하여 권한을 제공할 수 있습니다. 사용자는 이메일 주소를 제공하여 추가됩니다. 서비스 계정도 연결된 이메일 주소를 제공하여 추가됩니다. 여러 프로젝트 및 에이전트에 하나의 서비스 계정을 사용하려면 서비스 계정 구성원을 추가해야 합니다. 서비스 계정과 연결된 이메일 주소를 찾으려면 Cloud Console에서 IAM 서비스 계정 페이지를 참조하세요.

구성원을 추가하려면 다음 안내를 따르세요.

  1. 페이지 상단의 추가 버튼을 클릭합니다.
  2. 구성원의 이메일 주소를 입력합니다.
  3. 역할을 선택합니다.
  4. 저장을 클릭합니다.

권한 변경

  1. 구성원의 수정 버튼을 클릭합니다.
  2. 다른 역할을 선택합니다.
  3. 저장을 클릭합니다.

구성원 삭제

  1. 구성원의 삭제 버튼을 클릭합니다.

Dialogflow 콘솔로 액세스 제어

에이전트의 설정에 공유 옵션이 있습니다. 에이전트 공유 설정을 열려면 다음 안내를 따르세요.

  1. Dialogflow 콘솔로 이동합니다.
  2. 왼쪽 사이드바 메뉴의 상단 근처에 있는 에이전트를 선택합니다.
  3. 에이전트 이름 옆의 설정 버튼을 클릭합니다.
  4. 공유 탭을 클릭합니다. 공유 탭이 보이지 않는다면 필요한 소유자/관리자 역할이 없는 것입니다.

사용자에게 액세스 수준을 보여주는 공유 탭

사용자 추가

  1. 새로운 사람 초대 아래에 사용자의 이메일 주소를 입력합니다.
  2. 역할을 선택합니다.
  3. 추가를 클릭합니다.
  4. 저장을 클릭합니다.

권한 변경

  1. 목록에서 사용자를 찾습니다.
  2. 다른 역할을 선택합니다.
  3. 저장을 클릭합니다.

사용자 삭제하기

  1. 목록에서 사용자를 찾습니다.
  2. 사용자의 삭제 버튼을 클릭합니다.
  3. 저장을 클릭합니다.

자동으로 생성된 서비스 계정

에이전트를 만들고 작업하는 경우 Dialogflow가 자동으로 일부 서비스 계정을 만듭니다. IAM 서비스 계정 페이지로 이동하여 프로젝트의 서비스 계정 목록을 확인합니다. 이러한 서비스 계정의 키를 삭제, 편집 또는 다운로드하거나 이러한 서비스 계정을 사용하여 API를 직접 호출해서는 안 됩니다. Dialogflow 서비스에서는 에이전트가 사용하는 다양한 Google Cloud 서비스에 연결하는 데만 사용됩니다. 특정 Dialogflow 기능을 구성하는 경우 이메일별로 이러한 서비스 계정을 참조해야 할 수도 있습니다. 다음 표에서는 이러한 서비스 계정 중 일부를 설명합니다.

IAM 이메일 양식 용도
dialogflow-alphanum
@project-id.iam.gserviceaccount.com
Dialogflow 시뮬레이터에서 Dialogflow API를 호출하는 데 사용됩니다. 이는 Dialogflow 콘솔에서 에이전트의 일반 설정 페이지에 표시되는 서비스 계정입니다.
service-project-num
@gcp-sa-dialogflow.iam.gserviceaccount.com
통합 트래픽을 처리하는 서비스에 에이전트를 연결하는 데 사용됩니다.
firebase-adminsdk-alphanum
@project-id.iam.gserviceaccount.com
에이전트를 Google 어시스턴트 통합 트래픽을 처리하는 서비스에 연결하는 데 사용됩니다.
project-id
@appspot.gserviceaccount.com
에이전트를 Google 어시스턴트 통합 트래픽을 처리하는 서비스에 연결하는 데 사용됩니다.