0
我想使用OpenID Connect
來允許用戶使用兩個單獨的服務,同時只在一個地方保持用戶的密碼。如何防止RP以用戶名義執行未經授權的操作?
說銀行服務允許與Web瀏覽器用戶
- 看看他們的賬戶餘額
- 做銀行轉帳。
對於上述操作,服務A始終必須通過服務B提供的API。B還維護所有密碼。假設B不能相信A,並希望確保每一次銀行轉賬都由用戶確定。只要會話正在運行,讀出帳戶餘額應該是可以任意的。
這怎麼能在OpenID Connect中完成?
最安全的方法是讓用戶接受特定的銀行轉賬信息,並在用戶的瀏覽器,然後簽署銀行轉賬的全部內容,因此該服務的只能轉發到服務B.
另一個(不太安全的方式)將會有一些時間有限的「事務」範圍/聲明,允許服務A在用戶(空白支票)授權的時間窗口內執行交易,直至其到期。
使用OpenID Connect可以輕鬆實現上述任何一種嗎?
您提到的那個交易ID,在實踐中會是什麼? 「一次性範圍」? –
是的,「一次性作用域」是這裏的建議 –
我明白了。並且服務B可能被編程爲以易於由用戶讀取的方式顯示交易信息。因此,看起來我想要做的事情很容易以安全的方式實現 - 我只是想知道爲什麼Google對於「openid connect」或「openid connect」沒有產生「一次性範圍」和「一次性索賠」 OAuth的」。這似乎是許多公司的用例...... –