рдорд╛рдЗрдХреНрд░реЛрд╕рд░реНрд╡рд┐рд╕ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдкрд░ рдПрд╕рдПрд╕рдУред рд╣рдо рдХреАрдХреНрд▓реЛрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рднрд╛рдЧ ---- рдкрд╣рд▓рд╛

рдХрд┐рд╕реА рднреА рдмрдбрд╝реА рдХрдВрдкрдиреА рдореЗрдВ, рдФрд░ X5 рд░рд┐рдЯреЗрд▓ рдЧреНрд░реБрдк рдХреЛрдИ рдЕрдкрд╡рд╛рдж рдирд╣реАрдВ рд╣реИ, рдЬреИрд╕реЗ-рдЬреИрд╕реЗ рдпрд╣ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрддрд╛ рд╣реИ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╡рд╛рд▓реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдмрдврд╝ рдЬрд╛рддреА рд╣реИред рд╕рдордп рдХреЗ рд╕рд╛рде, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ рджреВрд╕рд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдирд┐рд░реНрдмрд╛рдз рд╕рдВрдХреНрд░рдордг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдФрд░ рдлрд┐рд░ рдПрдХрд▓ рд╕рд┐рдВрдЧрд▓-рд╕рд┐рдВрдЧ-рдСрди (рдПрд╕рдПрд╕рдУ) рд╕рд░реНрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд▓реЗрдХрд┐рди рддрдм рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдЬрдм рдкрд╣рдЪрд╛рди рдкреНрд░рджрд╛рддрд╛ рдЬреИрд╕реЗ AD рдпрд╛ рдЕрдиреНрдп рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ рдирд╣реАрдВ рд╣реИрдВ, рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╡рд┐рднрд┐рдиреНрди рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред "рдкрд╣рдЪрд╛рди рджрд▓рд╛рд▓" рдирд╛рдордХ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХрд╛ рдПрдХ рд╡рд░реНрдЧ рдмрдЪрд╛рд╡ рдореЗрдВ рдЖрдПрдЧрд╛ред рд╕рдмрд╕реЗ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдЗрд╕рдХреЗ рдкреНрд░рддрд┐рдирд┐рдзрд┐ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ рдХреАрдХреНрд▓реЛрдХ, рдЧреНрд░реЗрд╡рд┐рдЯреА рдПрдХреНрд╕реЗрд╕ рдкреНрд░рдмрдВрдзрди, рдЖрджрд┐ред рдЕрдХреНрд╕рд░, рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ: рдорд╢реАрди рдЗрдВрдЯрд░реИрдХреНрд╢рди, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рднрд╛рдЧреАрджрд╛рд░реА, рдЖрджрд┐ред рд╕рдорд╛рдзрд╛рди рдХреЛ рд▓рдЪреАрд▓реА рдФрд░ рд╕реНрдХреЗрд▓реЗрдмрд▓ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рд╕рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рдПрдХ рдореЗрдВ рдЬреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдРрд╕реЗ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реА рдХрдВрдкрдиреА рдХреЗ рдкрд╛рд╕ рдЕрдм рдПрдХ рдЗрдВрдбрд┐рдХреЗрд╢рди рдмреНрд░реЛрдХрд░ рд╣реИ - рдХреАрдХреНрд▓реЛрдХред

рдорд╛рдЗрдХреНрд░реЛрд╕рд░реНрд╡рд┐рд╕ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдкрд░ рдПрд╕рдПрд╕рдУред рд╣рдо рдХреАрдХреНрд▓реЛрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рднрд╛рдЧ ---- рдкрд╣рд▓рд╛

рдХреАрдХреНрд▓реЛрдХ рд░реЗрдбрд╣реИрдЯ рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрд░рдХреНрд╖рд┐рдд рдПрдХ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рдкрд╣рдЪрд╛рди рдФрд░ рдПрдХреНрд╕реЗрд╕ рдирд┐рдпрдВрддреНрд░рдг рдЙрддреНрдкрд╛рдж рд╣реИред рдпрд╣ рдПрд╕рдПрд╕рдУ - рдЖрд░рдПрдЪ-рдПрд╕рдПрд╕рдУ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрдВрдкрдиреА рдХреЗ рдЙрддреНрдкрд╛рджреЛрдВ рдХрд╛ рдЖрдзрд╛рд░ рд╣реИред

рдмреБрдирд┐рдпрд╛рджреА рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ

рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдЖрдк рд╕рдорд╛рдзрд╛рди рдФрд░ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдирд┐рдкрдЯрдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВ, рдЖрдкрдХреЛ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд╕рдВрджрд░реНрдн рдФрд░ рдЕрдиреБрдХреНрд░рдо рдореЗрдВ рдирд┐рд░реНрдгрдп рд▓реЗрдирд╛ рдЪрд╛рд╣рд┐рдП:

рдорд╛рдЗрдХреНрд░реЛрд╕рд░реНрд╡рд┐рд╕ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдкрд░ рдПрд╕рдПрд╕рдУред рд╣рдо рдХреАрдХреНрд▓реЛрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рднрд╛рдЧ ---- рдкрд╣рд▓рд╛

рдкрд╣рдЪрд╛рди рдХрд┐рд╕реА рд╡рд┐рд╖рдп рдХреЛ рдЙрд╕рдХреЗ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдкрд╣рдЪрд╛рдирдиреЗ рдХреА рдПрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИ (рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдпрд╣ рдирд╛рдо, рд▓реЙрдЧрд┐рди рдпрд╛ рдирдВрдмрд░ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рд╣реИ)ред

рдкреНрд░рдорд╛рдгреАрдХрд░рдг - рдпрд╣ рдПрдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИ (рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдкрд╛рд╕рд╡рд░реНрдб рд╕реЗ рдЬрд╛рдВрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдкрддреНрд░ рдХреЛ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрдирд┐рдХ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рд╕реЗ рдЬрд╛рдВрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЖрджрд┐)

рдкреНрд░рд╛рдзрд┐рдХрд░рдг - рдпрд╣ рдХрд┐рд╕реА рд╕рдВрд╕рд╛рдзрди рддрдХ рдкрд╣реБрдВрдЪ рдХрд╛ рдкреНрд░рд╛рд╡рдзрд╛рди рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдИ-рдореЗрд▓ рддрдХ)ред

