*

Google App EngineからのSpreadSheetの権限変更について

公開日: : 最終更新日:2014/03/28 投稿者: GAE

Google App Engine(以下GAE)からGoogleDocsのSpreadSheetを操作することになりましたので、権限周りについて少し調べてみました。

結論として、Google Data APIを使えば、ひと通りは手作業と同じようにSpreadSheetの操作はできるようです。

検証結果を簡単にまとめてみましたので、どうぞご参考までに読んでください。

 

<検証結果>

・使用したAPI : Google Documents List Data API version3.0

検証内容 Google Data API 手作業
オーナー権限の移譲
既存ユーザーの権限の変更
Spreadsheetへのユーザーの追加
既存ユーザーの削除

1:オーナー権限の委譲 & Spreadsheetへのユーザーの追加

DocsServiceクラスのInsertメソッド、もしくはAclEntryクラスのUpdateメソッドを使用します。

オーナー権限を変更した場合、前オーナーは自動で編集権限に変更になり、新オーナーに権限を委譲したことを知らせるメールが送られます。

コード例

[java]// Scopeに新オーナーのメールアドレスと、タイプをSetします。
aclEntry.setScope(new AclScope(AclScope.Type.USER, "newOwner@addres.co.jp"));
// 追加する権限にオーナーを指定します。
aclEntry.setRole(new AclRole("owner"));
// entryオブジェクトは権限を追加するドキュメントのDocumentListEntryクラスです。
docsService.insert(new URL(entry.getAclFeedLink().getHref()), aclEntry);
[/java]

2:既存ユーザーの権限の変更

DocsServiceクラスのInsertメソッド、もしくはAclEntryクラスのUpdateメソッドを使用します。
コード例

[java]
aclEntry.setRole(new AclRole("reader"));
AclEntry resulAclEntry = aclEntry.update();
// docsService.update(new URL(entry.getAclFeedLink().getHref()), aclEntry);
[/java]

既存ユーザの削除

DocsServiceクラスのDeleteメソッド、もしくはAclEntryクラスのDeleteメソッドを使用します。
コード例

[java]
aclEntry.delete();
// docsService.delete(new URL(entry.getAclFeedLink().getHref()), aclEntry);
[/java]

Goog Data APIのページで探していたときに「Google Spreadsheets Data API」が目に入りましたが、こちらはどうやらSpreadsheetの内容を編集する時に使うようです。名前に騙されました。
Google Documents List Data API では権限の変更以外にもSpreadsheetの新規作成も行えるので、GAEからGoogle Docsを操作する際には活躍すると思います。

この記事を書いた人

kimura
kimura
Webデザイナー。本サイトの管理・デザイン担当をしております。
 

関連記事

Prediction API入門(後編)

今回はPrediction API on GAE/J みなさん、こんにちは。Prediction

記事を読む

専用Memcacheは共有Memcacheよりも本当に性能が高いのか検証する

GAEでMemcacheを利用した経験はありますでしょうか? MemcacheとはGAEで利用

記事を読む

1つのエンティティにプロパティをいくつまで作れるか

1つのエンティティにプロパティをいくつまで作れるか 1つのエンティティにプロパティをいくつまで

記事を読む

Cloud Loggingの利用方法

はじめに 本記事はGoogle Cloud Platformの公式ページで公開されている「Goog

記事を読む

GAEのautomatic scalingとbasic scalingを徹底比較!!

Google App Engine(以下GAE)(※1)は、GCPユーザならば言わずと知れた

記事を読む

GAE/GOでTwitter Botを作ってみる~後編~

今回のapps-gcpは「GAE/GOでTwitter Botを作ってみる」の後編記事です。

記事を読む

GAE負荷テスト その2「無料で何PVまで表示できるのか試してみた」

その1のアップからだいぶ日が経ってしまい、いつの間にか年すら変わっていましたね。。。 " GA

記事を読む

WordPressをGAEで簡単に使う10のステップ

2015/10/05 テーマやプラグインの追加・変更方法について下部に追記しております。 み

記事を読む

静的HTMLをGAE上で公開する

みなさんこんにちは。 本日は、静的HTMLをGAEで公開する手順を紹介します。 本サイトを運営し

記事を読む

たったの15分でできるGAE/GO入門 標準APIその1

知っておけば必ず開発が楽になる! GAE/Go入門の本連載ですが、前回は第一弾として「PaaS最前

記事を読む

PAGE TOP ↑