OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ

рдиреЛрдВрдж. рдЕрдиреБрд╡рд╛рдж: Okta рдЪрд╛ рд╣рд╛ рдЙрддреНрддрдо рд▓реЗрдЦ OAuth рдЖрдгрд┐ OIDC (OpenID Connect) рдХрд╕реЗ рдХрд╛рд░реНрдп рдХрд░рддрд╛рдд рд╣реЗ рд╕реЛрдкреНрдпрд╛ рдЖрдгрд┐ рд╕реНрдкрд╖реНрдЯ рдкрджреНрдзрддреАрдиреЗ рд╕реНрдкрд╖реНрдЯ рдХрд░рддреЛ. рд╣реЗ рдЬреНрдЮрд╛рди рд╡рд┐рдХрд╕рдХ, рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рд╢рд╛рд╕рдХ рдЖрдгрд┐ рд▓реЛрдХрдкреНрд░рд┐рдп рд╡реЗрдм рдНрдкреНрд▓рд┐рдХреЗрд╢рдиреНрд╕рдЪреНрдпрд╛ "рдирд┐рдпрдорд┐рдд рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрдирд╛" рдЙрдкрдпреБрдХреНрдд рдард░реЗрд▓, рдЬреЗ рдмрд╣реБрдзрд╛ рдЗрддрд░ рд╕реЗрд╡рд╛рдВрд╕рд╣ рдЧреЛрдкрдиреАрдп рдбреЗрдЯрд╛рдЪреА рджреЗрд╡рд╛рдгрдШреЗрд╡рд╛рдг рджреЗрдЦреАрд▓ рдХрд░рддрд╛рдд.

рдЗрдВрдЯрд░рдиреЗрдЯрдЪреНрдпрд╛ рдЕрд╢реНрдордпреБрдЧрд╛рдд, рд╕реЗрд╡рд╛рдВрдордзреНрдпреЗ рдорд╛рд╣рд┐рддреАрдЪреА рджреЗрд╡рд╛рдгрдШреЗрд╡рд╛рдг рдХрд░рдгреЗ рд╕реЛрдкреЗ рд╣реЛрддреЗ. рддреБрдореНрд╣реА рддреБрдордЪреЗ рд▓реЙрдЧрд┐рди рдЖрдгрд┐ рдкрд╛рд╕рд╡рд░реНрдб рдПрдХрд╛ рд╕реЗрд╡реЗрддреВрди рджреБрд╕рд░реНтАНрдпрд╛ рд╕реЗрд╡реЗрд▓рд╛ рджрд┐рд▓рд╛, рдЬреЗрдгреЗрдХрд░реВрди рддреНрдпрд╛рдиреЗ рддреБрдордЪреЗ рдЦрд╛рддреЗ рдкреНрд░рд╡рд┐рд╖реНрдЯ рдХреЗрд▓реЗ рдЖрдгрд┐ рддреНрдпрд╛рд▓рд╛ рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реЗрд▓реА рдХреЛрдгрддреАрд╣реА рдорд╛рд╣рд┐рддреА рдкреНрд░рд╛рдкреНрдд рд╣реЛрдИрд▓.

OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ
"рдорд▓рд╛ рддреБрдордЪреЗ рдмрдБрдХ рдЦрд╛рддреЗ рджреНрдпрд╛." тАЬрдЖрдореНрд╣реА рд╡рдЪрди рджреЗрддреЛ рдХреА рдкрд╛рд╕рд╡рд░реНрдб рдЖрдгрд┐ рдкреИрд╢рд╛рдиреЗ рд╕рд░реНрд╡ рдХрд╛рд╣реА рдареАрдХ рд╣реЛрдИрд▓. рддреЗ рдкреНрд░рд╛рдорд╛рдгрд┐рдХ рдЖрд╣реЗ, рдкреНрд░рд╛рдорд╛рдгрд┐рдХ рдЖрд╣реЗ!" *рд╣реА рд╣рд┐*

рднрдпрдкрдЯ! рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдиреЗ рд╡рд╛рдкрд░рдХрд░реНрддрд╛рдирд╛рд╡ рдЖрдгрд┐ рд╕рдВрдХреЗрддрд╢рдмреНрдж рд╕рд╛рдорд╛рдпрд┐рдХ рдХрд░рдгреЗ рдХреЛрдгрд╛рд▓рд╛рд╣реА рдЖрд╡рд╢реНрдпрдХ рдирд╕рд╛рд╡реЗ, рдХреНрд░реЗрдбреЗрдиреНрд╢рд┐рдпрд▓, рджреБрд╕рд▒реНрдпрд╛ рд╕реЗрд╡реЗрд╕рд╣. рдпрд╛ рд╕реЗрд╡реЗрдорд╛рдЧреАрд▓ рд╕рдВрд╕реНрдерд╛ рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд┐рдд рдареЗрд╡реЗрд▓ рдЖрдгрд┐ рдЖрд╡рд╢реНрдпрдХрддреЗрдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд рд╡реИрдпрдХреНрддрд┐рдХ рдорд╛рд╣рд┐рддреА рдЧреЛрд│рд╛ рдХрд░рдгрд╛рд░ рдирд╛рд╣реА рдпрд╛рдЪреА рд╢рд╛рд╢реНрд╡рддреА рдирд╛рд╣реА. рд╣реЗ рд╡реЗрдбреЗ рд╡рд╛рдЯреЗрд▓, рдкрд░рдВрддреБ рдХрд╛рд╣реА рдЕреЕрдкреНрд╕ рдЕрдЬреВрдирд╣реА рд╣реА рдкрджреНрдзрдд рд╡рд╛рдкрд░рддрд╛рдд!

рдЖрдЬ рдПрдХрдЪ рдорд╛рдирдХ рдЖрд╣реЗ рдЬреЗ рдПрдХрд╛ рд╕реЗрд╡реЗрд▓рд╛ рджреБрд╕рд▒реНрдпрд╛рдЪрд╛ рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд┐рддрдкрдгреЗ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЗ. рджреБрд░реНрджреИрд╡рд╛рдиреЗ, рдЕрд╢реА рдорд╛рдирдХреЗ рдЦреВрдк рд╢рдмреНрджрдЬрд╛рд▓ рдЖрдгрд┐ рд╕рдВрдЬреНрдЮрд╛ рд╡рд╛рдкрд░рддрд╛рдд, рдЬреНрдпрд╛рдореБрд│реЗ рддреНрдпрд╛рдВрдЪреА рд╕рдордЬ рдЧреБрдВрддрд╛рдЧреБрдВрддреАрдЪреА рд╣реЛрддреЗ. рдпрд╛ рд╕рд╛рдордЧреНрд░реАрдЪрд╛ рдЙрджреНрджреЗрд╢ рд╕реЛрдкреНрдпрд╛ рдЙрджрд╛рд╣рд░рдгрд╛рдВрдЪрд╛ рд╡рд╛рдкрд░ рдХрд░реВрди рддреЗ рдХрд╕реЗ рдХрд╛рд░реНрдп рдХрд░рддрд╛рдд рд╣реЗ рд╕реНрдкрд╖реНрдЯ рдХрд░рдгреЗ рд╣рд╛ рдЖрд╣реЗ (рдорд╛рдЭреА рд░реЗрдЦрд╛рдЪрд┐рддреНрд░реЗ рдореБрд▓рд╛рдВрдЪреНрдпрд╛ рдбрдмрд┐рдВрдЧрд╕рд╛рд░рдЦреА рдЖрд╣реЗрдд рдЕрд╕реЗ рддреБрдореНрд╣рд╛рд▓рд╛ рд╡рд╛рдЯрддреЗ рдХрд╛? рдЕрд░реЗрд░реЗ!).

OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ

рддрд╕реЗ, рд╣реЗ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ рд╡реНрд╣рд┐рдбрд┐рдУ рд╕реНрд╡рд░реВрдкрд╛рдд рджреЗрдЦреАрд▓ рдЙрдкрд▓рдмреНрдз рдЖрд╣реЗ:

рд╕реНрддреНрд░рд┐рдпрд╛ рдЖрдгрд┐ рд╕рдЬреНрдЬрдирд╛рдВрдиреЛ, рд╕реНрд╡рд╛рдЧрдд рдЖрд╣реЗ: OAuth 2.0

OAuth 2.0 рдПрдХ рд╕реБрд░рдХреНрд╖рд╛ рдорд╛рдирдХ рдЖрд╣реЗ рдЬреЗ рдПрдХрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╛рд╕ рджреБрд╕рд░реНтАНрдпрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╛рддреАрд▓ рдорд╛рд╣рд┐рддреАрдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рдорд┐рд│рд╡реВ рджреЗрддреЗ. рдкрд░рдорд┐рдЯ рдЬрд╛рд░реА рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдЪрд░рдгрд╛рдВрдЪрд╛ рдХреНрд░рдо [рдкрд░рд╡рд╛рдирдЧреА] (рдХрд┐рдВрд╡рд╛ рд╕рдВрдорддреА [рд╕рдВрдорддреА]) рдЕрдиреЗрдХрджрд╛ рдХреЙрд▓ рдХрд░рд╛ рдЕрдзрд┐рдХреГрддрддрд╛ [рдЕрдзрд┐рдХреГрддрддрд╛] рдХрд┐рдВрд╡рд╛ рдЕрдЧрджреА рдирд┐рдпреБрдХреНрдд рдЕрдзрд┐рдХреГрддрддрд╛ [рдкреНрд░рд╕реНрддреБрдд рдЕрдзрд┐рдХреГрддрддрд╛]. рдпрд╛ рдорд╛рдирдХрд╛рд╕рд╣, рддреБрдореНрд╣реА ре▓рдкреНрд▓рд┐рдХреЗрд╢рдирд▓рд╛ рддреБрдордЪрд╛ рдкрд╛рд╕рд╡рд░реНрдб рди рджреЗрддрд╛ рдбреЗрдЯрд╛ рд╡рд╛рдЪрдгреНрдпрд╛рдЪреА рдХрд┐рдВрд╡рд╛ рддреБрдордЪреНрдпрд╛ рд╡рддреАрдиреЗ рджреБрд╕рд░реНтАНрдпрд╛ рдЕреЕрдкреНрд▓рд┐рдХреЗрд╢рдирдЪреА рдлрдВрдХреНрд╢рдиреНрд╕ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреА рдЕрдиреБрдорддреА рджреЗрддрд╛. рд╡рд░реНрдЧ!

рдЙрджрд╛рд╣рд░рдг рдореНрд╣рдгреВрди, рд╕рдордЬрд╛ рддреБрдореНрд╣рд╛рд▓рд╛ "рдЕрдирд▓рдХреА рдкрди рдСрдл рдж рдбреЗ" рдирд╛рд╡рд╛рдЪреА рд╕рд╛рдЗрдЯ рд╕рд╛рдкрдбрд▓реА рдЖрд╣реЗ. [рджрд┐рд╡рд╕рд╛рддреАрд▓ рднрдпрд╛рдирдХ рд╢реНрд▓реЗрд╖] рдЖрдгрд┐ рдлреЛрдирд╡рд░ рдордЬрдХреВрд░ рд╕рдВрджреЗрд╢рд╛рдВрдЪреНрдпрд╛ рд░реВрдкрд╛рдд рджрд░рд░реЛрдЬ рд╢реНрд▓реЗрд╖ рдкреНрд░рд╛рдкреНрдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рддреНрдпрд╛рд╡рд░ рдиреЛрдВрджрдгреА рдХрд░рдгреНрдпрд╛рдЪрд╛ рдирд┐рд░реНрдгрдп рдШреЗрддрд▓рд╛. рддреБрдореНрд╣рд╛рд▓рд╛ рд╕рд╛рдЗрдЯ рдЦрд░реЛрдЦрд░ рдЖрд╡рдбрд▓реА рдЖрдгрд┐ рддреБрдореНрд╣реА рддреА рддреБрдордЪреНрдпрд╛ рд╕рд░реНрд╡ рдорд┐рддреНрд░рд╛рдВрд╕рд╣ рд╢реЗрдЕрд░ рдХрд░рдгреНрдпрд╛рдЪреЗ рдард░рд╡рд▓реЗ. рд╢реЗрд╡рдЯреА, рдкреНрд░рддреНрдпреЗрдХрд╛рд▓рд╛ рднрд┐рддреАрджрд╛рдпрдХ рд╢реНрд▓реЗрд╖ рдЖрд╡рдбрддрд╛рдд, рдмрд░реЛрдмрд░?

OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ
"рджрд┐рд╡рд╕рд╛рдЪрд╛ рджреБрд░реНрджреИрд╡реА рд╢реНрд▓реЗрд╖: рддреНрдпрд╛рдЪреНрдпрд╛ рд╢рд░реАрд░рд╛рдЪрд╛ рдбрд╛рд╡рд╛ рдЕрд░реНрдзрд╛ рднрд╛рдЧ рдЧрдорд╛рд╡рд▓реЗрд▓реНрдпрд╛ рдорд╛рдгрд╕рд╛рдмрджреНрджрд▓ рдРрдХрд▓реЗ рдЖрд╣реЗ? рдЖрддрд╛ рддреЛ рдиреЗрд╣рдореА рдмрд░реЛрдмрд░ рдЕрд╕рддреЛ!тАЭ (рдЕрдВрджрд╛рдЬреЗ рднрд╛рд╖рд╛рдВрддрд░, рдХрд╛рд░рдг рдореВрд│рдЪрд╛ рд╕реНрд╡рддрдГрдЪрд╛ рд╢реНрд▓реЗрд╖ рдЖрд╣реЗ - рдЕрдВрджрд╛рдЬреЗ рдЕрдиреБрд╡рд╛рдж.)

рд╣реЗ рд╕реНрдкрд╖реНрдЯ рдЖрд╣реЗ рдХреА рд╕рдВрдкрд░реНрдХ рд╕реВрдЪреАрдордзреВрди рдкреНрд░рддреНрдпреЗрдХ рд╡реНрдпрдХреНрддреАрд▓рд╛ рд▓рд┐рд╣рд┐рдгреЗ рд╣рд╛ рдкрд░реНрдпрд╛рдп рдирд╛рд╣реА. рдЖрдгрд┐, рдЬрд░ рддреБрдореНрд╣реА рдорд╛рдЭреНрдпрд╛рд╕рд╛рд░рдЦреЗ рдереЛрдбреЗрд╕реЗрд╣реА рдЕрд╕рд╛рд▓, рддрд░ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдХрд╛рдо рдЯрд╛рд│рдгреНрдпрд╛рд╕рд╛рдареА рддреБрдореНрд╣реА рдХреЛрдгрддреНрдпрд╛рд╣реА рдЯреЛрдХрд╛рд▓рд╛ рдЬрд╛рд▓. рд╕реБрджреИрд╡рд╛рдиреЗ, рдЯреЗрд░рд┐рдмрд▓ рдкрди рдСрдл рдж рдбреЗ рддреБрдордЪреНрдпрд╛ рд╕рд░реНрд╡ рдорд┐рддреНрд░рд╛рдВрдирд╛ рд╕реНрд╡рддрдГрд╣реВрди рдЖрдордВрддреНрд░рд┐рдд рдХрд░реВ рд╢рдХрддреЛ! рд╣реЗ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдлрдХреНрдд рдЖрдкрд▓реНрдпрд╛ рд╕рдВрдкрд░реНрдХрд╛рдВрдЪреНрдпрд╛ рдИрдореЗрд▓рдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдЙрдШрдбрдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ - рд╕рд╛рдЗрдЯ рд╕реНрд╡рддрдГрдЪ рддреНрдпрд╛рдВрдирд╛ рдЖрдордВрддреНрд░рдгреЗ рдкрд╛рдард╡реЗрд▓ (OAuth рдирд┐рдпрдо)!

OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ
тАЬрдкреНрд░рддреНрдпреЗрдХрд╛рд▓рд╛ рд╢реНрд▓реЛрдХ рдЖрд╡рдбрддрд╛рдд! - рдЖрдзреАрдкрд╛рд╕реВрди рд▓реЙрдЧ рдЗрди рдХреЗрд▓реЗ? тАЬрддреБрдореНрд╣реА рдЯреЗрд░рд┐рдмрд▓ рдкрди рдСрдл рдж рдбреЗ рд╡реЗрдмрд╕рд╛рдЗрдЯрд▓рд╛ рддреБрдордЪреНрдпрд╛ рд╕рдВрдкрд░реНрдХ рд╕реВрдЪреАрдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХрд░реВ рджреЗрдК рдЗрдЪреНрдЫрд┐рддрд╛? - рдзрдиреНрдпрд╡рд╛рдж! рдЖрддрд╛рдкрд╛рд╕реВрди, рдЖрдореНрд╣реА рддреБрдордЪреНрдпрд╛ рдУрд│рдЦреАрдЪреНрдпрд╛ рдкреНрд░рддреНрдпреЗрдХрд╛рд▓рд╛, рд╡реЗрд│ рд╕рдВрдкреЗрдкрд░реНрдпрдВрдд рджрд░рд░реЛрдЬ рд╕реНрдорд░рдгрдкрддреНрд░реЗ рдкрд╛рдард╡реВ! рддреВ рд╕рд░реНрд╡рд╛рдд рдЪрд╛рдВрдЧрд▓рд╛ рдорд┐рддреНрд░ рдЖрд╣реЗрд╕!"

  1. рддреБрдордЪреА рдИрдореЗрд▓ рд╕реЗрд╡рд╛ рдирд┐рд╡рдбрд╛.
  2. рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реНрдпрд╛рд╕, рдореЗрд▓ рд╕рд╛рдЗрдЯрд╡рд░ рдЬрд╛ рдЖрдгрд┐ рдЖрдкрд▓реНрдпрд╛ рдЦрд╛рддреНрдпрд╛рдд рд╕рд╛рдЗрди рдЗрди рдХрд░рд╛.
  3. рддреБрдордЪреНрдпрд╛ рд╕рдВрдкрд░реНрдХрд╛рдВрдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЯреЗрд░рд┐рдмрд▓ рдкрди рдСрдл рдж рдбреЗ рдкрд░рд╡рд╛рдирдЧреА рджреНрдпрд╛.
  4. рдЯреЗрд░рд┐рдмрд▓ рдкрди рдСрдл рдж рдбреЗ рд╕рд╛рдЗрдЯрд╡рд░ рдкрд░рдд рдпрд╛.

рддреБрдореНрд╣реА рддреБрдордЪрд╛ рд╡рд┐рдЪрд╛рд░ рдмрджрд▓рд▓реНрдпрд╛рд╕, OAuth рд╡рд╛рдкрд░рдгрд╛рд░реЗ рдЕреЕрдкреНрд▓рд┐рдХреЗрд╢рди рдЕтАНреЕрдХреНрд╕реЗрд╕ рд░рджреНрдж рдХрд░рдгреНрдпрд╛рдЪрд╛ рдорд╛рд░реНрдЧ рджреЗрдЦреАрд▓ рджреЗрддрд╛рдд. рдПрдХрджрд╛ рддреБрдореНрд╣реА рдард░рд╡рд▓реЗ рдХреА рддреБрдореНрд╣рд╛рд▓рд╛ рдпрд╛рдкреБрдвреЗ рдЯреЗрд░рд┐рдмрд▓ рдкрди рдСрдл рдж рдбреЗ рд╕рд╣ рд╕рдВрдкрд░реНрдХ рд╕рд╛рдорд╛рдпрд┐рдХ рдХрд░рд╛рдпрдЪреЗ рдирд╛рд╣реА, рддреБрдореНрд╣реА рдореЗрд▓ рд╕рд╛рдЗрдЯрд╡рд░ рдЬрд╛рдК рд╢рдХрддрд╛ рдЖрдгрд┐ рдЕрдзрд┐рдХреГрдд рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╛рдВрдЪреНрдпрд╛ рд╕реВрдЪреАрдордзреВрди рд╢реНрд▓реЗрд╖ рд╕рд╛рдЗрдЯ рдХрд╛рдвреВрди рдЯрд╛рдХреВ рд╢рдХрддрд╛.

OAuth рдкреНрд░рд╡рд╛рд╣

рд╕рд╛рдорд╛рдиреНрдпрддрдГ рдЬреНрдпрд╛рд▓рд╛ рдореНрд╣рдгрддрд╛рдд рддреНрдпрд╛рдордзреВрди рдЖрдкрдг рдЧреЗрд▓реЛ рдЖрд╣реЛрдд рдкреНрд░рд╡рд╛рд╣ [рдкреНрд░рд╡рд╛рд╣] OAuth. рдЖрдордЪреНрдпрд╛ рдЙрджрд╛рд╣рд░рдгрд╛рдд, рдпрд╛ рдкреНрд░рд╡рд╛рд╣рд╛рдд рджреГрд╢реНрдпрдорд╛рди рдкрд╛рдпрд▒реНрдпрд╛, рддрд╕реЗрдЪ рдЕрдиреЗрдХ рдЕрджреГрд╢реНрдп рдкрд╛рдпрд▒реНрдпрд╛ рдЕрд╕рддрд╛рдд, рдЬреНрдпрд╛рдордзреНрдпреЗ рджреЛрди рд╕реЗрд╡рд╛ рдорд╛рд╣рд┐рддреАрдЪреНрдпрд╛ рд╕реБрд░рдХреНрд╖рд┐рдд рджреЗрд╡рд╛рдгрдШреЗрд╡рд╛рдгреАрд╡рд░ рд╕рд╣рдордд рдЕрд╕рддрд╛рдд. рдкреВрд░реНрд╡реАрдЪреЗ рдЯреЗрд░рд┐рдмрд▓ рдкрди рдСрдл рдж рдбреЗ рдЙрджрд╛рд╣рд░рдг рд╕рд░реНрд╡рд╛рдд рд╕рд╛рдорд╛рдиреНрдп OAuth 2.0 рдкреНрд░рд╡рд╛рд╣ рд╡рд╛рдкрд░рддреЗ, рдЬреНрдпрд╛рд▓рд╛ "рдЕрдзрд┐рдХреГрддрддрд╛ рдХреЛрдб" рдкреНрд░рд╡рд╛рд╣ рдореНрд╣рдгреВрди рдУрд│рдЦрд▓реЗ рдЬрд╛рддреЗ. ["рдЕрдзрд┐рдХреГрддрддрд╛ рдХреЛрдб" рдкреНрд░рд╡рд╛рд╣].