рдкрд╣рдЪрд╛рди рдмреНрд░реЛрдХрд░ рдХреАрдХреНрд▓реЛрдХ

рдЪрд╛рдмреА рдХрд╛ рдХрдкрдбрд╝рд╛ рдПрдХ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рдкрд╣рдЪрд╛рди рдФрд░ рдПрдХреНрд╕реЗрд╕ рдкреНрд░рдмрдВрдзрди рд╕рдорд╛рдзрд╛рди рд╣реИ рдЬрд┐рд╕реЗ рдЖрдИрдПрд╕ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдорд╛рдЗрдХреНрд░реЛрд╕рд░реНрд╡рд┐рд╕ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдкреИрдЯрд░реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдХреАрдХреНрд▓реЛрдХ рд╕рд┐рдВрдЧрд▓ рд╕рд╛рдЗрди-рдСрди (рдПрд╕рдПрд╕рдУ), рдмреНрд░реЛрдХрд░реНрдб рдЖрдЗрдбреЗрдВрдЯрд┐рдЯреА рдФрд░ рд╕реЛрд╢рд▓ рд▓реЙрдЧрд┐рди, рдпреВрдЬрд░ рдлреЗрдбрд░реЗрд╢рди, рдХреНрд▓рд╛рдЗрдВрдЯ рдПрдбреЗрдкреНрдЯрд░, рдПрдбрдорд┐рди рдХрдВрд╕реЛрд▓ рдФрд░ рдЕрдХрд╛рдЙрдВрдЯ рдореИрдиреЗрдЬрдореЗрдВрдЯ рдХрдВрд╕реЛрд▓ рдЬреИрд╕реА рд╕реБрд╡рд┐рдзрд╛рдПрдВ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред

Keycloak рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдмреБрдирд┐рдпрд╛рджреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛:

  • рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд┐рдВрдЧрд▓-рд╕рд╛рдЗрди рдСрди рдФрд░ рд╕рд┐рдВрдЧрд▓-рд╕рд╛рдЗрди рдЖрдЙрдЯред
  • OpenID/OAuth 2.0/SAML рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдердиред
  • рдкрд╣рдЪрд╛рди рджрд▓рд╛рд▓реА - рдмрд╛рд╣рд░реА рдУрдкрдирдЖрдИрдбреА рдХрдиреЗрдХреНрдЯ рдпрд╛ рдПрд╕рдПрдПрдордПрд▓ рдкрд╣рдЪрд╛рди рдкреНрд░рджрд╛рддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рдорд╛рдгреАрдХрд░рдгред
  • рд╕рд╛рдорд╛рдЬрд┐рдХ рд▓реЙрдЧрд┐рди - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкрд╣рдЪрд╛рди рдХреЗ рд▓рд┐рдП Google, GitHub, Facebook, Twitter рд╕рдорд░реНрдердиред
  • рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдлрд╝реЗрдбрд░реЗрд╢рди - рдПрд▓рдбреАрдПрдкреА рдФрд░ рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕рд░реНрд╡рд░ рдФрд░ рдЕрдиреНрдп рдкрд╣рдЪрд╛рди рдкреНрд░рджрд╛рддрд╛рдУрдВ рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХрд╛ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рдиред
  • рдХреЗрд░реНрдмрд░реЛрд╕ рдмреНрд░рд┐рдЬ - рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдХреЗрд░реНрдмрд░реЛрд╕ рд╕рд░реНрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ред
  • рдПрдбрдорд┐рди рдХрдВрд╕реЛрд▓ - рд╡реЗрдм рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдФрд░ рд╕рдорд╛рдзрд╛рди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рдПрдХреАрдХреГрдд рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдПред
  • рдЦрд╛рддрд╛ рдкреНрд░рдмрдВрдзрди рдХрдВрд╕реЛрд▓ - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕реНрд╡-рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдПред
  • рдХрдВрдкрдиреА рдХреА рдХреЙрд░реНрдкреЛрд░реЗрдЯ рдкрд╣рдЪрд╛рди рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЕрдиреБрдХреВрд▓рдиред
  • 2FA рдкреНрд░рдорд╛рдгреАрдХрд░рдг - Google рдкреНрд░рдорд╛рдгрдХ рдпрд╛ FreeOTP рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ TOTP/HOTP рд╕рдорд░реНрдердиред
  • рд▓реЙрдЧрд┐рди рдкреНрд░рд╡рд╛рд╣ - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реНрд╡-рдкрдВрдЬреАрдХрд░рдг, рдкрд╛рд╕рд╡рд░реНрдб рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐ рдФрд░ рд░реАрд╕реЗрдЯ, рдФрд░ рдЕрдиреНрдп рд╕рдВрднрд╡ рд╣реИрдВред
  • рд╕рддреНрд░ рдкреНрд░рдмрдВрдзрди - рдкреНрд░рд╢рд╛рд╕рдХ рдПрдХ рд╣реА рдмрд┐рдВрджреБ рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рддреНрд░реЛрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
  • рдЯреЛрдХрди рдореИрдкрд░реНрд╕ - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ, рднреВрдорд┐рдХрд╛рдУрдВ рдФрд░ рдЕрдиреНрдп рдЖрд╡рд╢реНрдпрдХ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдЯреЛрдХрди рд╕реЗ рдмрд╛рдВрдзрдирд╛ред
  • рджрд╛рдпрд░реЗ, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдмреАрдЪ рд▓рдЪреАрд▓рд╛ рдиреАрддрд┐ рдкреНрд░рдмрдВрдзрдиред
  • CORS рд╕рдорд░реНрдерди - рдХреНрд▓рд╛рдЗрдВрдЯ рдПрдбреЗрдкреНрдЯрд░ рдореЗрдВ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд CORS рд╕рдорд░реНрдерди рд╣реИред
  • рд╕реЗрд╡рд╛ рдкреНрд░рджрд╛рддрд╛ рдЗрдВрдЯрд░рдлреЗрд╕ (рдПрд╕рдкреАрдЖрдИ) - рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдПрд╕рдкреАрдЖрдИ рдЬреЛ рдЖрдкрдХреЛ рд╕рд░реНрд╡рд░ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рдкрд╣рд▓реБрдУрдВ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ: рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдкреНрд░рд╡рд╛рд╣, рдкрд╣рдЪрд╛рди рдкреНрд░рджрд╛рддрд╛, рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдореИрдкрд┐рдВрдЧ, рдФрд░ рдмрд╣реБрдд рдХреБрдЫред
  • рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдХреНрд▓рд╛рдЗрдВрдЯ рдПрдбреЗрдкреНрдЯрд░, рд╡рд╛рдЗрд▓реНрдбрдлреНрд▓рд╛рдИ, рдЬреЗрдмреЙрд╕ рдИрдПрдкреА, рдлреНрдпреВрдЬ, рдЯреЙрдордХреИрдЯ, рдЬреЗрдЯреНрдЯреА, рд╕реНрдкреНрд░рд┐рдВрдЧред
  • рдУрдкрдирдЖрдИрдбреА рдХрдиреЗрдХреНрдЯ рд░рд┐рд▓рд╛рдЗрдВрдЧ рдкрд╛рд░реНрдЯреА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдпрд╛ рдПрд╕рдПрдПрдордПрд▓ 2.0 рд╕реЗрд╡рд╛ рдкреНрд░рджрд╛рддрд╛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╡рд┐рднрд┐рдиреНрди рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдердиред
  • рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдпреЛрдЧреНрдпред

