---
# System prepended metadata

title: メモ

---

# メモ

https://www.youtube.com/watch?v=PqW948SFSUM
を見ていました.

- 認証認可紛らわしいし, OAuthもせめてOAuthoの方がよくないかと素人考えをした(まあなんかキモいが) 
- なんで認可なんて必要なんやろ本来は認証だけでいいんじゃないのか??


- 認証の委譲をしたいならOpenID Connect?認証の委譲もJWTでされてるそう
- 401 Unauthorizedは認証のエラーなのわかりにくいなというか, うーん

- リソースに対する全県はユーザーが持っていると考えて, アプリが認可してもらうということですか
- 認可する, といったときは主語は基本ユーザーなんすね, Resource OwnerがUserに見えないときが多い
- Clientが権限をもらう, サーバーで, その認可を管理
- Resourceserverは, (ユーザーのといっていい?)リソースを管理するサーバー

- 権限を渡したいサーバーに, 認可を委譲するということか
- Access TokenにはROが誰かっていう情報はない??
- OAuth認証というのがある???
- 権限の委譲と他の

1. Client credentials grant
2. Resource owner password credentials grant
3. Implicit grant
4. Authorization code grant

(Client credentials grant)
認可サーバーへのPostのHeaderにベーシック認証の情報をいれて
Client ID + secretとATを交換する
→ROは現れない...

委譲っぽくない

アプリに権限を大きくもたせたい時に使う?

(Resource owner password credentials grant)

ROは事前にID, Passwordをわたしておくのが違い????

ユーザー名とパスワードをATに引き換える

- →Clientにパスワードを教えないといけない


(Implicit grant)


ブラウザなどのUser-Agentが現れる

ClientがUser-agentからもらったら, Redirectをなげる
→User0AgentがAuthorization serverに送って,
User-Agentを通して, User(RO)まで問う過程がある

問うたら, AgentがAuth ServerにTokenをもらう?のでClientにわたす

- ATはUser Agentに見えてしまう


(Authorization code grant)



# 疑問

- 