OAuth рдХрд╕реЗ рдХрд╛рд░реНрдп рдХрд░рддреЗ рдпрд╛рдЪреНрдпрд╛ рддрдкрд╢реАрд▓рд╛рдВрдордзреНрдпреЗ рдЬрд╛рдгреНрдпрд╛рдкреВрд░реНрд╡реА, рдХрд╛рд╣реА рд╕рдВрдЬреНрдЮрд╛рдВрдЪреНрдпрд╛ рдЕрд░реНрдерд╛рдмрджреНрджрд▓ рдмреЛрд▓реВрдпрд╛:

  • рд╕рдВрд╕рд╛рдзрди рдорд╛рд▓рдХ:

    OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ

    рддреЛ рддреВрдЪ рдЖрд╣реЗрд╕! рддреБрдордЪреНрдпрд╛рдХрдбреЗ рддреБрдордЪреА рдХреНрд░реЗрдбреЗрдиреНрд╢рд┐рдпрд▓реНрд╕, рддреБрдордЪрд╛ рдбреЗрдЯрд╛ рдЖрд╣реЗ рдЖрдгрд┐ рддреБрдордЪреНрдпрд╛ рдЦрд╛рддреНрдпрд╛рдВрд╡рд░ рдХреЗрд▓реНрдпрд╛ рдЬрд╛рдгрд╛рд░реНтАНрдпрд╛ рд╕рд░реНрд╡ рдЕтАНреЕрдХреНрдЯрд┐рд╡реНрд╣рд┐рдЯреА рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рд╛.

  • рдХреНрд▓рд╛рдпрдВрдЯ:

    OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ

    рдПрдХ рдНрдкреНрд▓рд┐рдХреЗрд╢рди (рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдЯреЗрд░рд┐рдмрд▓ рдкрди рдСрдл рдж рдбреЗ рд╕рд░реНрд╡реНрд╣рд┐рд╕) рдЬреЛ рдкреНрд░рд╡реЗрд╢ рдХрд░реВ рдЗрдЪреНрдЫрд┐рддреЛ рдХрд┐рдВрд╡рд╛ рдЪреНрдпрд╛ рд╡рддреАрдиреЗ рдХрд╛рд╣реА рдХреНрд░рд┐рдпрд╛ рдХрд░реВ рдЗрдЪреНрдЫрд┐рддреЛ рд╕рдВрд╕рд╛рдзрди рдорд╛рд▓рдХ'рдЕ.

  • рдЕрдзрд┐рдХреГрддрддрд╛ рд╕рд░реНрд╡реНрд╣рд░:

    OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ

    рдЬреНрдпрд╛ рдЕреЕрдкрд▓рд╛ рдорд╛рд╣реАрдд рдЖрд╣реЗ рд╕рдВрд╕рд╛рдзрди рдорд╛рд▓рдХ'a рдЖрдгрд┐ рдЬреНрдпрд╛рдордзреНрдпреЗ u рд╕рдВрд╕рд╛рдзрди рдорд╛рд▓рдХрдПрдХ рдЦрд╛рддреЗ рдЖрдзреАрдЪ рдЖрд╣реЗ.

  • рд╕рдВрд╕рд╛рдзрди рд╕рд░реНрд╡реНрд╣рд░:

    OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ

    рдНрдкреНрд▓рд┐рдХреЗрд╢рди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдЗрдВрдЯрд░рдлреЗрд╕ (API) рдХрд┐рдВрд╡рд╛ рд╕реЗрд╡рд╛ рдХреНрд▓рд╛рдпрдВрдЯ рдЪреНрдпрд╛ рд╡рддреАрдиреЗ рд╡рд╛рдкрд░реВ рдЗрдЪреНрдЫрд┐рдд рдЖрд╣реЗ рд╕рдВрд╕рд╛рдзрди рдорд╛рд▓рдХ'рдЕ.

  • URI рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рд╛:

    OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ

    рддреА рд▓рд┐рдВрдХ рдЕрдзрд┐рдХреГрддрддрд╛ рд╕рд░реНрд╡реНрд╣рд░ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░реЗрд▓ рд╕рдВрд╕рд╛рдзрди рдорд╛рд▓рдХрдЖрдгрд┐ рдкрд░рд╡рд╛рдирдЧреА рджрд┐рд▓реНрдпрд╛рдирдВрддрд░ рдХреНрд▓рд╛рдпрдВрдЯрдпреЗрдереЗ рдпрд╛рд▓рд╛ рдХрдзреАрдХрдзреА "рдХреЙрд▓рдмреЕрдХ URL" рдореНрд╣рдгреВрди рд╕рдВрдмреЛрдзрд▓реЗ рдЬрд╛рддреЗ.

  • рдкреНрд░рддрд┐рд╕рд╛рдж рдкреНрд░рдХрд╛рд░:

    OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ

    рдЬреНрдпрд╛ рдкреНрд░рдХрд╛рд░рдЪреА рдорд╛рд╣рд┐рддреА рдорд┐рд│рдгреЗ рдЕрдкреЗрдХреНрд╖рд┐рдд рдЖрд╣реЗ рдХреНрд▓рд╛рдпрдВрдЯ. рд╕рд░реНрд╡рд╛рдд рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рддрд┐рд╕рд╛рдж рдкреНрд░рдХрд╛рд░'рдУрдо рд╣рд╛ рдХреЛрдб рдЖрд╣реЗ, рдореНрд╣рдгрдЬреЗ рдХреНрд▓рд╛рдпрдВрдЯ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдгреНрдпрд╛рдЪреА рдЕрдкреЗрдХреНрд╖рд╛ рдЖрд╣реЗ рдЕрдзрд┐рдХреГрддрддрд╛ рдХреЛрдб.

  • рд╡реНрдпрд╛рдкреНрддреА:

    OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ

    рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдкрд░рд╡рд╛рдирдЧреНрдпрд╛рдВрдЪреЗ рд╣реЗ рддрдкрд╢реАрд▓рд╡рд╛рд░ рд╡рд░реНрдгрди рдЖрд╣реЗ рдХреНрд▓рд╛рдпрдВрдЯ'y, рдЬрд╕реЗ рдХреА рдбреЗрдЯрд╛ рдНрдХреНрд╕реЗрд╕ рдХрд░рдгреЗ рдХрд┐рдВрд╡рд╛ рдХрд╛рд╣реА рдХреНрд░рд┐рдпрд╛ рдХрд░рдгреЗ.

  • рд╕рдВрдорддреА:

    OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ

    рдЕрдзрд┐рдХреГрддрддрд╛ рд╕рд░реНрд╡реНрд╣рд░ рдШреЗрддреЗ рд╕реНрдХреЛрдкрд╡рд┐рдирдВрддреА рдХреЗрд▓реА рдХреНрд▓рд╛рдпрдВрдЯ'рдУрдо, рдЖрдгрд┐ рд╡рд┐рдЪрд╛рд░рддреЛ рд╕рдВрд╕рд╛рдзрди рдорд╛рд▓рдХ'рдЕ, рддреЛ рдкреНрд░рджрд╛рди рдХрд░рдгреНрдпрд╛рд╕ рддрдпрд╛рд░ рдЖрд╣реЗ рдХреНрд▓рд╛рдпрдВрдЯ'рдпреЛрдЧреНрдп рдкрд░рд╡рд╛рдирдЧреНрдпрд╛ рдЖрд╣реЗрдд.

  • рдХреНрд▓рд╛рдпрдВрдЯ рдЖрдпрдбреА:

    OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ

    рд╣рд╛ рдЖрдпрдбреА рдУрд│рдЦрдгреНрдпрд╛рд╕рд╛рдареА рд╡рд╛рдкрд░рд▓рд╛ рдЬрд╛рддреЛ рдХреНрд▓рд╛рдпрдВрдЯрд╡рд░ рдЕрдзрд┐рдХреГрддрддрд╛ рд╕рд░реНрд╡реНрд╣рд░'рдЗ.

  • рдХреНрд▓рд╛рдпрдВрдЯ рд╕рд┐рдХреНрд░реЗрдЯ:

    OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ

    рд╣рд╛ рдкрд╛рд╕рд╡рд░реНрдб рдлрдХреНрдд рдорд╛рд╣реАрдд рдЖрд╣реЗ рдХреНрд▓рд╛рдпрдВрдЯ'рдпреВ рдЖрдгрд┐ рдЕрдзрд┐рдХреГрддрддрд╛ рд╕рд░реНрд╡реНрд╣рд░рдпреЗрдереЗ рд╣реЗ рддреНрдпрд╛рдВрдирд╛ рдЦрд╛рдЬрдЧреАрд░рд┐рддреНрдпрд╛ рдорд╛рд╣рд┐рддреА рд╕рд╛рдорд╛рдпрд┐рдХ рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ.

  • рдЕрдзрд┐рдХреГрддрддрд╛ рдХреЛрдб:

    OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ

    рд╡реИрдзрддреЗрдЪреНрдпрд╛ рдЕрд▓реНрдк рдХрд╛рд▓рд╛рд╡рдзреАрд╕рд╣ рддрд╛рддреНрдкреБрд░рддрд╛ рдХреЛрдб, рдЬреЛ рдХреНрд▓рд╛рдпрдВрдЯ рдкреБрд░рд╡рддреЗ рдЕрдзрд┐рдХреГрддрддрд╛ рд╕рд░реНрд╡реНрд╣рд░рдЪреНрдпрд╛ рдмрджрд▓реНрдпрд╛рдд y рдкреНрд░рд╡реЗрд╢ рдЯреЛрдХрди.

  • рдкреНрд░рд╡реЗрд╢ рдЯреЛрдХрди:

    OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ

    рдХреНрд▓рд╛рдпрдВрдЯ рдЬреНрдпрд╛рдЪреНрдпрд╛рд╢реА рд╕рдВрд╡рд╛рдж рд╕рд╛рдзрдгреНрдпрд╛рд╕рд╛рдареА рд╡рд╛рдкрд░реЗрд▓ рддреА рдХреА рд╕рдВрд╕рд╛рдзрди рд╕рд░реНрд╡реНрд╣рд░'рдУрдо. рдПрдХ рдкреНрд░рдХрд╛рд░рдЪреЗ рдмреЕрдЬ рдХрд┐рдВрд╡рд╛ рдХреА рдХрд╛рд░реНрдб рдЬреЗ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рдХреНрд▓рд╛рдпрдВрдЯрдбреЗрдЯрд╛рдЪреА рд╡рд┐рдирдВрддреА рдХрд░рдгреНрдпрд╛рдЪреА рдХрд┐рдВрд╡рд╛ рддреНрдпрд╛рд╡рд░ рдХреНрд░рд┐рдпрд╛ рдХрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рдЖрд╣реЗ рд╕рдВрд╕рд╛рдзрди рд╕рд░реНрд╡реНрд╣рд░рддреБрдордЪреНрдпрд╛ рд╡рддреАрдиреЗ.