CI/CD рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде Keycloak рдореЗрдВ рдкреНрд░рдмрдВрдзрди рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд╕реНрд╡рдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП, REST API/JAVA API рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдЗрд▓реЗрдХреНрдЯреНрд░реЙрдирд┐рдХ рд░реВрдк рд╕реЗ рдЙрдкрд▓рдмреНрдз рд╣реИ:

рдмрд╛рдХреА рдПрдкреАрдЖрдИ https://www.keycloak.org/docs-api/8.0/rest-api/index.html
рдЬрд╛рд╡рд╛ рдПрдкреАрдЖрдИ https://www.keycloak.org/docs-api/8.0/javadocs/index.html

рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬрд╝ рдкрд╣рдЪрд╛рди рдкреНрд░рджрд╛рддрд╛ (рдСрди-рдкреНрд░рд┐рдорд╛рдЗрд╕реЗрд╕)

рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдлрд╝реЗрдбрд░реЗрд╢рди рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ред

рдорд╛рдЗрдХреНрд░реЛрд╕рд░реНрд╡рд┐рд╕ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдкрд░ рдПрд╕рдПрд╕рдУред рд╣рдо рдХреАрдХреНрд▓реЛрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рднрд╛рдЧ ---- рдкрд╣рд▓рд╛

рдкрд╛рд╕-рдереНрд░реВ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ - рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд░реНрдмрд░реЛрд╕ (рдПрд▓рдбреАрдПрдкреА рдпрд╛ рдПрдбреА) рдХреЗ рд╕рд╛рде рд╡рд░реНрдХрд╕реНрдЯреЗрд╢рди рдХреЗ рдЦрд┐рд▓рд╛рдл рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдЕрдкрдиреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рдХреЛ рдлрд┐рд░ рд╕реЗ рджрд░реНрдЬ рдХрд┐рдП рдмрд┐рдирд╛ рдХреАрдХреНрд▓реЛрдХ рдкрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдкреНрд░рдорд╛рдгрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдФрд░ рдЖрдЧреЗ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд░рд┐рд▓реЗрд╢рдирд▓ рдбреАрдмреАрдПрдордПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдЬреЛ рд╡рд┐рдХрд╛рд╕ рд╡рд╛рддрд╛рд╡рд░рдг рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд▓рд╛рдЧреВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд╢реБрд░реБрдЖрддреА рдЪрд░рдгреЛрдВ рдореЗрдВ рд▓рдВрдмреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдФрд░ рдПрдХреАрдХрд░рдг рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, Keycloak рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд DBMS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рд╕рдорд░реНрдерд┐рдд DBMS рдХреА рд╕реВрдЪреА рд╡реНрдпрд╛рдкрдХ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ: MS SQL, Oracle, PostgreSQL, MariaDB, Oracle рдФрд░ рдЕрдиреНрдпред рдЕрдм рддрдХ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдП рдЧрдП Oracle 12C рд░рд┐рд▓реАрдЬрд╝1 RAC рдФрд░ MariaDB 3.12 рдХреЗ рд▓рд┐рдП рдЧреИрд▓реЗрд░рд╛ 10.1.19 рдХреНрд▓рд╕реНрдЯрд░ рд╣реИрдВред

рдкрд╣рдЪрд╛рди рдкреНрд░рджрд╛рддрд╛ - рд╕рд╛рдорд╛рдЬрд┐рдХ рд▓реЙрдЧрд┐рди

рд╕реЛрд╢рд▓ рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗ рд▓реЙрдЧрд┐рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, Keycloack рдПрдбрдорд┐рди рдХрдВрд╕реЛрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛрдб рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдФрд░ рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рдЙрдкрд▓рдмреНрдз рд╣реИ рдФрд░ рдЗрд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдХрд┐рд╕реА рднреА рдЪрд░рдг рдореЗрдВ рд╕рдХреНрд░рд┐рдп рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдорд╛рдЗрдХреНрд░реЛрд╕рд░реНрд╡рд┐рд╕ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдкрд░ рдПрд╕рдПрд╕рдУред рд╣рдо рдХреАрдХреНрд▓реЛрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рднрд╛рдЧ ---- рдкрд╣рд▓рд╛

рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЗ рд▓рд┐рдП OpenID/SAML рдкрд╣рдЪрд╛рди рдкреНрд░рджрд╛рддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред

Keycloak рдореЗрдВ OAuth2 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдкрд░рд┐рджреГрд╢реНрдп

рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЛрдб рдкреНрд░рд╡рд╛рд╣ - рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЕрдиреБрдорддрд┐ рдХреЗ рд╕рдмрд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЙрди рд╕рд░реНрд╡рд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИ рдЬрд╣рд╛рдВ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рд╕реНрд░реЛрдд рдХреЛрдб рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдбреЗрдЯрд╛ рдмрд╛рд╣рд░реА рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рди рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдЬреЗрдВрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдПрдкреАрдЖрдИ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЛрдб рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдЬреЗрдВрдЯ (рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рдПрдЬреЗрдВрдЯ) рдЬреИрд╕реЗ рд╡реЗрдм рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЕрдиреНрддрд░реНрдирд┐рд╣рд┐рдд рдкреНрд░рд╡рд╛рд╣ - рдореЛрдмрд╛рдЗрд▓ рдпрд╛ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди (рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдЪрд▓рдиреЗ рд╡рд╛рд▓реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди) рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЕрдиреБрдорддрд┐ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдореЛрдмрд╛рдЗрд▓ рдФрд░ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЧреНрд░рд╛рд╣рдХ рдЧреЛрдкрдиреАрдпрддрд╛ рдХреА рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рджреА рдЬрд╛ рд╕рдХрддреА рд╣реИред рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдЕрдиреБрдорддрд┐ рдкреНрд░рдХрд╛рд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдЬреЗрдВрдЯ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рди рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдЖрдЧреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдПрдХреНрд╕реЗрд╕ рдЯреЛрдХрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдЬреЗрдВрдЯ рдХреЛ рднреЗрдЬ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдЕрдиреНрдп рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рдЯреЛрдХрди рдЙрдкрд▓рдмреНрдз рдХрд░рд╛рддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЕрдиреБрдорддрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рдкрд╣рдЪрд╛рди рдХреЛ рдкреНрд░рдорд╛рдгрд┐рдд рдирд╣реАрдВ рдХрд░рддреА рд╣реИ, рдФрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реНрд╡рдпрдВ рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ рдпреВрдЖрд░рдПрд▓ (рдкрд╣рд▓реЗ рд╕реЗрд╡рд╛ рдХреЗ рд╕рд╛рде рдкрдВрдЬреАрдХреГрдд) рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИред

рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдкреНрд░рд╡рд╛рд╣ рдПрдХреНрд╕реЗрд╕ рдЯреЛрдХрди рд░реАрдлреНрд░реЗрд╢ рдЯреЛрдХрди рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдЧреНрд░рд╛рд╣рдХ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдЕрдиреБрджрд╛рди рдкреНрд░рд╡рд╛рд╣ тАФ рдХрд╛ рдЙрдкрдпреЛрдЧ рддрдм рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдПрдкреАрдЖрдИ рддрдХ рдкрд╣реБрдВрдЪрддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЕрдиреБрдорддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдо рддреМрд░ рдкрд░ рд╕рд░реНрд╡рд░-рдЯреВ-рд╕рд░реНрд╡рд░ рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рддрддреНрдХрд╛рд▓ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХреЗ рдмрд┐рдирд╛ рдкреГрд╖реНрдарднреВрдорд┐ рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреНрд▓рд╛рдЗрдВрдЯ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдЕрдиреБрджрд╛рди рдкреНрд░рд╡рд╛рд╣ рдПрдХ рд╡реЗрдм рд╕реЗрд╡рд╛ (рдЧреЛрдкрдиреАрдп рдХреНрд▓рд╛рдЗрдВрдЯ) рдХреЛ рдХрд┐рд╕реА рдЕрдиреНрдп рд╡реЗрдм рд╕реЗрд╡рд╛ рдХреЛ рдХреЙрд▓ рдХрд░рддреЗ рд╕рдордп рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ рдкреНрд░рддрд┐рд░реВрдкрдг рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЙрдЪреНрдЪ рд╕реНрддрд░ рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП, рдХреЙрд▓рд┐рдВрдЧ рд╕реЗрд╡рд╛ рдХреЗ рд▓рд┐рдП рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рдорд╛рдгрдкрддреНрд░ (рд╕рд╛рдЭрд╛ рд░рд╣рд╕реНрдп рдХреЗ рдмрдЬрд╛рдп) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред

OAuth2 рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╣реИ
рдЖрд░рдПрдлрд╕реА-6749
рдЖрд░рдПрдлрд╕реА-8252
рдЖрд░рдПрдлрд╕реА-6819

JWT рдЯреЛрдХрди рдФрд░ рдЗрд╕рдХреЗ рд▓рд╛рдн

