使用者同意畫面簡介
什麼是使用者同意畫面,它是如何運作的?本文解釋了使用者同意畫面的基本理念以及應如何使用它。
什麼是使用者同意畫面
想像一下,你正在使用 Google 帳戶註冊一個新的社交 App。你點擊 "用 Google 登入" 按鈕,並被重定向到 Google 完成登入流程。在成功通過 Google 認證後,你被重定向到一個要求授予此 App 存取你的 Google 帳戶檔案的頁面。類似如下:
這個頁面就是我們所稱的同意頁面或同意畫面。它是應用程序或網站在用戶啟動時顯示的用戶界面元素。其主要目的是通知用戶其個人數據的收集、處理和使用,並尋求其對這些活動的明確同意。
在同意頁面上,通常會向用戶展示將收集的數據類型、如何使用以及是否與第三方共享等資訊。這些信息對於透明度至關重要,讓用戶能對其隱私和數據安全做出明智的決定。
同意頁面在隱私法的背景下尤為重要,如歐盟的一般數據保護法(GDPR)或美國的加利福尼亞消費者隱私法(CCPA),這些法規要求組織在處理個人信息之前獲得用戶的明確同意。
何時需要同意畫面?
在回答這個問題之前,我們需要了解一些關於使用者認證的基本概念。
身份提供者(IdP)和服務提供者(SP)
如上所述,同意畫面的主要目的是通知用戶其個人數據的收集、處理和使用,並尋求其對這些活動的明確同意。因此,當我們收集、處理或使用屬於其他方的個人數據時,如 Google,我們需要一個同意畫面。
在用戶認證的背景下,我們稱擁有用戶數據的一方為身份提供者(IdP)。而要求訪問用戶數據的應用程序,我們稱之為服務提供者(SP)。在上述範例中,Google 是 IdP,而社交 App 是 SP。
IdP 負責對用戶進行身份驗證並提供用戶的檔案信息給 SP。SP 是需要用戶檔案信息來提供服務的一方。
單點登入(SSO)
在上述範例中,社交 App 使用 Google 作為其 IdP。這是業界的一個常見場景。許多應用程式使用 Google、Facebook 或其他第三方服務作為其 IdP。這稱為單點登入(SSO)。SSO 是多個相關但獨立軟體系統的存取控制屬性。利用這個屬性,用戶可以使用一個 ID 和密碼登入來獲得多個相關應用程式的存取權。你可以參考 CIAM 101:認證、身份、SSO 以獲取更多詳情。
第一方 vs 第三方 IdP
第一方 IdP 是與 SP 屬於同一組織的 IdP。SP 甚至可能與 IdP 共用相同的域名。因此,SP 要求訪問的用戶數據是由相同組織擁有的。例如,如果你使用 Google Workspace,那麼 Google 就是你的第一方 IdP。
第三方 IdP 則是與 SP 屬於不同組織的 IdP。SP 要求訪問的用戶數據不是由它自己擁有的。例如,如果你使用 Google 作為你的 IdP,並登入了如上範例的社交 App,那麼 Google 就是社交 App 的第三方 IdP。
使用者同意
每當用戶登入應用程式時,確保用戶了解正在收集哪些數據及其用途至關重要。
對於第一方 IdP,這些類型的信息通常在組織的隱私政策和服務條款中涵蓋。用戶通常需要同意隱私政策和服務條款才能註冊服務。因此,用戶已經知道將收集哪些數據及其用途。在這種情況下,用戶同意是隱含的。
然而,IdP 需要嚴格控制其擁有的數據。不應允許任何第三方 SP 在未經用戶明確同意的情況下訪問用戶數據。任何第三方 SP 的數據訪問活動都被認為是數據共享活動。用戶必須被告知數據共享活動並必須明確同意。
因此,對於第三方 IdP,用戶同意是始終必需的。這就是為什麼所有主要 IdP,如 Google、Facebook 和 Microsoft,要求 SP 在用戶可以登入 SP 之前向用戶顯示同意畫面。
例如在 Google 的情況下,當你嘗試創建 Google OAuth 客戶端時,你將被要求提供詳細的同意畫面配置。
這可以確保用戶了解數據共享活動,並已明確同意。
同意畫面應該包括哪些資訊?
同意畫面應為用戶提供足夠的信息以做出明智的決定, 包括但不限於:
- 哪一方(SP)在請求訪問用戶數據?
- 目前用戶的身份是什麼?
- 正在收集哪些用戶數據?
- 用戶數據將如何使用?
- 將使用哪些額外的 IdP 提供的服務或 API?
- 將授予 SP 哪些額外的許可權?
- SP 的隱私政策是什麼?
上述所有信息應精確且清楚地包含在同意畫面中。用戶應能夠毫無歧義地理解信息。這對於正在收集的用戶數據及其用途尤其重要。
IdP 有責任確保用戶數據僅用於用戶已同意的目的。IdP 不應允許 SP 在未經用戶明確同意的情況下將用戶數據用於其他任何目的。
結論
總之,同意頁面作為獲得用戶對其數據處理的明確許可的機制,促進透明度並符合隱私法律。目前所有主要 IdP 都要求第三方 SP 這樣做,並且它在保護用戶隱私和數據安全方面發揮重要作用。尤其是當你提供第三方 IdP 服務時。