рд╢реЗрд░рд╛: рдХрдзреАрдХрдзреА рдСрдереЛрд░рд╛рдпрдЭреЗрд╢рди рд╕рд░реНрд╡реНрд╣рд░ рдЖрдгрд┐ рд░рд┐рд╕реЛрд░реНрд╕ рд╕рд░реНрд╡реНрд╣рд░ рдПрдХрдЪ рд╕рд░реНрд╡реНрд╣рд░ рдЕрд╕рддрд╛рдд. рддрдерд╛рдкрд┐, рдХрд╛рд╣реА рдкреНрд░рдХрд░рдгрд╛рдВрдордзреНрдпреЗ, рд╣реЗ рднрд┐рдиреНрди рд╕рд░реНрд╡реНрд╣рд░ рдЕрд╕реВ рд╢рдХрддрд╛рдд, рдЬрд░реА рддреЗ рдПрдХрд╛рдЪ рд╕рдВрд╕реНрдереЗрд╢реА рд╕рдВрдмрдВрдзрд┐рдд рдирд╕рд▓реЗ рддрд░реАрд╣реА. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдСрдереЛрд░рд╛рдпрдЭреЗрд╢рди рд╕рд░реНрд╡реНрд╣рд░ рд╣реА рд░рд┐рд╕реЛрд░реНрд╕ рд╕рд░реНрд╡реНрд╣рд░рджреНрд╡рд╛рд░реЗ рд╡рд┐рд╢реНрд╡рд╛рд╕рд╛рд░реНрд╣ рдЕрд╕рд▓реЗрд▓реА рддреГрддреАрдп рдкрдХреНрд╖ рд╕реЗрд╡рд╛ рдЕрд╕реВ рд╢рдХрддреЗ.

рдЖрддрд╛ рдЖрдореНрд╣реА OAuth 2.0 рдЪреНрдпрд╛ рдореВрд│ рд╕рдВрдХрд▓реНрдкрдирд╛ рдХрд╡реНрд╣рд░ рдХреЗрд▓реНрдпрд╛ рдЖрд╣реЗрдд, рдЪрд▓рд╛ рдЖрдордЪреНрдпрд╛ рдЙрджрд╛рд╣рд░рдгрд╛рдХрдбреЗ рдкрд░рдд рдЬрд╛рдК рдЖрдгрд┐ OAuth рдкреНрд░рд╡рд╛рд╣рд╛рдд рдХрд╛рдп рд╣реЛрддреЗ рддреЗ рдЬрд╡рд│реВрди рдкрд╛рд╣реВ.

OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ

  1. рддреВ, рд╕рдВрд╕рд╛рдзрди рдорд╛рд▓рдХ, рддреБрдореНрд╣рд╛рд▓рд╛ рдЯреЗрд░рд┐рдмрд▓ рдкрди рдСрдл рдж рдбреЗ рд╕реЗрд╡рд╛ рдкреНрд░рджрд╛рди рдХрд░рд╛рдпрдЪреА рдЖрд╣реЗ (рдХреНрд▓рд╛рдпрдВрдЯy) рддреБрдордЪреНрдпрд╛ рд╕рдВрдкрд░реНрдХрд╛рдВрдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХрд░рд╛ рдЬреЗрдгреЗрдХрд░реВрди рддреЗ рддреБрдордЪреНрдпрд╛ рд╕рд░реНрд╡ рдорд┐рддреНрд░рд╛рдВрдирд╛ рдЖрдордВрддреНрд░рдгреЗ рдкрд╛рдард╡реВ рд╢рдХрддреАрд▓.
  2. рдХреНрд▓рд╛рдпрдВрдЯ рдмреНрд░рд╛рдЙрдЭрд░рд▓рд╛ рдкреГрд╖реНрдард╛рд╡рд░ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рддреЗ рдЕрдзрд┐рдХреГрддрддрд╛ рд╕рд░реНрд╡реНрд╣рд░'a рдЖрдгрд┐ рдХреНрд╡реЗрд░реАрдордзреНрдпреЗ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░рд╛ рдХреНрд▓рд╛рдпрдВрдЯ рдЖрдпрдбреА, URI рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рд╛, рдкреНрд░рддрд┐рд╕рд╛рдж рдкреНрд░рдХрд╛рд░ рдЖрдгрд┐ рдПрдХ рдХрд┐рдВрд╡рд╛ рдЕрдзрд┐рдХ рд╕реНрдХреЛрдк (рдкрд░рд╡рд╛рдирдЧреНрдпрд╛) рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗрдд.
  3. рдЕрдзрд┐рдХреГрддрддрд╛ рд╕рд░реНрд╡реНрд╣рд░ рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реНрдпрд╛рд╕ рд╡рд╛рдкрд░рдХрд░реНрддрд╛рдирд╛рд╡ рдЖрдгрд┐ рдкрд╛рд╕рд╡рд░реНрдб рд╡рд┐рдЪрд╛рд░реВрди, рддреБрдордЪреА рдкрдбрддрд╛рд│рдгреА рдХрд░рддреЗ.
  4. рдЕрдзрд┐рдХреГрддрддрд╛ рд╕рд░реНрд╡реНрд╣рд░ рдПрдХ рдлреЙрд░реНрдо рджрд╛рдЦрд╡рддреЛ рд╕рдВрдорддреА (рдкреБрд╖реНрдЯреАрдХрд░рдг) рд╕рд░реНрд╡рд╛рдВрдЪреНрдпрд╛ рдпрд╛рджреАрд╕рд╣ рд╕реНрдХреЛрдкрд╡рд┐рдирдВрддреА рдХреЗрд▓реА рдХреНрд▓рд╛рдпрдВрдЯ'рдУрдо. рддреБрдореНрд╣реА рд╕рд╣рдордд рдЖрд╣рд╛рдд рдХрд┐рдВрд╡рд╛ рдирдХрд╛рд░ рджреНрдпрд╛.
  5. рдЕрдзрд┐рдХреГрддрддрд╛ рд╕рд░реНрд╡реНрд╣рд░ рддреБрдореНрд╣рд╛рд▓рд╛ рд╕рд╛рдЗрдЯрд╡рд░ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рддреЗ рдХреНрд▓рд╛рдпрдВрдЯ'a, рд╡рд╛рдкрд░реВрди URI рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рд╛ рдПрдХрддреНрд░ рдЕрдзрд┐рдХреГрддрддрд╛ рдХреЛрдб (рдЕрдзрд┐рдХреГрддреАрдХрд░рдг рдХреЛрдб).
  6. рдХреНрд▓рд╛рдпрдВрдЯ рд╢реА рдереЗрдЯ рд╕рдВрд╡рд╛рдж рд╕рд╛рдзрддреЛ рдЕрдзрд┐рдХреГрддрддрд╛ рд╕рд░реНрд╡реНрд╣рд░'рдУрдо (рдмреНрд░рд╛рдЙрдЭрд░рд▓рд╛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░реВрди рд╕рдВрд╕рд╛рдзрди рдорд╛рд▓рдХ'a) рдЖрдгрд┐ рд╕реБрд░рдХреНрд╖рд┐рддрдкрдгреЗ рдкрд╛рдард╡рддреЗ рдХреНрд▓рд╛рдпрдВрдЯ рдЖрдпрдбреА, рдХреНрд▓рд╛рдпрдВрдЯ рд╕рд┐рдХреНрд░реЗрдЯ ╨╕ рдЕрдзрд┐рдХреГрддрддрд╛ рдХреЛрдб.
  7. рдЕрдзрд┐рдХреГрддрддрд╛ рд╕рд░реНрд╡реНрд╣рд░ рдбреЗрдЯрд╛ рддрдкрд╛рд╕рддреЛ рдЖрдгрд┐ рдкреНрд░рддрд┐рд╕рд╛рдж рджреЗрддреЛ рдкреНрд░рд╡реЗрд╢ рдЯреЛрдХрдирдУрдо (рдкреНрд░рд╡реЗрд╢ рдЯреЛрдХрди).
  8. рдЖрддрд╛ рдХреНрд▓рд╛рдпрдВрдЯ рд╡рд╛рдкрд░реВ рд╢рдХрддрд╛ рдкреНрд░рд╡реЗрд╢ рдЯреЛрдХрди рд▓рд╛ рд╡рд┐рдирдВрддреА рдкрд╛рдард╡рдгреНрдпрд╛рд╕рд╛рдареА рд╕рдВрд╕рд╛рдзрди рд╕рд░реНрд╡реНрд╣рд░ рд╕рдВрдкрд░реНрдХрд╛рдВрдЪреА рдпрд╛рджреА рдорд┐рд│рд╡рдгреНрдпрд╛рд╕рд╛рдареА.

рдХреНрд▓рд╛рдпрдВрдЯ рдЖрдпрдбреА рдЖрдгрд┐ рдЧреБрдкреНрдд

рддреБрдореНрд╣реА рдЯреЗрд░рд┐рдмрд▓ рдкрди рдСрдл рдж рдбреЗ рддреБрдордЪреНрдпрд╛ рд╕рдВрдкрд░реНрдХрд╛рдВрдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрдгреНрдпрд╛рдЖрдзреА, рдХреНрд▓рд╛рдпрдВрдЯ рдЖрдгрд┐ рдСрдереЛрд░рд╛рдпрдЭреЗрд╢рди рд╕рд░реНрд╡реНрд╣рд░рдиреЗ рдХрд╛рд░реНрдпрд░рдд рд╕рдВрдмрдВрдз рдкреНрд░рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реЗ рд╣реЛрддреЗ. рдСрдереЛрд░рд╛рдпрдЭреЗрд╢рди рд╕рд░реНрд╡реНрд╣рд░рдиреЗ рдХреНрд▓рд╛рдпрдВрдЯ рдЖрдпрдбреА рдЖрдгрд┐ рдХреНрд▓рд╛рдпрдВрдЯ рд╕реАрдХреНрд░реЗрдЯ рд╡реНрдпреБрддреНрдкрдиреНрди рдХреЗрд▓реЗ (рдХрдзреАрдХрдзреА рдореНрд╣рдгрддрд╛рдд рдЕтАНреЕрдк рдЖрдпрдбреА ╨╕ рдЕреЕрдк рдЧреБрдкреНрдд) рдЖрдгрд┐ рддреНрдпрд╛рдВрдирд╛ OAuth рдордзреНрдпреЗ рдкреБрдвреАрд▓ рдкрд░рд╕реНрдкрд░рд╕рдВрд╡рд╛рджрд╛рд╕рд╛рдареА рдХреНрд▓рд╛рдпрдВрдЯрдХрдбреЗ рдкрд╛рдард╡рд▓реЗ.

OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ
"- рдирдорд╕реНрдХрд╛рд░! рдорд▓рд╛ рддреБрдордЪреНрдпрд╛рд╕реЛрдмрдд рдХрд╛рдо рдХрд░рд╛рдпрд▓рд╛ рдЖрд╡рдбреЗрд▓! - рдирдХреНрдХреАрдЪ, рд╕рдорд╕реНрдпрд╛ рдирд╛рд╣реА! рддреБрдордЪрд╛ рдХреНрд▓рд╛рдпрдВрдЯ рдЖрдпрдбреА рдЖрдгрд┐ рдЧреБрдкрд┐рдд рд╣реЗ рдЖрд╣реЗрдд!тАЭ