JWT (JSON рд╡реЗрдм рдЯреЛрдХрди) рдПрдХ рдЦреБрд▓рд╛ рдорд╛рдирдХ рд╣реИ (https://tools.ietf.org/html/rfc7519) рдЬреЛ JSON рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░реНрдЯрд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЙрдореНрдкреИрдХреНрдЯ рдФрд░ рдЖрддреНрдордирд┐рд░реНрднрд░ рддрд░реАрдХреЗ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред

рдорд╛рдирдХ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЯреЛрдХрди рдореЗрдВ рдмреЗрд╕-64 рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рддреАрди рднрд╛рдЧ рд╣реЛрддреЗ рд╣реИрдВ, рдЬреЛ рдмрд┐рдВрджреБрдУрдВ рджреНрд╡рд╛рд░рд╛ рдЕрд▓рдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдкрд╣рд▓реЗ рднрд╛рдЧ рдХреЛ рд╣реЗрдбрд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдбрд┐рдЬрд┐рдЯрд▓ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреЛрдХрди рдХрд╛ рдкреНрд░рдХрд╛рд░ рдФрд░ рд╣реИрд╢ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХрд╛ рдирд╛рдо рд╢рд╛рдорд┐рд▓ рд╣реЛрддрд╛ рд╣реИред рджреВрд╕рд░рд╛ рднрд╛рдЧ рдмреБрдирд┐рдпрд╛рджреА рдЬрд╛рдирдХрд╛рд░реА (рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛, рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ, рдЖрджрд┐) рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред рддреАрд╕рд░рд╛ рднрд╛рдЧ рдбрд┐рдЬрд┐рдЯрд▓ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рд╣реИред

. .
рдЕрдкрдиреЗ рдбреАрдмреА рдореЗрдВ рдХрднреА рднреА рдЯреЛрдХрди рд╕реНрдЯреЛрд░ рди рдХрд░реЗрдВред рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рд╡реИрдз рдЯреЛрдХрди рдПрдХ рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИ, рдЯреЛрдХрди рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛ рдкрд╛рд╕рд╡рд░реНрдб рдХреЛ рд╕реНрдкрд╖реНрдЯ рдкрд╛рда рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдЬреИрд╕рд╛ рд╣реИред
рдПрдХреНрд╕реЗрд╕ рдЯреЛрдХрди рдПрдХ рдЯреЛрдХрди рд╣реИ рдЬреЛ рдЙрд╕рдХреЗ рдорд╛рд▓рд┐рдХ рдХреЛ рд╕реБрд░рдХреНрд╖рд┐рдд рд╕рд░реНрд╡рд░ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдЬреАрд╡рдирдХрд╛рд▓ рдЖрдорддреМрд░ рдкрд░ рдЫреЛрдЯрд╛ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдЯреЛрдХрди рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рд╡рд╛рд▓реА рдкрд╛рд░реНрдЯреА рдХрд╛ рдЖрдИрдкреА рдкрддрд╛ рдЬреИрд╕реА рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рд╣реЛ рд╕рдХрддреА рд╣реИред

рдЯреЛрдХрди рддрд╛рдЬрд╝рд╛ рдХрд░реЗрдВ рдПрдХ рдЯреЛрдХрди рд╣реИ рдЬреЛ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рдЙрдирдХреЗ рдЬреАрд╡рдирдХрд╛рд▓ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдирдП рдПрдХреНрд╕реЗрд╕ рдЯреЛрдХрди рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпреЗ рдЯреЛрдХрди рдЖрдорддреМрд░ рдкрд░ рд▓рдВрдмреА рдЕрд╡рдзрд┐ рдХреЗ рд▓рд┐рдП рдЬрд╛рд░реА рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред

рдорд╛рдЗрдХреНрд░реЛрд╕рд░реНрд╡рд┐рд╕ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рдореБрдЦреНрдп рд▓рд╛рдн:

  • рдПрдХ рдмрд╛рд░ рдХреЗ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╡рд┐рднрд┐рдиреНрди рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдФрд░ рд╕реЗрд╡рд╛рдУрдВ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреА рдХреНрд╖рдорддрд╛ред
  • рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХрдИ рдЖрд╡рд╢реНрдпрдХ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдореЗрдВ, рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдФрд░ рдСрди-рдж-рдлрд╝реНрд▓рд╛рдИ рд╕рд╣рд┐рдд рдкреЗрд▓реЛрдб рдореЗрдВ рдЬреЛрдбрд╝реЗ рдЬрд╛ рд╕рдХрдиреЗ рд╡рд╛рд▓реЗ рдбреЗрдЯрд╛ рдХреЛ рд╕рдореГрджреНрдз рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред
  • рд╕рдХреНрд░рд┐рдп рд╕рддреНрд░реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рд╕рд░реНрд╡рд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдХреЗрд╡рд▓ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
  • рдкреЗрд▓реЛрдб рдореЗрдВ рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдзрд┐рдХ рд▓рдЪреАрд▓рд╛ рдЕрднрд┐рдЧрдо рдирд┐рдпрдВрддреНрд░рдгред
  • рд╣реЗрдбрд░ рдФрд░ рдкреЗрд▓реЛрдб рдХреЗ рд▓рд┐рдП рдЯреЛрдХрди рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рдордЧреНрд░ рд░реВрдк рд╕реЗ рд╕рдорд╛рдзрд╛рди рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдХреЛ рдмрдврд╝рд╛рддрд╛ рд╣реИред

рдЬреЗрдбрдмреНрд▓реНрдпреВрдЯреА рдЯреЛрдХрди - рд░рдЪрдирд╛

рд╢реАрд░реНрд╖рдХ - рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рд╣реЗрдбрд░ рдореЗрдВ рдХреЗрд╡рд▓ рдЯреЛрдХрди рдХрд╛ рдкреНрд░рдХрд╛рд░ рдФрд░ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдиреЗ рд╡рд╛рд▓рд╛ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рд╢рд╛рдорд┐рд▓ рд╣реЛрддрд╛ рд╣реИред

рдЯреЛрдХрди рдХрд╛ рдкреНрд░рдХрд╛рд░ "рдЯрд╛рдЗрдк" рдХреБрдВрдЬреА рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реЛрддрд╛ рд╣реИред JWT рдореЗрдВ 'рдкреНрд░рдХрд╛рд░' рдХреБрдВрдЬреА рдХреЛ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ "рдЯрд╛рдЗрдк" рдХреБрдВрдЬреА рдореМрдЬреВрдж рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдорд╛рди JWT рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рдпрд╣ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛ рд╕рдХреЗ рдХрд┐ рдпрд╣ рдСрдмреНрдЬреЗрдХреНрдЯ рдПрдХ JSON рд╡реЗрдм рдЯреЛрдХрди рд╣реИред

рджреВрд╕рд░реА рдХреБрдВрдЬреА "рдПрд▓рдЬреА" рдЯреЛрдХрди рдХреЛ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреА рд╣реИред рдЗрд╕реЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ HS256 рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣реЗрдбрд░ рдмреЗрд╕64 рдореЗрдВ рдПрдиреНрдХреЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

{"alg": "HS256", "рдкреНрд░рдХрд╛рд░": "JWT"}
рдкреЗрд▓реЛрдб (рд╕рд╛рдордЧреНрд░реА) - рдкреЗрд▓реЛрдб рдХрд┐рд╕реА рднреА рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЬрд╛рдВрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдкреЗрд▓реЛрдб рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдХреБрдВрдЬреА рдХреЛ "рджрд╛рд╡рд╛" рдХреЗ рд░реВрдк рдореЗрдВ рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдХреЗрд╡рд▓ рдЖрдордВрддреНрд░рдг (рдмрдВрдж рдкреНрд░реЛрдореЛ) рджреНрд╡рд╛рд░рд╛ рд╣реА рдЖрд╡реЗрджрди рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЬрдм рд╣рдо рдХрд┐рд╕реА рдХреЛ рднрд╛рдЧ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдордВрддреНрд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдЙрдиреНрд╣реЗрдВ рдПрдХ рдирд┐рдордВрддреНрд░рдг рдкрддреНрд░ рднреЗрдЬрддреЗ рд╣реИрдВред рдпрд╣ рдЬрд╛рдВрдЪрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдИрдореЗрд▓ рдкрддрд╛ рдирд┐рдордВрддреНрд░рдг рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕ рдкрддреЗ рдХреЛ рдкреЗрд▓реЛрдб рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВрдЧреЗ, рдЗрд╕рдХреЗ рд▓рд┐рдП рд╣рдо рдЗрд╕реЗ "рдИрдореЗрд▓" рдХреБрдВрдЬреА рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВред

{ "рдИрдореЗрд▓": "[рдИрдореЗрд▓ рд╕рдВрд░рдХреНрд╖рд┐рдд]"}

рдкреЗрд▓реЛрдб рдореЗрдВ рдХреБрдВрдЬрд┐рдпрд╛рдБ рдордирдорд╛рдиреА рд╣реЛ рд╕рдХрддреА рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдХреБрдЫ рдЖрд░рдХреНрд╖рд┐рдд рд╣реИрдВ:

  • рдЖрдИрдПрд╕рдПрд╕ (рдЬрд╛рд░реАрдХрд░реНрддрд╛) - рдЙрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рдкрд╣рдЪрд╛рди рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рд╕реЗ рдЯреЛрдХрди рднреЗрдЬрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред
  • рдЙрдк (рд╡рд┐рд╖рдп) - рдЯреЛрдХрди рдХреЗ рд╡рд┐рд╖рдп рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред
  • aud (рдСрдбрд┐рдпрдВрд╕) рдХреЗрд╕-рд╕рдВрд╡реЗрджреА рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдпрд╛ рдпреВрдЖрд░рдЖрдИ рдХреА рдПрдХ рд╕рд░рдгреА рд╣реИ рдЬреЛ рдЗрд╕ рдЯреЛрдХрди рдХреЗ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИред рдЬрдм рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рдкрдХреНрд╖ рдХреЛ рджреА рдЧрдИ рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде рдПрдХ JWT рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдЙрд╕реЗ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛рдУрдВ рдореЗрдВ рд╕реНрд╡рдпрдВ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП - рдЕрдиреНрдпрдерд╛ рдЯреЛрдХрди рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВред
  • exp (рд╕рдорд╛рдкреНрддрд┐ рд╕рдордп) - рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЯреЛрдХрди рдХрдм рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред JWT рдорд╛рдирдХ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рд╕рднреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕рдорд╛рдкреНрдд рд╣реЛ рдЪреБрдХреЗ рдЯреЛрдХрди рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рджреЗрдВред рдНрдХреНрд╕реНрдк рдХреБрдВрдЬреА рдпреВрдирд┐рдХреНрд╕ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдПрдХ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред
  • рдПрдирдмреАрдПрдл (рдиреЙрдЯ рдмрд┐рдлрд╝реЛрд░) рдпреВрдирд┐рдХреНрд╕ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдПрдХ рд╕рдордп рд╣реИ рдЬреЛ рдЙрд╕ рдХреНрд╖рдг рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрдм рдЯреЛрдХрди рд╡реИрдз рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
  • iat (рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛) - рдпрд╣ рдХреБрдВрдЬреА рдЙрд╕ рд╕рдордп рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреА рд╣реИ рдЬрдм рдЯреЛрдХрди рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ JWT рдХреА рдЖрдпреБ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред Iat рдХреБрдВрдЬреА рдпреВрдирд┐рдХреНрд╕ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред
  • рдЬреЗрдЯреАрдЖрдИ (рдЬреЗрдбрдмреНрд▓реНрдпреВрдЯреА рдЖрдИрдбреА) - рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЬреЛ рдЗрд╕ рдЯреЛрдХрди рдХреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛, рдХреЗрд╕-рд╕рдВрд╡реЗрджреА рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреА рд╣реИред

рдпрд╣ рд╕рдордЭрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдкреЗрд▓реЛрдб рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рд░реВрдк рдореЗрдВ рдкреНрд░рд╕рд╛рд░рд┐рдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЯреЛрдХрди рдХреЛ рдиреЗрд╕реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рдбреЗрдЯрд╛ рд╕рдВрдЪрд╛рд░рд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ)ред рдЗрд╕рд▓рд┐рдП, рдпрд╣ рдХреЛрдИ рднреА рдЧреБрдкреНрдд рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд╣реЗрдбрд░ рдХреА рддрд░рд╣, рдкреЗрд▓реЛрдб рдмреЗрд╕64 рдПрдиреНрдХреЛрдбреЗрдб рд╣реИред
рд╣рд╕реНрддрд╛рдХреНрд╖рд░ - рдЬрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╢реАрд░реНрд╖рдХ рдФрд░ рдкреЗрд▓реЛрдб рд╣реЛрддрд╛ рд╣реИ, рддреЛ рд╣рдо рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХреА рдЧрдгрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдмреЗрд╕64-рдПрдиреНрдХреЛрдбреЗрдб: рд╣реЗрдбрд░ рдФрд░ рдкреЗрд▓реЛрдб рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрдиреНрд╣реЗрдВ рдПрдХ рдмрд┐рдВрджреБ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред рдлрд┐рд░ рдпрд╣ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдФрд░ рдЧреБрдкреНрдд рдХреБрдВрдЬреА рд╣реЗрдбрд░ ("рдПрд▓рдЬреА" рдХреБрдВрдЬреА) рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдореЗрдВ рдЗрдирдкреБрдЯ рд╣реИрдВред рдХреБрдВрдЬреА рдХреЛрдИ рднреА рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реЛ рд╕рдХрддреА рд╣реИ. рд▓рдВрдмреА рдбреЛрд░рд┐рдпреЛрдВ рдХреЛ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдкрд╕рдВрдж рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕реЗ рдЙрдард╛рдиреЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╕рдордп рд▓рдЧреЗрдЧрд╛ред

