Skip to content

Instantly share code, notes, and snippets.

View awa2's full-sized avatar

awa2 awa2

  • tokyo
View GitHub Profile

Delegationとは

GSuiteは、そのドメイン全体を、サービスアカウントに対して委任することができる。 GSuite Admin Consoleから、委任するサービスアカウントを指定し、委任するスコープを設定できる

GSuite Become

このDelegationの仕組みを利用することで、指定されたスコープのユーザーのアクセストークンをサービスアカウントが取得することができる。

これは、ユーザーになりすます(Become)してアクセスされるため、プラバシーに配慮が必要。

JWTについて

JWTの基本フォーマット

{base64 Encoded Header}.{base6 Encoded Claims}.{Signature}

Header

{
  "alg": "RS256",
 "typ": "JWT"

Using Google APIs with OAuth2 101

npmのgoogleapisパッケージを利用します。 https://github.com/googleapis/google-api-nodejs-client

const { google } = require('googleapis');

 authの利用

googleapisパッケージのauthは、いくつかの認証方法を提供してくれます。

@awa2
awa2 / WhatIsGithubFlow.md
Last active February 25, 2019 12:08
Github Workflow のまとめ

What is "Github Flow"

Gitによるプログラム開発のBest practiceであるGit-flow を改良したもの。 複雑すぎる点、GitCUI頼みな点などが導入しづらいと言われている。一方で、リリース管理が必要な場合には有効。

参考:http://www.atmarkit.co.jp/ait/articles/1708/01/news015.html

そこで、GitHubは、自身のProductであるGitHubの利用を前提に、よりWorkflowをシンプルにした開発フローを作った。それが「GitHub Flow」。

How to

前提として、masterブランチを「常にデプロイ可能なプロダクトのマスター」と捉える。Dev-Ops向き。

function getSettingAryFromApi() {
Log = new LogSheet('log');
// Stat = new LogSheet('statistics');
Log.info('[ ] - Starting getSettingAryFromApi()');
try {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = ss.getSheetByName('main');
var creds = {
domain : 'c-fo.com'