2016-09-29 10 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> 

ユーザーがその画面上の別のアカウントを選択した場合、ユーザーが戻るには、Webアプリにまだは元のアカウントでログイン。

私は間違っているのですか、またはウェブアプリ上でユーザーがアカウントを切り替えることを許可する別の方法はありますか?

答えて

0

カスタムユーザーインターフェイス用のサーバー側のApps Script関数と対話できるWebページを提供するには、Google Apps Script HTML Serviceが必要な場合がありますが、ユーザーの管理にはAdmin SDK's Directory APIが必要な場合もあります。

ドキュメントで述べたように、

管理SDKのディレクトリサービスを使用すると、Appsスクリプトで管理SDKのディレクトリAPIを使用することができます。このAPIを使用すると、ドメイン内の端末、グループ、ユーザー、その他のエンティティをGoogle Appsドメインの管理者(リセラーを含む)が管理することができます。

まず、users: listを使用して、すべての可能なユーザーを一覧表示できます。 retrieve a userusers: getを使用し、その後

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); 
} 

:例では、最初に名前でソートすることができ、ドメイン内のユーザーを一覧表示することができます。

電子メールアドレスでユーザーを取得するサンプルコードを示し、すべてのデータを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

こんにちはタヤム。ご回答いただきありがとうございます。私は非常に感謝していますが、私はあなたが私の非常に具体的な質問に答えたとは思わない。まず、Google Apps ScriptのHTMLサービスを使用してhtmlページをユーザーに配信しています。問題は、ユーザーが1つのGoogleアカウントでそのページにアクセスしたが、別のGoogleアカウントでそのページにアクセスしたい場合です(あるアカウントに、他のアカウントには権限がないため(スクリプトがあるドメインのメンバーなど)私は自分のページにアカウントを切り替える方法をユーザーに提供しますか? – h0dges

関連する問題