{"alg":"RSA1_5","рдкреЗрд▓реЛрдб":"A128CBC-HS256"}

рдХреАрдХреНрд▓реЛрдХ рдлрд╝реЗрд▓рдУрд╡рд░ рдХреНрд▓рд╕реНрдЯрд░ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдХрд╛ рдирд┐рд░реНрдорд╛рдг

рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХрд▓ рдХреНрд▓рд╕реНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдПрд╕рдПрд╕рдУ рд╕рдорд╛рдзрд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рдмрдврд╝ рдЬрд╛рддреА рд╣реИрдВред рдЬрдм рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдЫреЛрдЯреА рд╣реЛрддреА рд╣реИ, рддреЛ рдпреЗ рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЗрддрдиреА рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рд╣реЛрддреА рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдФрд░ рдПрдХреАрдХрд░рдгреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╡реГрджреНрдзрд┐ рдХреЗ рд╕рд╛рде, рдЙрдкрд▓рдмреНрдзрддрд╛ рдФрд░ рдкреНрд░рджрд░реНрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рдмрдврд╝ рдЬрд╛рддреА рд╣реИрдВред

рдПрдХрд▓ рдПрд╕рдПрд╕рдУ рд╡рд┐рдлрд▓рддрд╛ рдХрд╛ рдЬреЛрдЦрд┐рдо рдмрдврд╝рдиреЗ рд╕реЗ рд╕рдорд╛рдзрд╛рди рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдФрд░ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╡рд┐рдзрд┐рдпреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рдмрдврд╝ рдЬрд╛рддреА рд╣реИрдВ рдФрд░ рдмрд╣реБрдд рд╕рдЦреНрдд рдПрд╕рдПрд▓рдП рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рд╕рдВрдмрдВрдз рдореЗрдВ, рдЕрдХреНрд╕рд░ рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рдпрд╛ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд╢реБрд░реБрдЖрддреА рдЪрд░рдгреЛрдВ рдореЗрдВ, рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХрд╛ рдЕрдкрдирд╛ рдЧреИрд░-рджреЛрд╖-рд╕рд╣рд┐рд╖реНрдгреБ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪрд╛ рд╣реЛрддрд╛ рд╣реИред рдЬреИрд╕реЗ-рдЬреИрд╕реЗ рд╡рд┐рдХрд╛рд╕ рдЖрдЧреЗ рдмрдврд╝рддрд╛ рд╣реИ, рд╡рд┐рдХрд╛рд╕ рдФрд░ рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЕрд╡рд╕рд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрддрд╛ рд╣реИред рдХрдВрдЯреЗрдирд░ рд╡рд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬреЗрд╢рди рдпрд╛ рд╣рд╛рдЗрдмреНрд░рд┐рдб рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдлреЗрд▓рдУрд╡рд░ рдХреНрд▓рд╕реНрдЯрд░ рдмрдирд╛рдирд╛ рд╕рдмрд╕реЗ рд▓рдЪреАрд▓рд╛ рд╣реИред

