新浪微博授權為什麼要設置時效?


首先,新浪開放平台三方認證使用的是OAuth 2.0版本協議。OAuth 2.0協議本身即對"access_token"時效做了規定。可見新浪開放平台限制授權的時效只是遵循了OAuth 2.0的開發規範,和所謂的有關部門並無關係。

為什麼要設定這種時限?個人認為,OAuth 2.0設定「expires_in"這個參數其目的無非也是為了方便管理授權。以微博應用為例,對於一個未經官方認證(或用戶認證)的應用,你根本不知道這個應用明天會變成什麽。也許現在是一個靠譜的小應用,下個月就變成了一個專門發廣告,或者爬取用戶信息的機器人。要知道越小的應用拿來惡搞的包袱越小,對它們的授權時間(同時還有API請求許可權,請求頻率,請求總數)就該限定得越死。

所以,對用戶授權做時間限定也是提醒用戶,這麼長時間過去後(或者這個應用「升級」後),你還願意繼續授權麽?


-

因為目前新浪微博開放平台用戶身份鑒權使用OAuth2.0協議(不單單新浪,騰訊、網易、人人...)

在OAuth2.0協議中

用戶授權應用之後,開放平台會給應用一個用戶的AccessToken

AccessToken中除了攜帶用戶授權給應用的操作範圍,還會帶有ExpiredTime

這就是為什麼新浪微博授權帶有時效的原因

參看: 授權機制說明

OAuth2協議參看:RFC 6749 - The OAuth 2.0 Authorization Framework

-


樓上的很多朋友,去介紹了如何實現授權時效,而沒有更好的去講,為什麼要設置時效。我粗略的回答一下把。

一句話說清楚,就叫從用戶的角度出發。

(主要是微博的後台介面,若是微博的分享組件或是前台API,則不需要用戶授權——因其每次操作,都是必須是用戶的主動行為,APP不能代而為之)

例如我授權某個APP應用,它能幫我發微博,可能我一段時間就忘了,但是這個APP,永久的獲得了用我的賬號發微博的許可權——這樣不是對用戶太多打擾了么?

這樣可能會問「既然這樣,為什麼不讓每次操作的時候,用戶都確認一次呢?」 若是短期內,用戶使用某個功能,都需要每次都確認的話,那麼用戶會被煩死把?

所以就設定了一個時限,來進行控制(目前就我所知,三個月,樓下同學提醒,時間可能不準確,暫且放這裡,僅供一個參考)

當然,新浪貌似在做自動續期的服務(若是精品APP,與新浪有較為深度合作的,是在三個月到期後,自動完成對用戶續期,而無需用戶重複授權)

另外,如果出現你登陸了某個APP,然後這個APP就天天拿著你的微博髮狀態,發消息,別想了,這就是惡意調用,果斷聯繫新浪客服投訴之(新浪會很樂意幹掉這個APP的授權的)


因為通過oauth授權後,用戶的很多信息及其它許可權向第三方開放,第三方此時可以使用用戶帳號做很多事情,新浪運營在此時必須充當系統仲裁者角色,對第三方應用做信用評估後給與不同的授權時效,因為這決定著用戶信息向對方暴露的時長。


反對了所有已有答案,因為你們所說的所有情況 OAuth 2.0 都考慮過了,並且也內置了解決方案。OAuth 設計唯一不考慮的一件事情叫做「有關部門」。

在中國做平台,你是為用戶服務還是為黨服務?


1.增加安全性

2.增加安全感

3.刷存在感


1。授權和修改密碼沒有聯繫

2。以防程序自動授權博主忘記

3。便於統計


一般來說,所謂的授權只是一些網站或者App調用新浪的API介面,但大多數都只是開發微博賬號同步登錄或者分享一些東西到微博上。不會影響到你的其他東西,所以一般不需要去取消,如果真的需要取消的話可以去新浪微博賬號設置修改。


推薦閱讀:

微博目前不允許解綁手機,以後會開放解綁功能嗎?
如何評論微博新推出的監督員?
新浪微博越來越 「重」 ,可能帶來的負面效果有哪些?為什麼?
為什麼新浪微博不能修改登錄郵箱?什麼時候可以推出如 twitter 一樣的更換登錄郵箱的設置?
為什麼微博會自動關注不認識的號?

TAG:新浪微博 | 新浪 | 微博 |