사용자 ID 속성 액세스

사용자는 커뮤니티 커넥터를 사용하여 자체 데이터 소스를 만듭니다. 이러한 데이터 소스의 경우 커넥터는 유효 사용자의 ID에 액세스할 수 있습니다. 데이터 소스 사용자 인증 정보에 따라 유효 사용자는 데이터 소스 생성자 (소유자의 사용자 인증 정보) 또는 보고서 뷰어 (조회자의 사용자 인증 정보)가 될 수 있습니다.

이점

  • 사용자 대신 Google 서비스 및 API에 액세스할 수 있습니다.
  • 관련 데이터만 표시되도록 커스텀 액세스 제어를 구현할 수 있습니다.
  • 효과적인 사용자를 위해 사용자 환경을 맞춤설정할 수 있습니다.

구현 단계

사용자 OAuth 토큰 액세스

커넥터는 사용자의 OAuth 토큰을 전달하여 사용자를 대신하여 Google 서비스 및 API에 액세스할 수 있습니다. 커넥터에서 유효 사용자의 OAuth 토큰에 액세스하려면 ScriptApp.getOAuthToken()를 사용합니다. getOAuthToken 참조를 확인하세요. 이 토큰에는 커넥터 승인 중에 포함된 승인 범위가 포함됩니다.

대부분의 커넥터에서 Apps Script는 스크립트를 파싱하고 처리하여 필요한 범위를 자동으로 감지합니다. 언제든지 커넥터에서 사용하는 범위를 볼 수 있습니다. 매니페스트에서 URL 문자열을 사용하여 범위를 명시적으로 설정할 수도 있습니다. 사용자를 대신하여 Google 서비스 또는 API에 액세스하려면 관련 범위를 매니페스트에 포함합니다.

사용자 이메일 주소 액세스

코드에서 Session.getEffectiveUser().getEmail()로 현재의 유효 사용자를 식별할 수 있습니다. geteffectiveUser 참조를 확인하세요. 이 코드를 추가하면 https://www.googleapis.com/auth/userinfo.email 승인 범위가 커넥터에 자동으로 추가됩니다.

예: 사용자 OAuth 토큰으로 Google API 호출

  • Google 피트니스 커넥터는 유효 사용자를 위해 Google 피트니스 API에서 데이터를 가져옵니다. API를 호출하는 동안 유효 사용자의 OAuth 토큰이 전달됩니다. 구현에 관한 자세한 내용은 소스 코드를 참고하세요.
  • Firestore 커넥터는 Cloud Resource Manager를 사용하여 유효 사용자의 프로젝트 목록을 가져옵니다. 이 커넥터는 유효 사용자의 OAuth 토큰도 전달합니다. 구현에 관한 자세한 내용은 소스 코드를 참고하세요.

예: 이메일 주소 기준 isAdminUser()

  • Chrome UX 커넥터는 관리자 목록을 유지 관리합니다. getEffectiveUser()를 사용하고 유효 사용자를 목록과 비교하여 유효 사용자가 관리자인지 확인합니다. getEffectiveUser 구현을 참고하세요.