рд╕рдХреНрд░рд┐рдп/рд╕рдХреНрд░рд┐рдп рдФрд░ рд╕рдХреНрд░рд┐рдп/рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХреНрд▓рд╕реНрдЯрд░ рдореЛрдб рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд░рд┐рд▓реЗрд╢рдирд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдбреЗрдЯрд╛ рд╕реНрдерд┐рд░рддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ - рджреЛрдиреЛрдВ рдбреЗрдЯрд╛рдмреЗрд╕ рдиреЛрдбреНрд╕ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рднреВ-рд╡рд┐рддрд░рд┐рдд рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдХреЗ рдмреАрдЪ рд╕рдордХрд╛рд▓рд┐рдХ рд░реВрдк рд╕реЗ рджреЛрд╣рд░рд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рджреЛрд╖-рд╕рд╣рд┐рд╖реНрдгреБ рд╕реНрдерд╛рдкрдирд╛ рдХрд╛ рд╕рдмрд╕реЗ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг.

рдорд╛рдЗрдХреНрд░реЛрд╕рд░реНрд╡рд┐рд╕ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдкрд░ рдПрд╕рдПрд╕рдУред рд╣рдо рдХреАрдХреНрд▓реЛрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рднрд╛рдЧ ---- рдкрд╣рд▓рд╛

