iT邦幫忙

0

[共用登入資料] API 串接別站會員資料

請問各位以下都如何實作?

為了簡化問題描述,以下直接用「A友站」跟「LOCAL」區隔。

由於「LOCAL」有提供一項服務,是「A友站」沒有的,現在要進行合作。所以「A友站」的會員,會先在該站登入後,在導引過來使用本站的服務。

當會員在「A友站」登入後,會授權其會員基本資料給「LOCAL」(例如姓名、ID、帳號、信箱等簡易資料),然後再導過來「本站」,或是經由按鈕外連過來。當然,一定要確認已經有在「A友站」進行登入後才能連過來「LOCAL」使用。

現在是有想到 API 的這個方式,
那請問是不是「A友站」那邊要先設計好一段API,
使得會員在登入後,在連過來「LOCAL」前強制會在網址先帶一組token,
例如:會員登入了httpx://apple.ccc/ 然後 httpx://apple.ccc/ 的連到「LOCAL」的按鈕上,會帶有
httpx://apple.ccc/
<a href="httpx://LOCAL.ccc/?form=apple.ccc&token=[每次產生不同的識別碼]" title="前往LOCAL">使用新服務</a>

然後 httpx://LOCAL.ccc/ 這台主機上,如果識別到網址參數有 "form"、"token",
則呼叫 httpx://apple.ccc/ 寫的一段 API,進行驗證????

e.g.
httpx://apple.ccc/checkID/[token]
也許會回傳一個json格式

HTTP/1.1 200 OK
{
data:[
{
"type": "people",
"who": {
"name": "Isman",
"age": 11,
}
}
]
}

請問是大概這樣的步驟嗎?
這樣安全嗎?
還是我有哪邊漏掉的??
謝謝指教。

weiclin iT邦高手 4 級 ‧ 2017-06-09 14:18:05 檢舉
有現成的 OAuth 可以用, 就別自己搞
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友回答

立即登入回答