рдирд╛рд╡ рд╕реВрдЪрд┐рдд рдХрд░рддреЗ рдХреА рдХреНрд▓рд╛рдпрдВрдЯрдЪреЗ рд░рд╣рд╕реНрдп рдЧреБрдкреНрдд рдареЗрд╡рд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ рдЬреЗрдгреЗрдХрд░реВрди рдХреЗрд╡рд│ рдХреНрд▓рд╛рдпрдВрдЯ рдЖрдгрд┐ рдЕрдзрд┐рдХреГрддрддрд╛ рд╕рд░реНрд╡реНрд╣рд░рд▓рд╛ рддреЗ рдХрд│реЗрд▓. рддрдерд╛рдкрд┐, рддреНрдпрд╛рдЪреНрдпрд╛ рдорджрддреАрдиреЗ рдЕрдзрд┐рдХреГрддрддрд╛ рд╕рд░реНрд╡реНрд╣рд░ рдХреНрд▓рд╛рдпрдВрдЯрдЪреНрдпрд╛ рд╕рддреНрдпрд╛рдЪреА рдкреБрд╖реНрдЯреА рдХрд░рддреЛ.

рдкрдг рдПрд╡рдвреЗрдЪ рдирд╛рд╣реА... рдХреГрдкрдпрд╛ OpenID Connect рдЪреЗ рд╕реНрд╡рд╛рдЧрдд рдХрд░рд╛!

