---
title: day12 api撰寫工具及帳戶資訊驗證機制
tags: iThome(2022)
description: note
---
# day12 api撰寫工具及帳戶資訊驗證機制
### Open api
open api為定義在restful api文件端口撰寫的格式,現在最多人使用的為swagger工具,其使用方法為撰寫yaml file去生成前端的api request,在撰寫完成後,swagger也提供直接在網頁去測試。
### Authorization
前端與後端常見的帳戶驗證機制
#### SSO (Single Sign On)
SSO最常見的例子就是google帳戶,用戶登入google帳戶後,在各個google服務間都可以通用同一個帳戶而不需重複建立帳號,在相同網域下通常可以使用cookie去使用同一個token登入,但是當服務在不同網域時,可以使用proxy代理來將相同token代入將不同網域,不過當服務多時就必須使用相對應不同的策略去實現多網域登入,例如使用:OpenID Connect, Facebook Connect, SAML, Microsoft Account等等
下圖流程為多網域之間共享token方法。

接下來藉由流程圖可以了解大致上帳戶驗證的運作原理,大部分都在在前面介紹過,詳細可以看[day 9]介紹
#### OAuth

#### JWT

#### Token Based Authentication

#### Session Based Authentication

#### Based Authentication

## 參考
* https://roadmap.sh/guides/sso.png
* https://roadmap.sh/guides/oauth.png
* https://roadmap.sh/guides/jwt-authentication
* https://roadmap.sh/guides/token-authentication
* https://roadmap.sh/guides/session-authentication
* https://roadmap.sh/guides/basic-authentication
## Thank you! :dash:
You can find me on
- GitHub: https://github.com/shaung08
- Email: a2369875@gmail.com