2016-09-29 2 views
0

내 Google Apps Script 웹 앱 사용자가 Google 계정을 전환하도록 허용하려고합니다. 나는 하이퍼 링크를 통해 계정 선택기로 사용자를 보내는 시도했다 : 사용자가 해당 화면에 다른 계정을 선택Google Apps Script HTML 서비스 계정 전환

<a href="https://accounts.google.com/AccountChooser?continue=https://script.google.com/a/macros/[domain]/s/[site_id]/exec">Switch Accounts</a> 

경우, 사용자는 여전히 원래 계정으로 로그인 한 웹 응용 프로그램 로 돌아갑니다.

내가 잘못했거나 웹 앱에서 사용자가 계정을 전환하도록 허용하는 다른 방법이 있습니까?

답변

0

사용자 정의 사용자 인터페이스에 대한 서버 측 Apps Script 기능과 상호 작용할 수있는 웹 페이지를 제공하려면 Google Apps Script HTML Service이 필요하지만 사용자를 관리하려면 Admin SDK's Directory API이 필요할 수도 있습니다.

문서에 명시된 바와 같이

관리자 SDK 디렉토리 서비스를 사용하면 애플리케이션 스크립트에서 관리 SDK의 디렉토리 API를 사용할 수 있습니다. 이 API를 사용하면 Google Apps 도메인 관리자 (리셀러 포함)가 도메인의 기기, 그룹, 사용자 및 기타 항목을 관리 할 수 ​​있습니다.

먼저 가능한 모든 사용자를 나열하려면 users: list을 사용할 수 있습니다. 예, 당신은 이름별로 정렬 할 수 있습니다 도메인 사용자를 나열 할 수 있습니다

function listAllUsers() { 
    var pageToken, page; 
    do { 
    page = AdminDirectory.Users.list({ 
     domain: 'example.com', 
     orderBy: 'givenName', 
     maxResults: 100, 
     pageToken: pageToken 
    }); 
    var users = page.users; 
    if (users) { 
     for (var i = 0; i < users.length; i++) { 
     var user = users[i]; 
     Logger.log('%s (%s)', user.name.fullName, user.primaryEmail); 
     } 
    } else { 
     Logger.log('No users found.'); 
    } 
    pageToken = page.nextPageToken; 
    } while (pageToken); 
} 

그런 다음, retrieve a userusers: get를 사용합니다.

전자 메일 주소로 사용자를 가져 오는 샘플 코드는 모든 데이터를 JSON 문자열로 기록합니다.

function getUser() { 
    var userEmail = '[email protected]'; 
    var user = AdminDirectory.Users.get(userEmail); 
    Logger.log('User data:\n %s', JSON.stringify(user, null, 2)); 
} 

또한,이 Directory API: Prerequisites을하며,이 API를 사용하여 Authorize requests에 설명 된대로 권한 부여가 필요하다고 유의하시기 바랍니다.

약간 혼란스러운 것처럼 보일 수 있습니다. 자세한 정보는 주어진 링크를 따라가 보시기 바랍니다.

해피 코딩!

+0

안녕하세요. Tayam. 귀하의 회신에 감사 드리며 매우 감사드립니다. 그러나 귀하가 저의 구체적인 질문에 답한 것을 믿지 않습니다. 첫째, Google Apps Script의 HTML 서비스를 사용하여 html 페이지를 사용자에게 제공하고 있습니다. 문제는 사용자가 하나의 Google 계정으로 해당 페이지를 방문하지만 다른 Google 계정으로 방문하려는 경우입니다 (한 계정에 다른 계정과 다른 권한이 없기 때문에 (예 : 스크립트가있는 도메인의 회원). 내 페이지에서 계정을 전환하는 방법을 사용자에게 제공합니까? – h0dges