OAuth 2.0 рдлрдХреНрдд рдпрд╛рд╕рд╛рдареА рдбрд┐рдЭрд╛рдЗрди рдХреЗрд▓реЗ рдЖрд╣реЗ рдЕрдзрд┐рдХреГрддрддрд╛ - рдПрдХрд╛ рдНрдкреНрд▓рд┐рдХреЗрд╢рдирдордзреВрди рджреБрд╕рд░реНтАНрдпрд╛ рдНрдкреНрд▓рд┐рдХреЗрд╢рдирдордзреНрдпреЗ рдбреЗрдЯрд╛ рдЖрдгрд┐ рдлрдВрдХреНрд╢рдиреНрд╕рдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдкреНрд░рджрд╛рди рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА. рдУрдкрдирдЖрдпрдбреА рдХрдиреЗрдХреНрдЯ (OIDC) OAuth 2.0 рдЪреНрдпрд╛ рд╡рд░ рдПрдХ рдкрд╛рддрд│ рдерд░ рдЖрд╣реЗ рдЬреЛ рдЦрд╛рддреНрдпрд╛рдд рд╕рд╛рдЗрди рдЗрди рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдЪреЗ рд▓реЙрдЧрд┐рди рдЖрдгрд┐ рдкреНрд░реЛрдлрд╛рдЗрд▓ рддрдкрд╢реАрд▓ рдЬреЛрдбрддреЛ. рд▓реЙрдЧрд┐рди рд╕рддреНрд░рд╛рдЪреА рд╕рдВрд╕реНрдерд╛ рд╕рд╣рд╕рд╛ рдореНрд╣рдгреВрди рдУрд│рдЦрд▓реА рдЬрд╛рддреЗ рдкреНрд░рдорд╛рдгреАрдХрд░рдг [рдкреНрд░рдорд╛рдгреАрдХрд░рдг], рдЖрдгрд┐ рд╕рд┐рд╕реНрдЯрдордордзреНрдпреЗ рд▓реЙрдЧ рдЗрди рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдЪреА рдорд╛рд╣рд┐рддреА (рдореНрд╣рдгрдЬреЗ рд╕реБрдорд╛рд░реЗ рд╕рдВрд╕рд╛рдзрди рдорд╛рд▓рдХ'рдИ), - рд╡реИрдпрдХреНрддрд┐рдХ рдорд╛рд╣рд┐рддреА [рдУрд│рдЦ]. рдЬрд░ рдСрдереЛрд░рд╛рдпрдЭреЗрд╢рди рд╕рд░реНрд╡реНрд╣рд░ OIDC рд▓рд╛ рд╕рдкреЛрд░реНрдЯ рдХрд░рдд рдЕрд╕реЗрд▓, рддрд░ рддреНрдпрд╛рд▓рд╛ рдХрдзреА рдХрдзреА рдЕрд╕реЗ рдореНрд╣рдЯрд▓реЗ рдЬрд╛рддреЗ рд╡реИрдпрдХреНрддрд┐рдХ рдбреЗрдЯрд╛ рдкреНрд░рджрд╛рддрд╛ [рдУрд│рдЦ рдкреНрд░рджрд╛рддрд╛]рдХрд╛рд░рдг рддреЗ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рдХреНрд▓рд╛рдпрдВрдЯрдмрджреНрджрд▓ рдорд╛рд╣рд┐рддреА рдЖрд╣реЗ рд╕рдВрд╕рд╛рдзрди рдорд╛рд▓рдХ'рдЗ.

OpenID Connect рддреБрдореНрд╣рд╛рд▓рд╛ рдЕрд╢рд╛ рдкрд░рд┐рд╕реНрдерд┐рддреАрдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ рдЬрд┐рдереЗ рдПрдХрд▓ рд▓реЙрдЧрд┐рди рдПрдХрд╛рдзрд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╛рдВрдордзреНрдпреЗ рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ - рд╣рд╛ рджреГрд╖реНрдЯрд┐рдХреЛрди рдореНрд╣рдгреВрди рджреЗрдЦреАрд▓ рдУрд│рдЦрд▓рд╛ рдЬрд╛рддреЛ рдПрдХрд▓ рд╕рд╛рдЗрди-рдСрди (рдПрд╕рдПрд╕рдУ). рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдПрдЦрд╛рджрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧ Facebook рдХрд┐рдВрд╡рд╛ Twitter рд╕рд╛рд░рдЦреНрдпрд╛ рд╕рд╛рдорд╛рдЬрд┐рдХ рдиреЗрдЯрд╡рд░реНрдХрд╕рд╣ SSO рдПрдХрддреНрд░реАрдХрд░рдгрд╛рд╕ рд╕рдорд░реНрдерди рджреЗрдК рд╢рдХрддреЛ, рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрдирд╛ рддреНрдпрд╛рдВрдЪреНрдпрд╛рдХрдбреЗ рдЖрдзреАрдкрд╛рд╕реВрдирдЪ рдЕрд╕рд▓реЗрд▓реЗ рдЦрд╛рддреЗ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЛ рдЖрдгрд┐ рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕ рдкреНрд░рд╛рдзрд╛рдиреНрдп рджреЗрддреЛ.

OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ

рдкреНрд░рд╡рд╛рд╣ (рдкреНрд░рд╡рд╛рд╣) OpenID Connect OAuth рдЪреНрдпрд╛ рдмрд╛рдмрддреАрдд рд╕рд╛рд░рдЦрд╛рдЪ рджрд┐рд╕рддреЛ. рдлрд░рдХ рдПрд╡рдврд╛рдЪ рдЖрд╣реЗ рдХреА рдкреНрд░рд╛рдердорд┐рдХ рд╡рд┐рдирдВрддреАрдордзреНрдпреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡реНрдпрд╛рдкреНрддреА рд╡рд╛рдкрд░рд▓реА рдЬрд╛рддреЗ openid, - рдП рдХреНрд▓рд╛рдпрдВрдЯ рд╢реЗрд╡рдЯреА рд╕рд╛рд░рдЦреЗ рдорд┐рд│рддреЗ рдкреНрд░рд╡реЗрд╢ рдЯреЛрдХрди, рдЖрдгрд┐ рдЖрдпрдбреА рдЯреЛрдХрди.

OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ

OAuth рдкреНрд░рд╡рд╛рд╣рд╛рдкреНрд░рдорд╛рдгреЗрдЪ, рдкреНрд░рд╡реЗрд╢ рдЯреЛрдХрди OpenID Connect рдордзреНрдпреЗ, рд╣реЗ рдХрд╛рд╣реА рдореВрд▓реНрдп рдЖрд╣реЗ рдЬреЗ рд╕реНрдкрд╖реНрдЯ рдирд╛рд╣реА рдХреНрд▓рд╛рдпрдВрдЯрдпреЗрдереЗ рджреГрд╖реНрдЯрд┐рдХреЛрдирд╛рддреВрди рдХреНрд▓рд╛рдпрдВрдЯ'рдЕ рдкреНрд░рд╡реЗрд╢ рдЯреЛрдХрди рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рдирдВрддреАрд╕рд╣ рдкрд╛рд╕ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╡рд░реНрдгрд╛рдВрдЪреНрдпрд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧрдЪреЗ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреЗ рд╕рдВрд╕рд╛рдзрди рд╕рд░реНрд╡реНрд╣рд░'y, рдЬреЗ рдЯреЛрдХрди рд╡реИрдз рдЖрд╣реЗ рдХреА рдирд╛рд╣реА рд╣реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЗ. рдЖрдпрдбреА рдЯреЛрдХрди рдкреВрд░реНрдгрдкрдгреЗ рд╡реЗрдЧрд│реНрдпрд╛ рдЧреЛрд╖реНрдЯреАрдЪреЗ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреЗ.

рдЖрдпрдбреА рдЯреЛрдХрди рдПрдХ JWT рдЖрд╣реЗ

рдЖрдпрдбреА рдЯреЛрдХрди JSON рд╡реЗрдм рдЯреЛрдХрди рдХрд┐рдВрд╡рд╛ JWT рдореНрд╣рдгреВрди рдУрд│рдЦрд▓реНрдпрд╛ рдЬрд╛рдгрд╛рд░реНтАНрдпрд╛ рд╡рд░реНрдгрд╛рдВрдЪреА рдПрдХ рдЦрд╛рд╕ рд╕реНрд╡рд░реВрдкрд┐рдд рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЖрд╣реЗ (рдХрдзреАрдХрдзреА JWT рдЯреЛрдХрдиреНрд╕ "jots" рд╕рд╛рд░рдЦреЗ рдЙрдЪреНрдЪрд╛рд░рд▓реЗ рдЬрд╛рддрд╛рдд). рдмрд╛рд╣реЗрд░реАрд▓ рдирд┐рд░реАрдХреНрд╖рдХрд╛рдВрдирд╛, JWT рдХрджрд╛рдЪрд┐рдд рд╕рдордЬрдгреНрдпрд╛рдЬреЛрдЧреЗ рдореВрд░реНрдЦрдкрдгрд╛рд╕рд╛рд░рдЦреЗ рд╡рд╛рдЯреЗрд▓, рдкрд░рдВрддреБ рдХреНрд▓рд╛рдпрдВрдЯ JWT рдордзреВрди рд╡рд┐рд╡рд┐рдз рдорд╛рд╣рд┐рддреА рдХрд╛рдвреВ рд╢рдХрддреЗ, рдЬрд╕реЗ рдХреА рдЖрдпрдбреА, рд╡рд╛рдкрд░рдХрд░реНрддрд╛рдирд╛рд╡, рд▓реЙрдЧрд┐рди рд╡реЗрд│, рдХрд╛рд▓рдмрд╛рд╣реНрдпрддрд╛ рддрд╛рд░реАрдЦ рдЖрдпрдбреА рдЯреЛрдХрди'a, JWT рдордзреНрдпреЗ рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдкреНрд░рдпрддреНрдирд╛рдВрдЪреА рдЙрдкрд╕реНрдерд┐рддреА. рдЖрдд рдбреЗрдЯрд╛ рдЖрдпрдбреА рдЯреЛрдХрди'a рдореНрд╣рдгрддрд╛рдд рдЕрдиреБрдкреНрд░рдпреЛрдЧ [рджрд╛рд╡реЗ].

OAuth рдЖрдгрд┐ OpenID Connect рд╕рд╛рдареА рд╕рдЪрд┐рддреНрд░ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ

OIDC рдЪреНрдпрд╛ рдмрд╛рдмрддреАрдд, рдПрдХ рдорд╛рдирдХ рдорд╛рд░реНрдЧ рджреЗрдЦреАрд▓ рдЖрд╣реЗ рдЬреНрдпрд╛рджреНрд╡рд╛рд░реЗ рдХреНрд▓рд╛рдпрдВрдЯ рд╡реНрдпрдХреНрддреАрдмрджреНрджрд▓ рдЕрддрд┐рд░рд┐рдХреНрдд рдорд╛рд╣рд┐рддреАрдЪреА рд╡рд┐рдирдВрддреА рдХрд░реВ рд╢рдХрддреЗ [рдУрд│рдЦ] рдкрд╛рд╕реВрди рдЕрдзрд┐рдХреГрддрддрд╛ рд╕рд░реНрд╡реНрд╣рд░'a, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рд╡рд╛рдкрд░реВрди рдИрдореЗрд▓ рдкрддреНрддрд╛ рдкреНрд░рд╡реЗрд╢ рдЯреЛрдХрди.

OAuth рдЖрдгрд┐ OIDC рдмрджреНрджрд▓ рдЕрдзрд┐рдХ рдЬрд╛рдгреВрди рдШреНрдпрд╛

рдореНрд╣рдгреВрди, рдЖрдореНрд╣реА OAuth рдЖрдгрд┐ OIDC рдХрд╕реЗ рдХрд╛рд░реНрдп рдХрд░рддрд╛рдд рдпрд╛рдЪреЗ рдереЛрдбрдХреНрдпрд╛рдд рдкреБрдирд░рд╛рд╡рд▓реЛрдХрди рдХреЗрд▓реЗ. рд╕рдЦреЛрд▓ рдЦреЛрджрдгреНрдпрд╛рд╕ рддрдпрд╛рд░ рдЖрд╣рд╛рдд? OAuth 2.0 рдЖрдгрд┐ OpenID Connect рдмрджреНрджрд▓ рдЕрдзрд┐рдХ рдЬрд╛рдгреВрди рдШреЗрдгреНрдпрд╛рд╕рд╛рдареА рддреБрдореНрд╣рд╛рд▓рд╛ рдорджрдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдпреЗрдереЗ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдВрд╕рд╛рдзрдиреЗ рдЖрд╣реЗрдд:

рдиреЗрд╣рдореАрдкреНрд░рдорд╛рдгреЗ, рдореЛрдХрд│реНрдпрд╛ рдордирд╛рдиреЗ рдЯрд┐рдкреНрдкрдгреА рджреНрдпрд╛. рдЖрдордЪреНрдпрд╛ рдирд╡реАрдирддрдо рдмрд╛рддрдореНрдпрд╛рдВрд╕рд╣ рдЕрджреНрдпрдпрд╛рд╡рдд рд░рд╛рд╣рдгреНрдпрд╛рд╕рд╛рдареА, рдпрд╛рдЪреА рд╕рджрд╕реНрдпрддрд╛ рдШреНрдпрд╛ Twitter ╨╕ YouTube рд╡рд░ рд╡рд┐рдХрд╕рдХрд╛рдВрд╕рд╛рдареА рдУрдХреНрдЯрд╛!

рдЕрдиреБрд╡рд╛рджрдХрд╛рдХрдбреВрди рдкреБрдирд╢реНрдЪ

рдЖрдордЪреНрдпрд╛ рдмреНрд▓реЙрдЧрд╡рд░ рджреЗрдЦреАрд▓ рд╡рд╛рдЪрд╛:

рд╕реНрддреНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