рдПрдХрд▓ рдХреНрд▓рд╕реНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдХреНрдпрд╛ рд▓рд╛рдн рд╣реИрдВ:

  • рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рдФрд░ рдкреНрд░рджрд░реНрд╢рди.
  • рдСрдкрд░реЗрдЯрд┐рдВрдЧ рдореЛрдб рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди: рд╕рдХреНрд░рд┐рдп/рд╕рдХреНрд░рд┐рдп, рд╕рдХреНрд░рд┐рдп/рдирд┐рд╖реНрдХреНрд░рд┐рдпред
  • рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рд╕реНрдХреЗрд▓ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ - рдХрдВрдЯреЗрдирд░ рд╡рд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордпред
  • рдХреЗрдВрджреНрд░реАрдХреГрдд рдкреНрд░рдмрдВрдзрди рдФрд░ рдирд┐рдЧрд░рд╛рдиреА рдХреА рд╕рдВрднрд╛рд╡рдирд╛.
  • рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рдкрд╣рдЪрд╛рди/рдкреНрд░рдорд╛рдгреАрдХрд░рдг/рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рд▓рд┐рдП рдПрдХреАрдХреГрдд рджреГрд╖реНрдЯрд┐рдХреЛрдгред
  • рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рднрд╛рдЧреАрджрд╛рд░реА рдХреЗ рдмрд┐рдирд╛ рд╡рд┐рднрд┐рдиреНрди рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рдмреАрдЪ рдЕрдзрд┐рдХ рдкрд╛рд░рджрд░реНрд╢реА рдмрд╛рддрдЪреАрддред
  • рд╡рд┐рднрд┐рдиреНрди рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ JWT рдЯреЛрдХрди рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ред
  • рднрд░реЛрд╕реЗ рдХрд╛ рдПрдХрд▓ рдмрд┐рдВрджреБ.
  • рдорд╛рдЗрдХреНрд░реЛрд╕рд░реНрд╡рд┐рд╕реЗрдЬ/рдХрдВрдЯреЗрдирд░ рд╡рд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬреЗрд╢рди (рдЕрддрд┐рд░рд┐рдХреНрдд рдШрдЯрдХреЛрдВ рдХреЛ рдЙрдард╛рдиреЗ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХрд╛ рддреЗрдЬрд╝ рд▓реЙрдиреНрдЪред
  • рд╡рд┐рдХреНрд░реЗрддрд╛ рд╕реЗ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рд╕рд╣рд╛рдпрддрд╛ рдЦрд░реАрджрдирд╛ рд╕рдВрднрд╡ рд╣реИред

рдХреНрд▓рд╕реНрдЯрд░ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╕рдордп рдХреНрдпрд╛ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдП?

рдбреАрдмреАрдПрдордПрд╕

Keycloak рд╕реНрдЯреЛрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдкреНрд░рдмрдВрдзрди рдкреНрд░рдгрд╛рд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ: рдХреНрд╖реЗрддреНрд░, рдЧреНрд░рд╛рд╣рдХ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛, рдЖрджрд┐ред
DBMS рдХреА рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╕рдорд░реНрдерд┐рдд рд╣реИ: MS SQL, Oracle, MySQL, PostgreSQLред рдХреАрдХреНрд▓реЛрдХ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд░рд┐рд▓реЗрд╢рдирд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдЖрддрд╛ рд╣реИред рдЗрд╕реЗ рдЧреИрд░-рд▓реЛрдбреЗрдб рд╡рд╛рддрд╛рд╡рд░рдг рдЬреИрд╕реЗ рд╡рд┐рдХрд╛рд╕ рд╡рд╛рддрд╛рд╡рд░рдг рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХреА рдЬрд╛рддреА рд╣реИред

рд╕рдХреНрд░рд┐рдп/рд╕рдХреНрд░рд┐рдп рдФрд░ рд╕рдХреНрд░рд┐рдп/рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХреНрд▓рд╕реНрдЯрд░ рдореЛрдб рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд░рд┐рд▓реЗрд╢рдирд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдбреЗрдЯрд╛ рд╕реНрдерд┐рд░рддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдФрд░ рджреЛрдиреЛрдВ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреНрд▓рд╕реНрдЯрд░ рдиреЛрдбреНрд╕ рдХреЛ рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдХреЗ рдмреАрдЪ рд╕рдордХрд╛рд▓рд┐рдХ рд░реВрдк рд╕реЗ рджреЛрд╣рд░рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╡рд┐рддрд░рд┐рдд рдХреИрд╢ (рдЗрдиреНрдлрд┐рдирд╕реНрдкреИрди)

рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЬреЗрдмреЙрд╕ рдбреЗрдЯрд╛ рдЧреНрд░рд┐рдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рдХрд╛рд░ рдХреЗ рдХреИрд╢ рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╕рддреНрд░ - рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░рддреЗ рд╕рдордп рдбреЗрдЯрд╛ рд╕рд╣реЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рдХреИрд╢ рд╕реЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдореЗрдВ рдЖрдо рддреМрд░ рдкрд░ рдХреЗрд╡рд▓ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдФрд░ рдХреАрдХреНрд▓реЛрдХ рд╕рд░реНрд╡рд░ рд╢рд╛рдорд┐рд▓ рд╣реЛрддреЗ рд╣реИрдВ, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдирд╣реАрдВред

рдПрдХреНрд╢рди рдЯреЛрдХрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрди рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рд░реВрдк рд╕реЗ (рдИрдореЗрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ) рдХрд┐рд╕реА рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд╛рд╕рд╡рд░реНрдб рднреВрд▓рдиреЗ рдХреЗ рдкреНрд░рд╡рд╛рд╣ рдХреЗ рджреМрд░рд╛рди, рдПрдХреНрд╢рдирдЯреЛрдХреЗрдВрд╕ рдЗрдирдлрд┐рдирд┐рд╕реНрдкреИрди рдХреИрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рдВрдмрдВрдзрд┐рдд рдПрдХреНрд╢рди рдЯреЛрдХрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХрд╛ рдЯреНрд░реИрдХ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рдкрд╣рд▓реЗ рд╣реА рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рдЪреБрдХрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рд▓рдЧрд╛рддрд╛рд░ рдбреЗрдЯрд╛ рдХреЛ рдХреИрд╢рд┐рдВрдЧ рдФрд░ рдЕрдорд╛рдиреНрдп рдХрд░рдирд╛ - рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдкреНрд░рд╢реНрдиреЛрдВ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧрд╛рддрд╛рд░ рдбреЗрдЯрд╛ рдХреЛ рдХреИрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬрдм рдХреЛрдИ рднреА Keycloak рд╕рд░реНрд╡рд░ рдбреЗрдЯрд╛ рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реИ, рддреЛ рд╕рднреА рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдХреЗ рдЕрдиреНрдп рд╕рднреА Keycloak рд╕рд░реНрд╡рд░реЛрдВ рдХреЛ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

рдХрд╛рд░реНрдп - рдХреЗрд╡рд▓ рдХреНрд▓рд╕реНрдЯрд░ рдиреЛрдбреНрд╕ рдФрд░ рдбреЗрдЯрд╛ рдХреЗрдВрджреНрд░реЛрдВ рдХреЗ рдмреАрдЪ рдЕрдорд╛рдиреНрдп рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рддреНрд░ - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рддреНрд░реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдбреЗрдЯрд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕рддреНрд░ рдХреА рдЕрд╡рдзрд┐ рдХреЗ рд▓рд┐рдП рдорд╛рдиреНрдп рд╣реЛрддреЗ рд╣реИрдВред рдХреИрд╢ рдХреЛ рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ HTTP рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдХреНрд░реВрд░ рдмрд▓ рд╕реБрд░рдХреНрд╖рд╛ - рд╡рд┐рдлрд▓ рд▓реЙрдЧрд┐рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдбреЗрдЯрд╛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рднрд╛рд░ рдХрд╛ рд╕рдВрддреБрд▓рди

рд▓реЛрдб рдмреИрд▓реЗрдВрд╕рд░ рдХреАрдХреНрд▓реЛрдХ рдХреЗ рд▓рд┐рдП рдПрдХрд▓ рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБ рд╣реИ рдФрд░ рдЗрд╕реЗ рд╕реНрдЯрд┐рдХреА рд╕рддреНрд░реЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕рд░реНрд╡рд░

рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рдШрдЯрдХреЛрдВ рдХреА рдмрд╛рддрдЪреАрдд рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдореМрдЬреВрджрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдЙрдкрдХрд░рдг рдФрд░ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рд╕реНрд╡рдЪрд╛рд▓рди рдЙрдкрдХрд░рдг рдХреЗ рдЧрддрд┐рд╢реАрд▓ рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬреНрдб рдпрд╛ рдХрдВрдЯреЗрдирд░реАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдУрдкрдирд╢рд┐рдлреНрдЯ, рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕, рд░реИрдВрдЪрд░ рдореЗрдВ рд╕рдмрд╕реЗ рдЖрдо рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдкрд░рд┐рджреГрд╢реНрдпред

рдпрд╣ рдкрд╣рд▓рд╛ рднрд╛рдЧ - рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ - рд╕рдорд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред рд▓реЗрдЦреЛрдВ рдХреА рдЕрдЧрд▓реА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ, рд╡рд┐рднрд┐рдиреНрди рдкрд╣рдЪрд╛рди рдкреНрд░рджрд╛рддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг рдХреЗ рдЙрджрд╛рд╣рд░рдг рдФрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

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

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