OAuth App Homepage / brand disclosure

AllenChang's Creative

AllenChang's Creative 是 Google OAuth 同意畫面上的應用程式與開發者品牌,為旗下產品提供 Google 帳號登入與授權。目前以 Dwello 寓作為已驗證的使用此授權的產品;其他公開產品在當前可驗證來源中沒有使用此授權流程,本頁不替它們作 OAuth 聲明。

01 / Brand identity

這個名稱,就是同意畫面上的名稱。

AllenChang's Creative 是出現在 Google OAuth 同意畫面上的應用程式名稱與開發者品牌名稱;旗下產品的 OAuth 申請都以此名稱提交。

OAuth 同意畫面上的應用程式名稱
AllenChang's Creative
OAuth 同意畫面上的開發者品牌
AllenChang's Creative
目前使用此 OAuth 授權的產品
Dwello 寓(以 Dwello 補充政策為準)
目前公開的母品牌 Privacy Policy
/privacy/,與 /terms/ 共同作為 OAuth 同意畫面的公開資料說明

02 / Requested scopes

同意畫面上會出現的範圍。

每個範圍都只做一件事;下面用來說明目前已驗證的 Dwello 流程,其他公開產品未在此範圍內。

範圍(OAuth scope) 用途 實際資料行為
openid 身份層級 取得 Google 簽署的 ID token,用於驗證目前登入者為 Google 帳號本人;後端以此驗證 sub、iat 與 exp 等標準宣告。
email 已驗證電子郵件 取得使用者的 email 與 email_verified 宣告;後端要求 email_verified 為 true,才會建立或更新使用者資料。
profile 顯示名稱與頭像 取得使用者 Google 帳號的 name 與 picture 宣告,僅作為產品介面中的顯示名稱與頭像使用,不做為外部行銷或分析。
https://www.googleapis.com/auth/drive.file 受限制的雲端硬碟權限 只允許 Dwello 在使用者的 Google Drive 建立與管理 Dwello 自己產生的資料夾與檔案;不可列舉、讀取或修改其他檔案。

四個範圍由前端 google.accounts.oauth2.initTokenClient 一次性請求;Dwello 後端不會額外向 Google 要求 Drive 範圍。

03 / Drive file boundary

drive.file 不等於「整個雲端硬碟」。

在 Dwello 已驗證的範圍裡,drive.file 是受限範圍;它不會讓應用程式讀取、列舉或修改使用者 Google Drive 中的其他檔案。

簡單地說:drive.file 只允許 Dwello 看到「Dwello 自己在你 Drive 寫過的東西」,不允許看到、修改或刪除其他檔案。

04 / Storage and retention

token 在記憶體;session 是第一方;資料庫只存雜湊。

已驗證的 Dwello 流程把敏感狀態拆成三層,每層只保存它該保存的東西。

Google Drive access token
只存在目前頁面的 JavaScript 模組變數;不寫入 localStoragesessionStorageIndexedDB、URL 或 log;登出時清除。
Session token
第一方 HttpOnly cookie;正式環境同時帶 SecureSameSite=Lax;瀏覽器腳本無法讀取。
資料庫裡的 session
只保存 session token 的 SHA-256 雜湊與到期時間;撤銷以設定 revoked_at 為準,cookie 同時過期。
保留期限
絕對期限為七日,閒置逾三十分鐘視為過期;登出立刻撤銷。可透過 Google 帳號設定或 Dwello 站內登出撤銷授權。

05 / User controls

使用者保留對授權、分享與檔案的主控權。

以下控制權在 Dwello 公開隱私權政策中也再次列出;母品牌頁面只摘要最常被問到的幾項。

06 / Policies and entry points

對外公開的政策與產品入口。

以下連結是 AllenChang's Creative 對外公開、可被搜尋與驗證的政策頁與產品入口。

目前公開的政策頁固定為六頁,本頁是品牌 OAuth 揭露頁,不屬於政策頁;Project 1214 與 EPUB Tools 在當前可驗證來源中沒有使用 Google OAuth,本頁不會替它們作 OAuth 聲明。