認証(Authentication)と認可(Authorization)
認証とは通信の相手が誰(何)であるかを確認すること。AuthN
認可とはとある特定の条件に対して、リソースアクセスの権限を与えること。純粋な認可には「誰」という考え方はない。AuthZ
OAuthは外部のサービスに対して認証の手段(ID,パスワード)を渡しているわけではなく、認可だけを渡している
認証の3要素
①WHAT YOU ARE その人自身を提示。顔、声、指紋など
②WHAT YOU HAVE その人だけが持っているものを提示。身分証など
③WHAT YOU KNOW その人だけが知っていることを提示。パスワード、秘密の質問など
いずれか1つを満たせば認証完了になる
より確実な認証を行う場合は、複数の要素で確認を取る→Multi-Factor Authentication(MFA)
認証具体
僕が幼少期にハローマックでアンティークギアゴーレムを超絶技巧で当てた話を同級生に聴かせてやれば、顔や声が変わっていようと僕の幼馴染は僕だと認証してくれるだろう。
つまり認証とは僕が僕であることを証明すること。
Googleとか最近の奴らは僕の幼少期とか知らないので、パスワードとかいう矮小なもので僕を認証してくるけどhowが違うだけで同じこと
認可具体
館内証
切符
iptableで特定のipだけ許可する
SAML