ááŸááºáá»ááºá áá¬áá¬ááŒááº: Okta á០á€áá±á¬ááºážááœááºáá±á¬áá±á¬ááºážáá«ážááẠOAuth ááŸáá·áº OIDC (OpenID Connect) áááºááá¯á·á¡áá¯ááºáá¯ááºáá¯á¶ááᯠááá¯ážááŸááºážááŸááºážáááºážá áœá¬ ááŸááºážááŒáá¬ážáááºá á€á¡ááááá¬ááẠáá±á¬á·ááºáá²áá±ážáá¬ážáá°áá»á¬ážá á áá áºá á®áá¶ááá·áºááœá²áá°áá»á¬ážááŸáá·áº áá°ááŒáá¯ááºáá»á¬ážáá±á¬ áááºá¡ááá®áá±ážááŸááºážáá»á¬ážá "áá¯á¶ááŸááºá¡áá¯á¶ážááŒá¯áá°áá»á¬áž" ááá¯ááẠá¡áá¯á¶ážáááºáááºááŒá áºááŒá®ážá á¡áá»á¬ážá¡á¬ážááŒáá·áº áá»áŸáá¯á·ááŸááºáá±áá¬ááᯠá¡ááŒá¬ážáááºáá±á¬ááºááŸá¯áá»á¬ážááŸáá·áºáááºáž áááŸááºááá¯ááºááœááºááŸááááºá
á¡ááºáá¬áááºá áá»á±á¬ááºáá±ááºááœáẠáááºáá±á¬ááºááŸá¯áá»á¬ážááŒá¬áž ááááºážá¡áá»ááºá¡áááºáá»áŸáá±ááẠááœááºáá°áááºá áááºááẠáááºáá¡áá±á¬áá·áºáááºááŒááºážááŸáá·áº á áá¬ážááŸááºááᯠáááºáá±á¬ááºááŸá¯áá áºáá¯á០á¡ááŒá¬ážáá áºáá¯ááá¯á· ááá¯ážááŸááºážá áœá¬ áá±ážáá²á·ááŒááºážááŒá áºááŒá®áž áááºááẠááá·áºá¡áá±á¬áá·áºáá²ááá¯á· áááºáá±á¬ááºááŒá®áž áá°ááá¯á¡ááºááá·áº á¡áá»ááºá¡áááºáá»á¬ážááᯠáááºáá¶áááŸáá á±áááºááŒá áºáááºá
"áááºážáá²á· áááºá¡áá±á¬áá·áº áá±ážáá«" âá
áá¬ážááŸááºáá²á· ááœá±áá²á· á¡áá¬á¡á¬ážáá¯á¶áž á¡áááºááŒá±áááºááá¯á· ááááá±ážáá«áááºá áá« ááá¯ážááá¯ážáá¬ážáá¬ážáá²!" *áá®áž áá®áž*
ááááºááá·áº! á¡áá¯á¶ážááŒá¯áá°á¡áááºááŸáá·áº á áá¬ážááŸááºááᯠáá»áŸáá±ááẠá¡áá¯á¶ážááŒá¯áá°áá áºáŠážááᯠáááºááá·áºá¡áá«áá»áŸ áááá¯á¡ááºá á±ááá·áºáá«á á¡áá±á¬ááºá¡áá¬ážáá»á¬ážá¡ááŒá¬ážáááºáá±á¬ááºááŸá¯ááŸáá·áºá¡áá°á á€áááºáá±á¬ááºááŸá¯áá±á¬ááºááœááºááŸá á¡ááœá²á·á¡á ááºážááẠáá±áá¬ááᯠáá¯á¶ááŒá¯á¶á¡á±á¬ááºáá¬ážáááºááŒá áºááŒá®áž ááá¯á¡ááºáááºááẠááá¯ááá¯á ááá¯ááºáá±ážááá¯ááºáá¬á¡áá»ááºá¡áááºáá»á¬ážááᯠá á¯áá±á¬ááºážáááºááá¯ááºááŒá±á¬ááºáž á¡á¬ááá¶áá»ááºáááŸááá«á áááºážááẠáá°ážááœááºáááºáᯠáááºááá±á¬áºáááºáž á¡áá»áá¯á·á¡ááºááºáá»á¬ážááẠá€á¡áá±á·á¡áá»áá·áºááᯠá¡áá¯á¶ážááŒá¯áá²ááŒá áºáááºá
ááá±á·ááœáẠáááºáá±á¬ááºááŸá¯áá áºáá¯ááẠá¡ááŒá¬ážáá áºáá¯ááá±áá¬ááᯠáá¯á¶ááŒá¯á¶á áœá¬á¡áá¯á¶ážááŒá¯ááœáá·áºáá±ážááá·áº á á¶áááºááŸááºáá»ááºáá áºáá¯ááŸááááºá áá¶ááá±á¬ááºážá áœá¬áá²á ááá¯á á¶ááŸá¯ááºážáá»á¬ážááẠáááºážááá¯á·ááá¬ážáááºááŸá¯ááᯠááŸá¯ááºááœá±ážá á±ááá·áº áááºážá áá¬ážáá»á¬ážááŸáá·áº á¡áá¯á¶ážá¡ááŸá¯ááºážáá»á¬ážááᯠá¡áá»á¬ážá¡ááŒá¬ážá¡áá¯á¶ážááŒá¯áááºá á€á¡ááŒá±á¬ááºážá¡áá¬á áááºááœááºáá»ááºááŸá¬ ááá¯ážááŸááºážáá±á¬áá¯á¶áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯á áááºážááá¯á· áááºááá¯á·áá¯ááºáá±á¬ááºááŒá±á¬ááºáž ááŸááºážááŒáááºááŒá áºááẠ(áá»áœááºá¯ááºááá¯á¶áá»á¬ážááẠááá±ážáá»á¬ážá áá¯ááºááŸá¯ááºáá»á±á¬ááºáá»á¬ážááŸá¯ááŸáá·áºáá°áááºáᯠáááºáááºáá«ááá¬ážá á¡áá¯áž!)
á áá¬ážáá ááºá á€áááºážááœáŸááºáá»ááºááᯠáá®áá®ááá¯áá±á¬áºáááºááŒáá·áºáááºáž áááá¯ááºáááº-
áá¯ááºááá±ááŸááá°ááŒá®ážáááºážáá»á¬ážá OAuth 2.0 ááᯠááŒáá¯ááá¯áá«áááºá
á¥ááá¬á¡áá±áá²á·á áááºáᬠ"Unlucky Pun of the Day" ááá¯á· áá±á«áºáá²á· ááá¯ááºáá áºáá¯ááᯠááŸá¬ááœá±ááœá±á·ááŸááááºááá¯á· ááá¯ááŒáá«á áá¯á·á [áá±á·á ááŒá±á¬ááºáááºááœááºáá±á¬ááºážáá±á¬ áááºáž] áá¯ááºážáá±á«áºááŸá á á¬áá¬ážáááºáá±á·ááºá»áá¯á¶á á¶ááŒáá·áº áá±á·á á¥áºá á¬ááá¯áá»á¬áž áááºáá¶áááŸááááºá¡ááœáẠáááºážááᯠá á¬áááºážááœááºážááẠáá¯á¶ážááŒááºáá²á·áááºá ááá¯ááºááᯠáááºááááºááŒáá¯ááºááŒá®áž ááá·áºáá°áááºáá»ááºážáá»á¬ážá¡á¬ážáá¯á¶ážááᯠáá»áŸáá±ááẠáá¯á¶ážááŒááºáá²á·áááºá áá±á¬ááºáá¯á¶ážáá±á¬á· áá°ááá¯ááºážá ááŒá±á¬ááºá áá¬áá±á¬ááºážáá²á· á á¬áá¯á¶ážááœá±ááᯠááŒáá¯ááºááŒáááºáá¯ááºáá¬ážá
âáá¶ááá¯ážá
áœá¬áá²á·áá² á¡áá±á¬ááºážáá±á¬áº áááºáááºáá
áºááŒááºáž áá¯á¶ážááŸá¯á¶ážááœá¬ážáá²á· áá±á¬ááºáá±ážá¡ááŒá±á¬ááºáž ááŒá¬ážáá°ážáá¬ážá á¡áᯠáá°á¡ááŒá²ááŸááºáááº!â (á¡áá®ážá
ááºáá¯á¶áž áá¬áá¬ááŒááºááá¯ááŒááºážááŸá¬ áá°áááºážááœáẠáááºážáááá¯ááºááá¯ááºá
á¬áá¯á¶ážáá«áá±á¬ááŒá±á¬áá·áº - ááá·áºááŸááºážááŒá± áá¬áá¬ááŒááºáá«áááºá)
áááºááœááºáááºá á¬áááºážá០áá°áá áºáŠážá á®áᶠá á¬áá±ážááŒááºážááẠááœá±ážáá»ááºá áá¬ááá¯ááºááŒá±á¬ááºáž ááŸááºážáá«áááºá ááŒá®ážáá±á¬á· áááºážá áá«áá²á· áááºáááºáááºááá¯áááºáá±á¬áẠáááá¯á¡ááºáá²á·á¡áá¯ááºááœá±ááᯠááŸá±á¬ááºááá¯á· á¡áá»áááºá¡ááá¯ááºážá¡áá¬áá áºáá¯á¡áá ááœá¬ážáááá·áºáááºá áá¶áá±á¬ááºážá áœá¬ááŒáá·áºá Terrible Pun of the Day ááẠááá·áºáá°áááºáá»ááºážá¡á¬ážáá¯á¶ážááᯠáá°á·áá¬áá¬áá° ááááºááŒá¬ážááá¯ááºáááºá áá®ááá¯áá¯ááºááá¯á·á ááá·áºá¡áááºá¡ááœááºááœá±áá²á· á¡á®ážáá±ážááºááᯠááœáá·áºááœáá·áºáááá¯á·áá² ááá¯áá«ááẠ- ááá¯ááºááá¯ááºááá¯ááºá áá°ááá¯á·ááᯠááááºááŒá¬ážáá»áẠ(OAuth á ááºážáá»ááºážáá»á¬áž) ááá¯á·áá±ážáá«áááá·áºáááºá
"áá°ááá¯ááºážá áááºáá¬ááᯠááŒáá¯ááºáááºá - á¡áá±á¬áá·áºáááºááŒá®ážááŒá®áá¬ážá âáááºážáá²á· Terrible Pun of the Day áááºááá¯ááºááᯠáááºážáá²á·á¡áááºá¡ááœááºá
á¬áááºážááᯠáááºáá¯á¶ážááœáá·áºááŒá¯ááŸá¬áá¬ážá - áá»á±ážáá°ážáááºáá«áááº! ááá¯ááŸá
á á¡áá»áááºáá¯ááºáá¯á¶ážáááºá¡áá áááºáááá±á¬áá°ááá¯ááºážáᶠáá±á·ááá¯ááºážááááá±ážáá»ááºáá»á¬áž áá±ážááá¯á·áá«áááºá áááºážá á¡áá±á¬ááºážáá¯á¶ážáá°áááºáá»ááºážáá²!"
- ááá·áºá¡á®ážáá±ážááºáááºáá±á¬ááºááŸá¯ááᯠááœá±ážáá»ááºáá«á
- ááá¯á¡ááºáá«á áá±ážááºááá¯ááºááá¯ááœá¬ážááŒá®áž ááá·áºá¡áá±á¬áá·áºááá¯á· á¡áá±á¬áá·áºáááºáá«á
- ááá·áºá¡áááºá¡ááœááºáá»á¬ážááᯠáááºáá±á¬ááºááŒáá·áºááŸá¯ááẠTerrible Pun of the Day ááœáá·áºááŒá¯áá»ááºáá±ážáá«á
- Terrible Pun of the Day site ááá¯á· ááŒááºááœá¬ážáááºá
áááºá áááºááŒá±á¬ááºážááœá¬ážáá«áá OAuth ááᯠá¡áá¯á¶ážááŒá¯ááá·áº á¡ááá®áá±ážááŸááºážáá»á¬ážááẠáááºáá±á¬ááºááœáá·áºááᯠááŒááºáááºáá¯ááºááááºážááẠáááºážáááºážááá¯áááºáž áá±ážáá±á¬ááºáá«áááºá Terrible Pun of the Day ááŸáá·áº á¡áááºá¡ááœááºáá»á¬ážááᯠááá»áŸáá±ááá¯áá±á¬á·ááŒá±á¬ááºáž áá¯á¶ážááŒááºááŒá®ážáááºááŸáá·áº áááºááẠáá±ážááºááá¯ááºááá¯á· ááœá¬ážáᬠááœáá·áºááŒá¯áá¬ážáá±á¬ á¡ááá®áá±ážááŸááºážáá»á¬ážá á¬áááºážá០áááºááá¯ááºááᯠáááºááŸá¬ážááá¯ááºáááºá
OAuth á á®ážáááºážááŸá¯
á¡áá»á¬ážá¡á¬ážááŒáá·áº áá±á«áºáá±á«áºááá·áºá¡áá¬ááᯠáá»áœááºá¯ááºááá¯á· ááŒááºáááºážáá°ážáááºá á á®ážáááºážááŸá¯ [á á®ážáááºážááŸá¯] OAuthá áá»áœááºá¯ááºááá¯á·áá¥ááá¬ááœááºá á€á á®ážáááºážááŸá¯ááẠááŒááºáá¬áá±á¬á¡ááá·áºáá»á¬ážá¡ááŒáẠáááŒááºááá¯ááºáá±á¬á¡ááá·áºáá»á¬ážá áœá¬áá«áááºáááºá áááºážááœáẠáááºáá±á¬ááºááŸá¯ááŸá áºáá¯ááẠáá¯á¶ááŒá¯á¶áá±á¬ááááºážá¡áá»ááºá¡áááºáááŸááºááŸá¯á¡áá±á«áºááá±á¬áá°áá«áááºá áááẠTerrible Pun of the Day ááá°áá¬ááœáẠá¡áá¯á¶ážá¡áá»á¬ážáá¯á¶áž OAuth 2.0 á á®ážáááºážááŸá¯ááᯠ"authorization code" flow áá¯áá±á«áºáááºá ["ááœáá·áºááŒá¯áá»ááºáá¯ááº" á á®ážáááºážááŸá¯].
OAuth á¡áá¯ááºáá¯ááºáá¯á¶ á¡áá±ážá áááºááᯠááá±á·áá¬áá®á á¡áá»áá¯á·áá±á¬ áá±á«áá¬ááá»á¬ážá á¡áááá¹áá«ááºááᯠááœá±ážááœá±ážááŒáá«á áá¯á·á
- á¡áááºážá¡ááŒá
áºááá¯ááºááŸááº:
á¡á²áá« áááºážáá²! áááºááẠáááºáá¡áá±á¬ááºá¡áá¬ážáá»á¬ážá ááá·áºáá±áá¬áá»á¬ážááᯠááá¯ááºááá¯ááºááŒá®áž ááá·áºá¡áá±á¬áá·áºáá»á¬ážááœáẠáá¯ááºáá±á¬ááºááá¯ááºááá·áº áá¯ááºáá±á¬ááºáá»ááºá¡á¬ážáá¯á¶ážááᯠááááºážáá»á¯ááºáá«á - áá±á¬ááºáááº:
á¡ááºááá®áá±ážááŸááºáž (á¥ááá¬á Terrible Pun of the Day service) ááá¯ááºá á¬áž áááºáá¯á¶ážááẠááá¯á·ááá¯áẠáá¯ááºáá±á¬ááºááá¯áá±á¬ á¡ááá®áá±ážááŸááºážáá áºáᯠá¡áááºážá¡ááŒá áºááá¯ááºááŸááº'а - ááœáá·áºááŒá¯áá»ááºáá¬áá¬:
áááá±á¬á¡ááºáẠá¡áááºážá¡ááŒá áºááá¯ááºááŸááº'a áá²á· áááºáááºááŸá¬áá²á á¡áááºážá¡ááŒá áºááá¯ááºááŸááºá¡áá±á¬áá·áºááŸáááŒá®ážáá¬ážáá«á - á¡áááºážá¡ááŒá
áºáá¬áá¬:
Application programming interface (API) ááá¯á·ááá¯áẠáááºáá±á¬ááºááŸá¯ ááŒá¯áá¯ááºáá±ážáááºá áá±á¬ááºááẠááá¯ááºá á¬ážáá¯á¶ážáá»ááºáááºá á¡áááºážá¡ááŒá áºááá¯ááºááŸááº'а - URI ááᯠááŒááºááœáŸááºážáááºá:
á¡á²áá®ááá·áºáẠááœáá·áºááŒá¯áá»ááºáá¬áᬠááŒááºááœáŸááºážáá±ážáá«áááá·áºáááºá á¡áááºážá¡ááŒá áºááá¯ááºááŸááº'ááœáá·áºááŒá¯áá»ááºáá±ážááŒá®ážáá±á¬áẠáá±á¬ááºáááº'ááŸá¬á áááºážááᯠáá áºáá«áá áºáá¶ááœáẠ"Callback URL" áá¯áááºááœáŸááºážáááºá - áá¯á¶á·ááŒááºááŸá¯á¡áá»áá¯ážá¡á
á¬áž:
áááºáá¶áááŸáááá·áº ááááºážá¡áá»áá¯ážá¡á á¬áž áá±á¬ááºáááº. áá±áá¯áá»á¡áá»áá¯á¶áž áá¯á¶á·ááŒááºááŸá¯á¡áá»áá¯ážá¡á á¬áž'Ohm á áá¯ááºá áá±á¬ááºááẠáááŸááááºáá»áŸá±á¬áºááá·áºáá¬ážáááºá authorization Code ááá¯. - scope:
á€áááºááŸá¬ ááá¯á¡ááºáá±á¬ ááœáá·áºááŒá¯áá»ááºáá»á¬ážá á¡áá±ážá áááºáá±á¬áºááŒáá»ááºááŒá áºáááºá áá±á¬ááºáááº'yá áá±áá¬á¡áá¯á¶ážááŒá¯ááŒááºáž ááá¯á·ááá¯áẠá¡áá»áá¯á·áá±á¬áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠáá¯ááºáá±á¬ááºááŒááºážáá²á·ááá¯á·áá±á¬á - ááá±á¬áá°:
ááœáá·áºááŒá¯áá»ááºáá¬áᬠberets áá»ááºááŸá¬á á¬áá»á¬ážáá±á¬ááºážááá¯áá¬ážáááºá áá±á¬ááºáááº'om áááºáá¬áááºá á¡áááºážá¡ááŒá áºááá¯ááºááŸááºâ áá±ážáá±á¬ááºááá¯á· á¡áááºááá·áºááŒá áºááŒá®áá¬áž áá±á¬ááºáááº"ááá·áºáá»á±á¬áºáá±á¬ááœáá·áºááŒá¯áá»ááºááŸááááºá - ááá¯ááºáž ID:
ဠID ááᯠáá±á¬áºáá¯ááºááẠá¡áá¯á¶ážááŒá¯áááºá áá±á¬ááºáááº'á¡áá±á«áº ááœáá·áºááŒá¯áá»ááºáá¬áá¬'á - ááá¯ááºážáá»áŸáá¯á·ááŸááºáá»ááº:
á€áááºááŸá¬ áááá¬áá±á¬ á áá¬ážááŸááºááŒá áºáááºá áá±á¬ááºáááºáááºážáá²á· ááœáá·áºááŒá¯áá»ááºáá¬áá¬'ááŸá¬á áááºážááẠáááºážááá¯á·á¡á¬áž á¡áá»ááºá¡áááºáá»á¬ážááᯠáá®ážááá·áºáá»áŸáá±ááẠááœáá·áºááŒá¯áá¬ážáááºá - authorization Code ááá¯:
á¡áá»áááºááá¯á¡ááœááºáž ááá¬ážáááºááŸá¯ááŸááá±á¬ áá¬áá®áá¯áẠáá±á¬ááºááẠáá±á¬ááºáá¶á· ááœáá·áºááŒá¯áá»ááºáá¬áá¬y ááŸáá·áºáá²ááŸááºáááºá Token ááá¯ááá°áá«. - Token ááá¯ááá°áá«:
áá¯á¶ážá áœá²áá°ááŸáá·áº áááºááœááºááẠá¡áá¯á¶ážááŒá¯ááá·áºáá±á¬á· á¡áááºážá¡ááŒá áºáá¬áá¬'á¡ááºážá áá±ážáá±á¬ááºáá±á¬ áá¶áááẠááá¯á·ááá¯áẠáá±á¬á·áááºáá áºáá»áá¯áž áá±á¬ááºáááº'áá±áá¬áá±á¬ááºážááá¯ááẠááá¯á·ááá¯áẠáá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠáá¯ááºáá±á¬ááºááẠááœáá·áºááŒá¯áá»ááºááŸááááºá á¡áááºážá¡ááŒá áºáá¬áá¬áááºážááá¯ááºá á¬ážá
ááœá±á¬ááá¯: áá áºáá«áá áºáá¶ááœáẠAuthorization Server ááŸáá·áº Resource Server ááá¯á·ááẠáá°áá®áá±á¬áá¬áá¬ááŒá áºáááºá ááá¯á·áá±á¬áºáááºáž á¡áá»áá¯á·áá±á¬ááá á¹á áá»á¬ážááœááºá áááºážááá¯á·ááẠáá°áá®áá±á¬á¡ááœá²á·á¡á ááºážááŸáá·áºááááºááá¯ááºáá±á¬áºáááºáž áááºážááá¯á·ááẠááá°áá®áá±á¬áá¬áá¬áá»á¬ážááŒá áºááá¯ááºáá«áááºá á¥ááá¬á¡á¬ážááŒáá·áºá ááœáá·áºááŒá¯áá»ááºáá¬áá¬ááẠá¡áááºážá¡ááŒá áºáá¬áá¬á០áá¯á¶ááŒááºá áááºáá»ááá±á¬ ááŒááºááááºáá±á¬ááºááŸá¯áá áºáᯠááŒá áºááá¯ááºáááºá
ááᯠáá»áœááºá¯ááºááá¯á· OAuth 2.0 á á¡ááá ááá±á¬ááá¬ážáá»á¬ážááᯠááŒá¯á¶áá¯á¶ááááŒá®ážá áá»áœááºá¯ááºááá¯á·á ááá°áá¬ááá¯á· ááŒááºááœá¬ážáᬠOAuth á á®ážáááºážááŸá¯ááœáẠááŒá áºáá»ááºáá¬áá¯á¶ááᯠá¡áá®ážááẠáá±á·áá¬ááŒáá·áºááŒáá«á áá¯á·á
- áááºá á¡áááºážá¡ááŒá áºááá¯ááºááŸááºáááºááẠTerrible Pun of the Day áááºáá±á¬ááºááŸá¯ááᯠáá±ážááá¯ááẠ(áá±á¬ááºáááºy) ááá·áºáá°áááºáá»ááºážáá»á¬ážáᶠááááºá á¬áá»á¬ážáá±ážááá¯á·ááá¯ááºá á±áááºá¡ááœáẠááá·áºá¡áááºá¡ááœááºáá»á¬ážááá¯á· áááºáá±á¬ááºáá«á
- áá±á¬ááºááẠááá±á¬ááºáá¬ááᯠá á¬áá»ááºááŸá¬ááá¯á· ááŒááºááœáŸááºážáááºá ááœáá·áºááŒá¯áá»ááºáá¬áá¬a ááŸáá·áº query ááœáẠááá·áºááœááºážáá«á ááá¯ááºáž ID, URI ááᯠááŒááºááœáŸááºážáááºá, áá¯á¶á·ááŒááºááŸá¯á¡áá»áá¯ážá¡á á¬áž áá áºáᯠááá¯á·ááá¯áẠáá áºáá¯áááºááá¯áá±á¬ áá»ááºááŸá¬á á¬áá»á¬áž (ááœáá·áºááŒá¯áá»ááºáá»á¬áž) ááá¯á¡ááºáááºá
- ááœáá·áºááŒá¯áá»ááºáá¬áᬠááá¯á¡ááºáá«á á¡áá¯á¶ážááŒá¯áá°á¡áááºááŸáá·áº á áá¬ážááŸááºááá¯áá±á¬ááºážááŒá®áž ááá·áºá¡á¬áž á á áºáá±ážá¡áááºááŒá¯áá«áááºá
- ááœáá·áºááŒá¯áá»ááºáá¬áᬠáá¯á¶á á¶áá áºáá¯ááŒááááºá ááá±á¬áá° á¡á¬ážáá¯á¶ážáá á¬áááºážááŸáá·áºá¡áá° (á¡áááºááŒá¯áá»ááºáá»á¬áž) áá»ááºááŸá¬á á¬áá»á¬ážáá±á¬ááºážááá¯áá¬ážáááºá áá±á¬ááºáááº'á¡ááºážá áááºááá±á¬áá°áááºááŒá áºá á±á ááŒááºážááá¯áááºááŒá áºá á±á
- ááœáá·áºááŒá¯áá»ááºáá¬áᬠááá·áºá¡á¬áž ááá¯ááºááá¯á· ááŒááºááœáŸááºážáááºá áá±á¬ááºáááº'aá áá¯á¶ážááŒá®áž URI ááᯠááŒááºááœáŸááºážáááºá ááŸáá·áº authorization Code ááᯠ(ááœáá·áºááŒá¯áá»ááºáá¯ááº)á
- áá±á¬ááºááẠááŸáá·áº ááá¯ááºááá¯ááºáááºááœááºáááºá ááœáá·áºááŒá¯áá»ááºáá¬áá¬'Ohm (ááá±á¬ááºáá¬ááᯠáá»á±á¬áºááŒááºáá«á á¡áááºážá¡ááŒá áºááá¯ááºááŸááº'á) áá¯á¶ááŒá¯á¶á áœá¬ áá±ážááá¯á·ááŒááºážá ááá¯ááºáž ID, ááá¯ááºážáá»áŸáá¯á·ááŸááºáá»áẠО authorization Code ááá¯.
- ááœáá·áºááŒá¯áá»ááºáá¬áᬠá¡áá»ááºá¡áááºááᯠá á áºáá±ážááŒá®áž áá¯á¶á·ááŒááºáá«áááºá Token ááá¯ááá°áá«om (áááºáá±á¬ááºááœáá·áº ááá¯áááº)á
- ááᯠáá±á¬ááºááẠáá¯á¶ážááá¯ááºáááºá Token ááá¯ááá°áá« áá±á¬ááºážááá¯áá»ááºáá áºáá¯áá±ážááá¯á·ááẠá¡áááºážá¡ááŒá áºáá¬áᬠá¡áááºá¡ááœááºáá»á¬ážáá á¬áááºážááá¯ááá°áááºá
áá¯á¶ážá áœá²áá° ID ááŸáá·áº áá»áŸáá¯á·ááŸááºáá»ááº
Terrible Pun of the Day ááẠááá·áºá¡áááºá¡ááœááºáá»á¬ážááᯠáááºáá±á¬ááºááŒáá·áºááŸá¯ááœáá·áºáááŒá¯áá® ááŒá¬ááŒáá·áºá áœá¬ááááºážáá Client ááŸáá·áº Authorization Server ááẠáá¯ááºáááºážááœááºáááºáá¶áá±ážáá áºáá¯ááᯠáááºáá±á¬ááºáá²á·áááºá ááœáá·áºááŒá¯áá»ááºáá¬áá¬ááẠClient ID ááŸáá·áº Client áá»áŸáá¯á·ááŸááºáá»ááºááᯠáá¯ááºáá±ážááẠ(áá áºáá«áá áºáᶠáá±á«áºáááºá á¡ááºáẠID О á¡ááºááºáá»áŸáá¯á·ááŸááºáá»ááº) ááŸáá·áº OAuth á¡ááœááºážááŸá áá±á¬ááºááẠá¡ááŒááºá¡ááŸááºáá¯á¶á·ááŒááºááŸá¯á¡ááœáẠáááºážááá¯á·ááᯠáá±á¬ááºáááºáᶠáá±ážááá¯á·áá²á·áááºá
"- áááºá¹ááá¬áá«! áá«áááºážáá²á·á¡áá¯ááºáá¯ááºáá»ááºáá«ááẠ- áá¯ááºáá«áááºá ááŒá¿áá¬ááá¯ááºáá«áá°ážá áá®ááŸá¬ áááºážáá²á· Client ID áá²á· áá»áŸáá¯á·ááŸááºáá»ááº!â
á¡áááºááẠClient áá»áŸáá¯á·ááŸááºáá»ááºááᯠáá»áŸáá¯á·ááŸááºáá¬ážááááºáᯠá¡áááá¹áá¬ááºááœáá·áºááá¯áá¬ážáá±á¬ááŒá±á¬áá·áº Client ááŸáá·áº Authorization Server ááŸáá¬áá»áŸáẠáááºážááᯠááááŸáááá¯ááºáááºááŒá áºáááºá áá±á¬ááºáá¯á¶ážááœááºá Authorization Server ááẠClient á á¡ááŸááºááá¬ážááᯠá¡áááºááŒá¯áá±ážáá±á¬ áá°áá¡áá°á¡áá®ááŒáá·áº ááŒá áºáá
áá«ááá±áá»á· áá«ááá¯áá»áá«áá°áž... OpenID Connect ááᯠááŒáá¯ááá¯áá«ááá»á
OAuth 2.0 á¡ááœááºáᬠáá®ááá¯ááºážáá¯ááºáá¬ážáááºá ááœáá·áºááŒá¯áá»áẠ- á¡ááá®áá±ážááŸááºážáá
áºáá¯ááŸáá
áºáá¯ááá¯á·áá±áá¬ááŸáá·áºáá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááá¯áááºáá±á¬ááºááœáá·áºáá±ážáááºá
OpenID Connect ááẠááá·áºá¡á¬áž á¡ááá®áá±ážááŸááºážáá»á¬ážá áœá¬ááœáẠá¡áá±á¬áá·áºáááºááŒááºážáá áºáá¯áááºážááᯠá¡áá¯á¶ážááŒá¯ááá¯ááºááá·áº á¡ááŒá±á¡áá±áá»á¬ážááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºááẠááœáá·áºááŒá¯ááẠ- á€áá»ááºážáááºááŸá¯ááá¯áááºáž áá°áááá»á¬ážáááºá sign-on áá áºáá¯áááºáž (SSO)á á¥ááá¬á¡á¬ážááŒáá·áºá á¡ááá®áá±ážááŸááºážáá áºáá¯ááẠáá¯á¶ážá áœá²áá°áá»á¬ážá¡á¬áž áááºážááá¯á·ááŸáááŒá®ážáá¬áž á¡áá±á¬áá·áºáá áºáá¯ááᯠá¡áá¯á¶ážááŒá¯ááá¯ááŒá®áž á¡áá¯á¶ážááŒá¯ááá¯áá±á¬ á¡áá±á¬áá·áºááᯠá¡áá¯á¶ážááŒá¯ááœáá·áºáá±ážááá·áº Facebook ááá¯á·ááá¯áẠTwitter áá²á·ááá¯á·áá±á¬ áá°ááŸá¯ááœááºáááºáá»á¬ážááŸáá·áº SSO áá±á«ááºážá ááºážááŸá¯ááᯠáá¶á·ááá¯ážáá±ážááá¯ááºáááºá
á
á®ážáááºážááŸá¯ (á
á®ážáááºážááŸá¯) OpenID Connect ááẠOAuth á ááá
á¹á
ááŸáá·áº áá°áááºá áá
áºáá¯áááºážáá±á¬ ááŒá¬ážáá¬ážáá»ááºááŸá¬ áá°ááá±á¬ááºážááá¯ááŸá¯ááœáẠá¡áá¯á¶ážááŒá¯ááá·áº áá®ážááŒá¬ážáááºáááºááŒá
áºáááºá openid
, - A áá±á¬ááºááẠáá±á¬ááºáá¯á¶ážáá±á¬á· ááŒáá¯ááºáááºá Token ááá¯ááá°áá«ááŸáá·áº ID ááá¯áááº.
OAuth á
á®ážáááºážááŸá¯áá²á·ááá¯á·áááºá Token ááá¯ááá°áá« OpenID Connect ááœááºá á€áááºááŸá¬ áááŸááºážáááºážáá±á¬ áááºááá¯ážá¡áá»áá¯á·ááŒá
áºáááºá áá±á¬ááºáááº'ááŸá¬á á¡ááŒááºááá± áá±á¬ááºáááº'а Token ááá¯ááá°áá« áá±á¬ááºážááá¯áá»ááºáá
áºáá¯á
á®ááŸáá·áºá¡áá° áá±ážááá¯á·áá¬ážáá±á¬ á
á¬áá¯á¶ážáá
áºááá¯ááºážááᯠááá¯ááºá
á¬ážááŒá¯áááºá á¡áááºážá¡ááŒá
áºáá¬áá¬'y ááẠááá¯áááºááŸááºáááºááŸá¯ááŸááááŸá áá¯á¶ážááŒááºáá±ážáááºá ID ááá¯ááẠáá¯á¶ážáááœá²ááŒá¬ážááŒá¬ážáá¬ážáá±á¬á¡áá¬ááá¯ááá¯ááºá
á¬ážááŒá¯áááºá
ID Token ááẠJWT ááŒá áºáááºá
ID ááá¯ááẠJSON Web Token ááá¯á·ááá¯áẠJWT áá¯áá±á«áºáá±á¬ á¡áá°ážáá±á¬áºáááºáá¬ážááá·áº á á¬áá¯á¶ážáá»á¬ážááŒá áºáááºá (ááá«ááᶠJWT ááá¯áááºáá»á¬ážááᯠ"jots" áá²á·ááá¯á· á¡áá¶ááœááºáááº). ááŒááºááá±á·áá¬áá°áá»á¬ážá¡ááœáẠJWT ááẠáá¬ážááááºááá¯ááºáá±á¬ á áá¬ážáá áºááœááºážááᯠáááºááá±á¬áºáááºážá áá±á¬ááºááẠIDá á¡áá¯á¶ážááŒá¯áá°á¡áááºá á¡áá±á¬áá·áºáááºáá»áááºá áááºáááºážáá¯ááºáá¯á¶ážáááºá ááá·áº JWT á០á¡áá»ááºá¡áááºá¡áá»áá¯ážáá»áá¯ážááᯠáá¯ááºáá°ááá¯ááºáááºá ID ááá¯áááºáá JWT ááᯠá áœááºáááºááẠááŒáá¯ážáááºážááŸá¯áá»á¬áž ááŸááá±ááŒááºážá á¡áá²ááŸá¬áá±áᬠID ááá¯áááº'a áá¯áá±á«áºáááºá áá»áŸá±á¬ááºááœáŸá¬áá»á¬áž [áá±á¬ááºážááá¯áá»ááºáá»á¬áž].
OIDC ááá
á¹á
ááœáẠá
á¶áááºážáááºážáá
áºáá¯áááºáž ááŸááá«áááºá áá±á¬ááºááẠáá
áºáŠážáá»ááºážá
á®á áá±á¬ááºáááºá¡áá»ááºá¡áááºáá»á¬ážááᯠáá±á¬ááºážááá¯ááá¯ááºáá«áááºá [á¡áá±á¬ááºá¡áá¬áž] ÐŸÑ ááœáá·áºááŒá¯áá»ááºáá¬áá¬'a á¥ááá¬á¡á¬ážááŒáá·áºá á¡á®ážáá±ážááºááááºá
á¬ááᯠá¡áá¯á¶ážááŒá¯áá¬ážáááºá Token ááá¯ááá°áá«.
OAuth ááŸáá·áº OIDC á¡ááŒá±á¬ááºáž ááá¯ááá¯áá±á·áá¬áá«á
ááá¯á·ááŒá±á¬áá·áºá OAuth ááŸáá·áº OIDC á¡áá¯ááºáá¯ááºáá¯á¶ááá¯á·ááᯠá¡ááá¯áá»á¯á¶áž áá¯á¶ážáááºáá«áááºá ááá¯áááºáá²á¡á±á¬ááºáá°ážááá¯á· á¡áááºááá·áºááŒá áºááŒá®áá¬ážá OAuth 2.0 ááŸáá·áº OpenID Connect á¡ááŒá±á¬ááºáž ááá¯ááá¯áá±á·áá¬ááẠáá°áá®ááẠá€á¡áá¬áá»á¬ážááẠáá±á¬ááºáááºá¡áááºážá¡ááŒá áºáá»á¬ážááŒá áºáááºá
-
OAuth ááá¯áá¬áá¬áá²á -
OAuth ááá¯á·ááá¯áẠOpenID áá»áááºáááºááŸá¯ááᯠáááºáá°áá»áŸ ááá¯áá áá¯ááºáá«á -
PKCE Flow ááŒáá·áº OAuth 2.0 ááœáá·áºááŒá¯áá»ááºáá¯ááºááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºáá«á -
OAuth 2.0 Grant á¡áá»áá¯ážá¡á á¬ážááá¬áá²á -
Command Line á០OAuth 2.0 -
SQL Server ááŒáá·áº Secure Node.js á¡ááºááºááᯠáááºáá±á¬ááºáá«á
á¡ááŒá²ááá¯ááá¯á ááœááºáááºá
áœá¬ ááŸááºáá»ááºáá±ážááá¯ááºáá«áááºá áá»áœááºá¯ááºááá¯á·á áá±á¬ááºáá¯á¶ážáááááºážáá»á¬ážááᯠá¡áááºáááŒááºááááŸáááẠá
á¬áááºážááœááºážááá¯ááºáá«á
PS áá¬áá¬ááŒááºááŸ
áá»áœááºá¯ááºááá¯á·áááá±á¬á·ááºááœááºáááºážáááºáá«
- «
Kubernetes ááŸá áá¯á¶ááŒá¯á¶áá±áž ABC- á¡áá±á¬ááºá¡áá¬ážááŒááŒááºážá ááœáá·áºááŒá¯áá»ááºá á á¬áááºážá á áºááŒááºážá "; - «
Kubernetes ááŸá á¡áá¯á¶ážááŒá¯áá°áá»á¬ážááŸáá·áº ááœáá·áºááŒá¯áá»áẠRBAC "; - «
33+ Kubernetes áá¯á¶ááŒá¯á¶áá±ážáááááá¬áá»á¬áž "; - «
Docker ááœááºááááºáá¬áá»á¬ážá¡ááœáẠáá¯á¶ááŒá¯á¶áá±áž "á
source: www.habr.com