Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация, ΠΈ ΠΊΠ°ΠΊ Π΅Π΅ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ Π±Π΅Π· ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΈ ошибок

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

Π’Ρ‹ ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅, ΠΊΠ°ΠΊ Π² школС ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΠ»ΠΈ Π½ΠΎΠ²ΡƒΡŽ Ρ‚Π΅ΠΌΡƒ ΠΏΠΎ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ΅, Ρ„ΠΈΠ·ΠΈΠΊΠ΅, Ρ…ΠΈΠΌΠΈΠΈ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ слоТным ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π°ΠΌ? ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΡˆΡŒ ΠΊΠ½ΠΈΠ³Ρƒ, Π° Ρ‚Π°ΠΌ масса нСпонятных слов. Но постСпСнно ΠΌΡ‹ ΠΈΠ·ΡƒΡ‡Π°Π»ΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹, ΠΈ всС ΡΡ‚Π°Π½ΠΎΠ²ΠΈΠ»ΠΎΡΡŒ Π½Π° свои мСста.

Заканчивая ΡˆΠΊΠΎΠ»Ρƒ, ΠΌΡ‹ Π½Π΅ пСрСстаСм ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ. Π–ΠΈΠ·Π½ΡŒ ΡΡ‚Ρ€Π΅ΠΌΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ мСняСтся, Ρ€Π°Π·Π²ΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, побуТдая нас ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ знания ΠΈ Π½Π°Π²Ρ‹ΠΊΠΈ. Π§Ρ‚ΠΎΠ±Ρ‹ свободно Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚, ΠΎΠ±Ρ‰Π°Ρ‚ΡŒΡΡ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² сСти, Π½ΡƒΠΆΠ½ΠΎ ΠΎΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ основныС понятия. БСгодня ΠΌΡ‹ разбСрСмся, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация, ΠΊΠ°ΠΊΠΎΠΉ ΠΎΠ½Π° Π±Ρ‹Π²Π°Π΅Ρ‚, ΠΈ Ρ‡Π΅ΠΌ этот процСсс отличаСтся ΠΎΡ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅

Π‘ процСссом Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π² Ρ‚ΠΎΠΌ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΌ Π²ΠΈΠ΄Π΅ ΠΌΡ‹ сталкиваСмся довольно часто.

АутСнтификация – это ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° установлСния подлинности ΠΈΠ»ΠΈ соотвСтствия.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ это простыми словами, ΠΏΡ€ΠΈΠ²Π΅Π΄Ρƒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€.

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅ сСбС, Ρ‡Ρ‚ΠΎ Π½Π΅Π΄Π°Π²Π½ΠΎ ΠΊΡƒΠΏΠΈΠ»ΠΈ ΠΊΠ²Π°Ρ€Ρ‚ΠΈΡ€Ρƒ ΠΈΠ»ΠΈ смСнили Π·Π°ΠΌΠΊΠΈ, ΠΊ ΠΊΠ»ΡŽΡ‡Π°ΠΌ Π΅Ρ‰Π΅ Π½Π΅ ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ»ΠΈ. ΠŸΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊ двСрям ΠΈ пытаСмся Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡ Π² Π·Π°ΠΌΠΎΡ‡Π½ΡƒΡŽ скваТину. Если ΠΌΡ‹ ошиблись, Ρ‚ΠΎ аутСнтификация Π½Π΅ ΠΏΡ€ΠΎΠΉΠ΄Π΅Π½Π°, ΠΊΠ»ΡŽΡ‡ Π½Π΅ соотвСтствуСт Π·Π°ΠΌΠΊΡƒ, Π½Π΅ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Π΅Π³ΠΎ. Если, Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, всС сошлось, ΠΈ Π΄Π²Π΅Ρ€ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‚ΡΡ, Π·Π½Π°Ρ‡ΠΈΡ‚, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° подлинности ΠΏΡ€ΠΎΠΉΠ΄Π΅Π½Π°.

Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ:

ΠžΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ

Π­Ρ‚ΠΈ понятия Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΏΡƒΡ‚Π°Ρ‚ΡŒ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ этапами ΠΎΠ΄Π½ΠΎΠ³ΠΎ процСсса, частями ΠΌΠΎΠ·Π°ΠΈΠΊΠΈ. ВСрнСмся ΠΊ Π½Π°ΡˆΠ΅ΠΌΡƒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ с Π΄Π²Π΅Ρ€ΡŒΡŽ Π² ΠΊΠ²Π°Ρ€Ρ‚ΠΈΡ€Ρƒ. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π΅Π΅, Π½Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ ΠΊΠ»ΡŽΡ‡, ΠΎΠ½ выступаСт ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ инструмСнтом, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΡΠΎΠ²Π΅Ρ€ΡˆΠ°Ρ‚ΡŒ Π½ΡƒΠΆΠ½ΠΎΠ΅ дСйствиС. Вставили Π΅Π³ΠΎ Π² Π·Π°ΠΌΠΎΠΊ, ΠΏΠΎΠΊΡ€ΡƒΡ‚ΠΈΠ»ΠΈ – ΠΏΡ€ΠΎΡˆΠ»ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ.

Если Π΄Π²Π΅Ρ€ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Π»ΠΈΡΡŒ, Π·Π½Π°Ρ‡ΠΈΡ‚, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π²Π΅Ρ€Π½Ρ‹ΠΉ, ΠΏΠΎΠ΄Π»ΠΈΠ½Π½Ρ‹ΠΉ. Π­Ρ‚ΠΎ ΡƒΠΆΠ΅ аутСнтификация ΠΈΠ»ΠΈ, говоря Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ. ПослСдний этап – авторизация, ΠΌΡ‹ Π²Ρ…ΠΎΠ΄ΠΈΠΌ Π² ΠΊΠ²Π°Ρ€Ρ‚ΠΈΡ€Ρƒ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ доступ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ с ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ сСтями. ΠœΡ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ сайт ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅, Π²Π²ΠΎΠ΄ΠΈΠΌ Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ – это наши ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹. Π—Π°Ρ‚Π΅ΠΌ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Enter, ΠΈ информация отправляСтся Π½Π° Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° провСряСт, сущСствуСт Π»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ с Ρ‚Π°ΠΊΠΈΠΌΠΈ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Если ΠΌΡ‹ всС сдСлали ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Ρ‚ΠΎ происходит авторизация. ΠœΡ‹ Π²Ρ…ΠΎΠ΄ΠΈΠΌ Π² ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ ΡΠ΅Ρ‚ΡŒ ΠΈ ΠΏΠΎΠΏΠ°Π΄Π°Π΅ΠΌ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° свою страницу, Π²ΠΈΠ΄ΠΈΠΌ оповСщСния, Π΄ΠΈΠ°Π»ΠΎΠ³ΠΈ с Π΄Ρ€ΡƒΠ·ΡŒΡΠΌΠΈ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ записи Π² Π»Π΅Π½Ρ‚Π΅.

Если Π²Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΏΡƒΡ‚Π°Π΅Ρ‚Π΅ эти Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹, Π½ΠΈΡ‡Π΅Π³ΠΎ ΡΡ‚Ρ€Π°ΡˆΠ½ΠΎΠ³ΠΎ, Π½ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, ΠΎ Ρ‡Π΅ΠΌ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ ΠΈΠ΄Π΅Ρ‚ Ρ€Π΅Ρ‡ΡŒ Π² Ρ‚ΠΎΠΌ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΌ случаС, Π»ΡƒΡ‡ΡˆΠ΅ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΈΡ… ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒ.

Π’ΠΈΠ΄Ρ‹ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° Π² ΠΌΠΎΠ΅ΠΌ прСдставлСнии ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‚ΡΡ Π½Π° оптимистов ΠΈ ΠΏΠ°Ρ€Π°Π½ΠΎΠΈΠΊΠΎΠ². ΠžΠΏΡ‚ΠΈΠΌΠΈΡΡ‚Ρ‹ Π½Π΅ Π·Π°ΠΌΠΎΡ€Π°Ρ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΊΠΎΠ΄Π°ΠΌΠΈ ΠΈ слоТными паролями. Ѐамилия, Π΄Π°Ρ‚Π° роТдСния ΠΈΠ»ΠΈ слово β€œqwerty” Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΡ‚Π°Ρ‚ΡŒ ΠΈΡ… ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΌ ΠΎΡ‚ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π° Π² соцсСти ΠΈΠ»ΠΈ элСктронной ΠΏΠΎΡ‡Ρ‚Ρ‹. Π“Π»Π°Π²Π½ΠΎΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Π»ΠΎ Π»Π΅Π³ΠΊΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ.

ΠŸΠ°Ρ€Π°Π½ΠΎΠΈΠΊΠΈ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΡ‹Π²Π°ΡŽΡ‚ слоТныС ΠΏΠ°Ρ€ΠΎΠ»ΠΈ, ΡˆΠΈΡ„Ρ€Ρ‹ ΠΈ ΠΊΠΎΠ΄Ρ‹, выходят Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ со своих устройств ΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹Π΅ сСти, ΠΏΠ°Ρ€ΠΎΠ»ΠΈ хранят Ρƒ ΠΆΠ΅Π½Ρ‹ Π² Ρ‡ΡƒΠ»ΠΊΠ΅. Они всСгда обСспокоСны Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒΡŽ.

Если Π²Ρ‹ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅ΡΡŒ ΠΊ оптимистам, Ρ‚ΠΎ я Π΄ΠΎΠ»ΠΆΠ½Π° вас ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅Π΄ΠΈΡ‚ΡŒ. Π’ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ ΠΈ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ ΠΆΠΈΠ·Π½ΠΈ, довольно ΠΌΠ½ΠΎΠ³ΠΎ ΠΆΠ΅Π»Π°ΡŽΡ‰ΠΈΡ… Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ вашим ΠΏΡ€ΠΎΡΡ‚ΠΎΠ΄ΡƒΡˆΠΈΠ΅ΠΌ, ΡƒΠΊΡ€Π°ΡΡ‚ΡŒ ΠΊΠΎΠ΄Ρ‹ доступа, Π²Π·Π»ΠΎΠΌΠ°Ρ‚ΡŒ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚, ΡΠ½ΡΡ‚ΡŒ дСньги со счСта. Для этого ΡƒΠΆΠ΅ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π½ΠΎ мноТСство тСхничСских срСдств ΠΈ способов Ρ€Π°Π·Π²ΠΎΠ΄Π°.

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ систСмы Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ постоянно ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΡƒΡŽΡ‚ΡΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ ΡˆΠ°Π½ΡΡ‹ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ². Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ сСрвис, сайт, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ стрСмится ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ Π±Ρ‹Π»ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈ приятно.

Π‘ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ для Ρ€Π°Π·Π½Ρ‹Ρ… случаСв появились Ρ‚Π°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ:

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

Как Π²ΠΈΠ΄ΠΈΡ‚Π΅, Π΅ΡΡ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ Π²ΠΈΠ΄Ρ‹ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ для Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ случаСв. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ… ΠΈΠ»ΠΈ нСсколько вмСстС Π² зависимости ΠΎΡ‚ Ρ†Π΅Π»Π΅ΠΉ ΠΈ Π·Π°Π΄Π°Ρ‡.

Π§Π΅ΠΌ двухуровнСвая ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π»ΡƒΡ‡ΡˆΠ΅ ΠΎΠ΄Π½ΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠΉ

Двухфакторная аутСнтификация ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ использованиС сразу Π΄Π²ΡƒΡ… пСрСчислСнных Π²Ρ‹ΡˆΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π·Π°Ρ‰ΠΈΡ‚Ρ‹. НапримСр, ΠΌΡ‹ вставляСм ΠΊΠ°Ρ€Ρ‚Ρƒ Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» ΠΈ Π²Π²ΠΎΠ΄ΠΈΠΌ ПИН-ΠΊΠΎΠ΄. Или Π²Π²ΠΎΠ΄ΠΈΠΌ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΡ‚ страницы Π² соцсСти ΠΈ Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΎΠ΄Π½ΠΎΡ€Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ Π½Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½, привязанный ΠΊ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Ρƒ.

Вакая двойная ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… финансовых Π·Π°Ρ‚Ρ€Π°Ρ‚, ΠΎΠ½Π° довольно простая ΠΈ удобная для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ….

ΠŸΠ°Ρ€Π°Π½ΠΎΠΈΠΊΠΈ ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΄Π°ΠΆΠ΅ Ρ‚Ρ€Π΅Ρ…- ΠΈ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ…ΡƒΡ€ΠΎΠ²Π½Π΅Π²ΡƒΡŽ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ, Π³Π»Π°Π²Π½ΠΎΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ€Π°Π³ΠΈ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ доступ ΠΊ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Но Ρ‚Π°ΠΊΠΈΠ΅ ΠΌΠ΅Ρ€Ρ‹ Ρ‡Π°Ρ‰Π΅ всСго ΡΠ²Π»ΡΡŽΡ‚ΡΡ излишними, Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΡΠ»ΠΎΠΆΠ½ΡΡŽΡ‚ ΠΈ Π·Π°ΠΌΠ΅Π΄Π»ΡΡŽΡ‚ всС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. МоТно ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ двухэтапная ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° – это компромиссноС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ для бСзопасности ΠΈ удобства.

Ошибки Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ: ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ ΠΈ ΠΏΡƒΡ‚ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ

ΠŸΡ€ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΊ сСти Wi-Fi, ΠΎΠ΄Π½ΠΎΠ³ΠΎ устройства ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ Π²Ρ…ΠΎΠ΄Π΅ Π² Π»ΡŽΠ±ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈ Π½Π° сайт ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. Π§Π°Ρ‰Π΅ всСго ΠΎΠ½ΠΈ связаны с Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌΠΈ:

Как Π²ΠΈΠ΄ΠΈΠΌ, ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ. Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ с Π½ΠΈΠΌΠΈ, Π½ΡƒΠΆΠ½ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ запасной ΠΏΠ»Π°Π½, ΡƒΠΌΠ΅Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с настройками ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ устройств ΠΈΠ»ΠΈ Π·Π½Π°Ρ‚ΡŒ Ρ‚ΠΎΠ³ΠΎ, ΠΊΡ‚ΠΎ ΡƒΠΌΠ΅Π΅Ρ‚ это Π΄Π΅Π»Π°Ρ‚ΡŒ.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

НадСюсь, эта ΡΡ‚Π°Ρ‚ΡŒΡ ΠΏΠΎΠΌΠΎΠ³Π»Π° Π²Π°ΠΌ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ с Ρ‚Π΅ΠΌ, для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ½Π° аутСнтификация, ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ Π΅Π΅ Π²ΠΈΠ΄Ρ‹ Π±Ρ‹Π²Π°ΡŽΡ‚. Π’Π°ΠΊΠΆΠ΅ ΠΌΡ‹ обсудили Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ΅ подлинности ΠΈ ΠΏΡƒΡ‚ΠΈ ΠΈΡ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. Если Ρƒ вас Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° конкрСтная ошибка доступа, Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΎΠ± этом Π² коммСнтариях, обсудим.

ΠŸΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°ΠΉΡ‚Π΅ΡΡŒ Π½Π° новости iklife.ru, ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ вмСстС с Π½Π°ΠΌΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ, сСрвисами ΠΈ прилоТСниями, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ΄Ρ‚ΠΈ Π² Π½ΠΎΠ³Ρƒ со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ.

ВсСго Π΄ΠΎΠ±Ρ€ΠΎΠ³ΠΎ. Π”ΠΎ Π½ΠΎΠ²ΠΎΠΉ ΠΏΠΎΠ·Π½Π°Π²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ встрСчи.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

АутСнтификация

АутСнтификация – срСдство Π·Π°Ρ‰ΠΈΡ‚Ρ‹, ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‰Π΅Π΅ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡ‚ΡŒ Π»ΠΈΡ†Π°, ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‰Π΅Π³ΠΎ доступ ΠΊ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ систСмС, ΠΏΡƒΡ‚Π΅ΠΌ сопоставлСния сообщСнного ΠΈΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° ΠΈ ΠΏΡ€Π΅Π΄ΡŠΡΠ²Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ„Π°ΠΊΡ‚ΠΎΡ€Π°.

Для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„Π°ΠΊΡ‚ΠΎΡ€Ρ‹:

β€’ нСкоторая сСкрСтная информация, ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ. Π’Π²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΡΡ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ со свСдСниями, хранящимися Π² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈ Π² случаС совпадСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ пропускаСтся Π² систСму. Π­Ρ‚ΠΎ самый популярный, простой ΠΈ Π½Π°ΠΈΠΌΠ΅Π½Π΅Π΅ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹ΠΉ способ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π΅Π³ΠΎ подлинности. НаиболСС распространСнныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ получСния мошСнниками Ρ‚Π°ΠΊΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ… Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Ρ„ΠΈΡˆΠΈΠ½Π³ΠΎΠΌ ΠΈ Ρ„Π°Ρ€ΠΌΠΈΠ½Π³ΠΎΠΌ;

β€’ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ ΠΈΠ»ΠΈ тСхничСскоС устройство (смарт-ΠΊΠ°Ρ€Ρ‚Π°, USB-Ρ‚ΠΎΠΊΠ΅Π½ ΠΈ ΠΏΡ€.). ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΡƒΡŽ Π·Π°Ρ‰ΠΈΡ‚Ρƒ, Ρ‡Π΅ΠΌ ΠΏΠ°Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ аутСнтификация, Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ ряд нСдостатков. НапримСр, Ρ‚Π°ΠΊΠΎΠΉ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΡ…ΠΈΡ‰Π΅Π½;

ΠŸΡ€ΠΈΡ‡Π΅ΠΌ эти Ρ„Π°ΠΊΡ‚ΠΎΡ€Ρ‹ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π½ΠΎ ΠΈ Π² комплСксС, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ бСзопасности. Π‘ΠΊΠ°ΠΆΠ΅ΠΌ, ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ ΠΈ ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠΈ ΠΏΠ°Π»ΡŒΡ†Π΅Π². Π­Ρ‚ΠΎ называСтся ΠΌΠ½ΠΎΠ³ΠΎΡ„Π°ΠΊΡ‚ΠΎΡ€Π½ΠΎΠΉ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ.

ΠŸΠΎΠ½ΡΡ‚ΠΈΡ «идСнтификация» ΠΈ «аутСнтификация» часто ΠΏΡƒΡ‚Π°ΡŽΡ‚. Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ позволяСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ систСмС своС ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ имя, Π° аутСнтификация Π΄Π°Π΅Ρ‚ Π΅ΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π»ΠΈ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, назвавший это имя, являСтся Ρ‚Π΅ΠΌ, Π·Π° ΠΊΠΎΠ³ΠΎ сСбя Π²Ρ‹Π΄Π°Π΅Ρ‚.

Π’Π°ΠΊΠΆΠ΅ слСдуСт ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Π΅ΠΌ ΠΎΡ‚ этого отличаСтся авторизация. ΠŸΡƒΡ‚Π΅ΠΌ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ систСма провСряСт полномочия ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠ³ΠΎ дСйствия.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

АутСнтификация ΠΈ авторизация Π² микросСрвисных прилоТСниях

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°
Автор: ВячСслав ΠœΠΈΡ…Π°ΠΉΠ»ΠΎΠ², Solutions Architect

Π­Ρ‚ΠΎ вводная Ρ‡Π°ΡΡ‚ΡŒ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°, основанного Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π΅, ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π½Π½ΠΎΠΌ ΠΌΠ½ΠΎΠΉ ΠΏΡ€ΠΎΡˆΠ»Ρ‹ΠΌ Π»Π΅Ρ‚ΠΎΠΌ. ΠŸΠ΅Ρ‡Π°Ρ‚Π½Ρ‹ΠΉ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ большС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Ρ‚.ΠΊ. Π² ΠΎΠ΄Π½ΠΎΠΌ Π΄ΠΎΠΊΠ»Π°Π΄Π΅ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π΅ получаСтся Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΠ±ΠΎ всСх дСталях.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация?

На процСссах Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ основано раздСлСния ΠΏΡ€Π°Π² доступа, Π±Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π΅ обходится Π½ΠΈ ΠΎΠ΄Π½ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΈΠ»ΠΈ ΠΌΠ΅Π½Π΅Π΅ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ происходили Ρ€Π°Π½ΡŒΡˆΠ΅ ΠΈ происходят Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ, ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ, Π½ΠΎ, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΡƒΠ³Π»ΡƒΠ±ΠΈΡ‚ΡŒΡΡ Π² описаниС Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, Π΄Π°Π²Π°ΠΉΡ‚Π΅ разбСрСмся с ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°ΠΌΠΈ.

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ β€” процСсс опрСдСлСния, Ρ‡Ρ‚ΠΎ Π·Π° Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ ΠΏΠ΅Ρ€Π΅Π΄ Π½Π°ΠΌΠΈ. АутСнтификация β€” процСсс подтвСрТдСния, Ρ‡Ρ‚ΠΎ этот Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚ΠΎΡ‚, Π·Π° ΠΊΠΎΠ³ΠΎ сСбя Π²Ρ‹Π΄Π°Π΅Ρ‚. Авторизация β€” процСсс принятия Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ этой Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ пСрсонС Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ Π΄Π΅Π»Π°Ρ‚ΡŒ. Π’ΠΎ Π΅ΡΡ‚ΡŒ, это Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π½Ρ‹Ρ…, ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΈ Π²Π·Π°ΠΈΠΌΠ½ΠΎ Π½Π΅ замСняСмых понятия. Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ часто ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°ΡŽΡ‚ Π² составС Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ. Π‘Π°ΠΌΠΎΠ΅ Π³Π»Π°Π²Π½ΠΎΠ΅ β€” Ρ‡Π΅Ρ‚ΠΊΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π°Ρ‚ΡŒ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΈ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΡŽ.

Π’ Ρ…ΠΎΠ΄Π΅ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΌΡ‹ удостовСряСмся, Ρ‡Ρ‚ΠΎ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΊ Π½Π°ΠΌ ΠΏΡ€ΠΈΡˆΠ΅Π», ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π°ΠΌΠΈ, ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°ΡŽΡ‰ΠΈΠΌΠΈ Π»ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Ρ€Π΅Ρ‡ΡŒ Π² основном ΠΏΠΎΠΉΠ΄Π΅Ρ‚ ΠΊΠ°ΠΊ Ρ€Π°Π· ΠΎΠ± Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ.

Бпособы Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ

ΠŸΡ€ΠΈ использовании HTTP-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠΉ способ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ β€” Basic access authentication. Π’ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅ этот ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» устарСл ΠΈ ΡƒΠΆΠ΅ Ρ€Π΅Π΄ΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅, особСнно Π² Π½Π΅Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹Ρ… соСдинСниях, Π½ΠΎ Π΅Ρ‰Π΅ сохраняСтся Π²ΠΎ Π²Π½ΡƒΡ‚Ρ€ΠΈΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… систСмах, просто ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ… созданы достаточно Π΄Π°Π²Π½ΠΎ. Π‘Ρ‚ΠΎΠΈΡ‚ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ, ΠΊΠ°ΠΊ ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

HTTP Basic Authentication

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠΌΡƒ рСсурсу сСрвСр выдаст ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ, Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‰Π΅ΠΌΡƒ доступа, Π±ΡƒΠ΄Π΅Ρ‚ ошибка 401 Unauthorized. ΠŸΡ€ΠΈ этом ΠΎΡ‚Π²Π΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ содСрТит ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ‚ΠΈΠΏΠ΅ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ (Π² нашСм случаС – Basic), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, ΠΈ контСкст, Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ эта аутСнтификация дСйствуСт (Realm). ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²ΠΎΠ΄ΠΈΡ‚ Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ, ΠΎΠ½ΠΈ ΡƒΠΏΠ°ΠΊΠΎΠ²Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π² Base64 ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ Π½Π° сСрвСр для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ. Π—Π΄Π΅ΡΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ опасности. Бамая распространСнная β€” ΡƒΠ³Ρ€ΠΎΠ·Π° man-in-the-middle attack, ΠΈΠ»ΠΈ Π°Ρ‚Π°ΠΊΠΈ посрСдника, Π² Ρ…ΠΎΠ΄Π΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΈ использовании Π½Π΅Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠ³ΠΎ соСдинСния ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΎΡ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΊ сСрвСру ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ.

HTTP Digest Authentication

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ этапом развития Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ стала Ρ‡ΡƒΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ слоТная систСма HTTP digest authentication, которая ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ Π²ΠΈΠ΄Π΅ β€” здСсь для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ MD5-Ρ…Π΅Ρˆ с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ примСсями, Ρ‡Ρ‚ΠΎ позволяСт ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΠΎΠ΄Π±ΠΎΡ€Π° Π»ΠΎΠ³ΠΈΠ½Π° ΠΈ пароля. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, этот Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ выглядит Π±ΠΎΠ»Π΅Π΅ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌ, Π½ΠΎ ΠΈ ΠΎΠ½ ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½ Ρ†Π΅Π»ΠΎΠΌΡƒ ряду Π½Π΅ самых слоТных Π°Ρ‚Π°ΠΊ. НапримСр, Π²ΠΎΡ‚ Ρ‚ΡƒΡ‚ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ± Π°Ρ‚Π°ΠΊΠ°Ρ… Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ.

Forms Authentication

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

ПозднСС появился процСсс Forms authentication, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ аутСнтификация происходит Π½Π° Π±ΠΎΠ»Π΅Π΅ высоком ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ абстракции. HTTP-сСрвСр ΠΏΡ€ΠΈ этом Π½Π΅ сообщаСт ΠΎΠ± ошибкС доступа, Π° просто пСрСнаправляСт Π½Π΅Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° Π΄Ρ€ΡƒΠ³ΡƒΡŽ страницу. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π° этой страницС ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ поля для Π²Π²ΠΎΠ΄Π° Π»ΠΎΠ³ΠΈΠ½Π° ΠΈ пароля, послС заполнСния ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… формируСтся POST-запрос с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ Ρ‡Π΅Ρ€Π΅Π· Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹ΠΉ ΠΊΠ°Π½Π°Π» направляСтся Π½Π° сСрвСр. БСрвСрная сторона Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Ρ‚ΠΎΠΊΠ΅Π½ ΠΈΠ»ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ сСссии, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сохраняСтся Π² Cookies ΠΈ Π² дальнСйшСм ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для доступа ΠΊ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠΌΡƒ рСсурсу.

Token Authentication

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

На схСмС Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π²ΠΈΠ΄Π½ΠΎ, ΠΊΠ°ΠΊ ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ прилоТСния ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΏΡ€ΠΈ использовании Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ ΠΏΠΎ Ρ‚ΠΎΠΊΠ΅Π½Π°ΠΌ.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

На ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ схСмС Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½Ρ‹ Ρ‚Π΅ этапы взаимодСйствия, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ нСпосрСдствСнноС участиС. Π­Ρ‚ΠΎΡ‚ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΈ являСтся нСдостатком ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ схСмы β€” Π½Π°ΠΌ всСгда Π½ΡƒΠΆΠ΅Π½ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ рСсурсу.
Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

OAuth2 & Open ID Connect

Π”Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ΅Π΅ ΡƒΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π½ΠΈΠ΅ процСсса понадобилось Π²Π²ΠΈΠ΄Ρƒ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠΊΠ΅Π½-аутСнтификация Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ присутствия ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ получСния доступа ΠΊ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠΌΡƒ рСсурсу. ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Identity provider ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ Π΅ΠΌΡƒ управлСния Π±ΡƒΠ΄Π΅Ρ‚ с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ, Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ.

Π’ случаС сСрвиса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΊΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΎΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΈΠΉ Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ рСсурс, β€” допустим, ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ доступ ΠΊ списку ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² Π² ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ сСти β€” Ρ‚ΠΎΠΊΠ΅Π½-аутСнтификация Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΡƒΠΆΠ΅ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ сСссии ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΆΠΈΠ²ΡƒΡ‚ ΠΎΡ‡Π΅Π½ΡŒ Π½Π΅Π΄ΠΎΠ»Π³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² случаС ΠΈΡ… ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Π° Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ доступ ΠΊ сСрвису лишь Π½Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠ΅ врСмя. Но ΠΈΠ·-Π·Π° ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ³ΠΎ срока дСйствия Ρ‚ΠΎΠΊΠ΅Π½Π° Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π° Π½ΠΎΡ‡Π½ΠΎΠΉ процСсс.

Π’ 2006 Π³ΠΎΠ΄Ρƒ Π² Ρ…ΠΎΠ΄Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π°Π΄ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Open ID для Twitter ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ»Π°ΡΡŒ ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΎΡΡ‚ΡŒ Π² Π½ΠΎΠ²ΠΎΠΌ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π΅ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ. Π’ 2007 ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Ρ‹ Google ΠΈ AOL Π½Π°Ρ‡Π°Π»ΠΈ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚Π½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π½Π°Π΄ Π½ΠΈΠΌ, Π° Π² 2009 Twitter ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΠ» своим ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, Π΄Π΅Π»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π²ΡˆΠ΅Π΅ сторонним сСрвисам доступ ΠΊ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°ΠΌ ΠΈ основанноС Π½Π° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π΅ OAuth. Π’Ρ€ΠΈ Π³ΠΎΠ΄Π° спустя Π±Ρ‹Π»Π° ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π° новая вСрсия β€” OAuth 2, ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΠ²ΡˆΠ°Ρ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ клиСнтских ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠ°Ρ Ρ†Π΅Π»Ρ‹ΠΉ ряд Π½ΠΎΠ²Ρ‹Ρ… возмоТностСй, срСди ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… оказалось ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½Π° Π±Π΅Π· участия ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. МногиС сСрвисы Π½Π°Ρ‡Π°Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ этот ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π΅Ρ‰Π΅ Π΄ΠΎ Π΅Π³ΠΎ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ утвСрТдСния.

РазбираСмся Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Ρ…Ρƒ ΠΈΠ· Ρ…Ρƒ

OpenID 1.0 (2006) & OpenID 2.0 (2007) позволяли ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ(Π°Ρ€Π±) Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ Ρƒ Π΄ΠΎΠ²Π΅Ρ€Π΅Π½Π½ΠΎΠ³ΠΎ сСрвСра (authority) ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ(user). ΠžΡ‚Π»ΠΈΡ‡ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρƒ вСрсиями для нас нСсущСствСнны.

Взгляд свСрху

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π² систСмах Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹: ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· Π±Ρ€Π°ΡƒΠ·Π΅Ρ€, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ, Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ с сСрвСром Ρ‡Π΅Ρ€Π΅Π· ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ прилоТСния, ΠΈ просто сСрвСрныС прилоТСния, Π½ΡƒΠΆΠ΄Π°ΡŽΡ‰ΠΈΠ΅ΡΡ Π² ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΡ… Π²Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ…, хранящихся Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΡ… сСрвСрах, доступ ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ осущСствляСтся Ρ‡Π΅Ρ€Π΅Π· Web API.

Single sign-on β€” тСхнология Π΅Π΄ΠΈΠ½ΠΎΠ³ΠΎ Π²Ρ…ΠΎΠ΄Π° β€” позволяСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ прилоТСниями Π±Π΅Π· ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΉ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ SSO ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ мноТСствСнных Π»ΠΎΠ³ΠΈΠ½ΠΎΠ², Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ просто Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚ΡŒ этих ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ. ΠŸΡ€ΠΈ этом ситуации, ΠΊΠΎΠ³Π΄Π° Π² Ρ€Π°ΠΌΠΊΠ°Ρ… вашСй инфраструктуры Ρ‚Π°ΠΊΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π±ΡƒΠ΄Π΅Ρ‚ большС ΠΎΠ΄Π½ΠΎΠ³ΠΎ, Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ постоянно. ВСхнология Π΅Π΄ΠΈΠ½ΠΎΠ³ΠΎ Π²Ρ…ΠΎΠ΄Π° особСнно ΡƒΠ΄ΠΎΠ±Π½Π° Π² Π±ΠΎΠ»ΡŒΡˆΠΈΡ… энтСрпрайз-систСмах, состоящих ΠΈΠ· дСсятков ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, слабо связанных ΠΌΠ΅ΠΆΠ΄Ρƒ собой. Вряд Π»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π΄ΠΎΠ²ΠΎΠ»ΡŒΠ½Ρ‹, вводя Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ систСмС ΡƒΡ‡Π΅Ρ‚Π° Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΌΡƒ Ρ„ΠΎΡ€ΡƒΠΌΡƒ ΠΈΠ»ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ Π±Π°Π·Π΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².

Π’ качСствС Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΡ‹ рассматриваСм ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» OAuth2. Π’ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Kerberos, ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ с Windows, Π½ΠΎ Π² случаС Π³Π΅Ρ‚Π΅Ρ€ΠΎΠ³Π΅Π½Π½ΠΎΠΉ сСти, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ ΠΈ Windows-, ΠΈ Mac-, ΠΈ UNIX-систСмы, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΏΡ€ΠΈΠ΅Ρ‚Π°Ρ€Π½Ρ‹Π΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎ. Π’Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅, это касаСтся случаСв, ΠΊΠΎΠ³Π΄Π° доступ ΠΊ вашим сСрвисам осущСствляСтся Ρ‡Π΅Ρ€Π΅Π· Π²Π΅Π± β€” здСсь OAuth2 оказываСтся Π»ΡƒΡ‡ΡˆΠΈΠΌ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚ΠΎΠΌ.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

На рисункС Π²Ρ‹ΡˆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Ρ‚ΠΈΠΏΠ΅ взаимодСйствия.

Как ΠΌΡ‹ Π·Π½Π°Π΅ΠΌ ΠΈΠ· Ρ€Π°Π·Π΄Π΅Π»Π° «разбираСмся Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Ρ…Ρƒ ΠΈΠ· Ρ…ΡƒΒ», OpenID Π‘onnect Π½ΡƒΠΆΠ΅Π½, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π΅Π³ΠΎ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΈΡ…. OAuth 2.0 Π½ΡƒΠΆΠ΅Π½, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ доступа ΠΈ с Π½ΠΈΠΌΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ рСсурсам.

ВСрминология OAuth2 & OpenID Connect

БСрвис Π²Ρ‹Π΄Π°Ρ‡ΠΈ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ²

Open ID Connect Provider β€” ваТнСйший ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ всСй конструкции Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ сСрвиса Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ, ΠΎΠ½ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ Security Token Service, Identity Provider authorization server ΠΈ Ρ‚. Π΄. Π Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ источники Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ Π΅Π³ΠΎ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ, Π½ΠΎ ΠΏΠΎ смыслу это сСрвис, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹Π΄Π°Π΅Ρ‚ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌ.

ΠšΠ»ΠΈΠ΅Π½Ρ‚

Client β€” устройство ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° (Π±Ρ€Π°ΡƒΠ·Π΅Ρ€, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ трСбуСтся Π»ΠΈΠ±ΠΎ Ρ‚ΠΎΠΊΠ΅Π½ для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π»ΠΈΠ±ΠΎ Ρ‚ΠΎΠΊΠ΅Π½ для доступа ΠΊ ΠΊΠ°ΠΊΠΎΠΌΡƒ-Ρ‚ΠΎ рСсурсу (подразумСваСтся, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹ΠΉ рСсурс Β«Π·Π½Π°ΠΊΠΎΠΌΒ» с Ρ‚Π΅ΠΌ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ Β«Security Token ServiceΒ» Ρƒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ Ρ‚ΠΎΠΊΠ΅Π½ для доступа).

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ

User β€” собствСнно ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ β€” Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ.

ΠžΠ±Π»Π°ΡΡ‚ΡŒ (scope)

Scope β€” ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ рСсурса, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Ρ…ΠΎΡ‡Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ. Бписок scope посылаСтся Π² адрСс сСрвиса Π²Ρ‹Π΄Π°Ρ‡ΠΈ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² Π² составС запроса Π½Π° Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ.

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ всС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ области, Π½ΠΎ это ΠΌΠΎΠΆΠ½ΠΎ (ΠΈ Π½ΡƒΠΆΠ½ΠΎ) ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ сСрвиса Π²Ρ‹Π΄Π°Ρ‡ΠΈ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ².

Scopes Π±Ρ‹Π²Π°ΡŽΡ‚ Π΄Π²ΡƒΡ… Π²ΠΈΠ΄ΠΎΠ²:

Запрос Π½Π° Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ

Authentication/Token Request β€” процСсс запроса Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ.

Π’ΠΎΠΊΠ΅Π½ личности

Identity Token β€” ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ. Π­Ρ‚ΠΎΡ‚ Ρ‚ΠΎΠΊΠ΅Π½ содСрТит ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅.

Π’ΠΎΠΊΠ΅Π½ доступа

Access Token β€” информация, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ Π΄Π΅Π»Π°Ρ‚ΡŒ. ΠšΠ»ΠΈΠ΅Π½Ρ‚ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ Access Token ΠΈ Π·Π°Ρ‚Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π΅Π³ΠΎ для доступа ΠΊ рСсурсам (Web APIs). Access Token содСрТит ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅, Ссли ΠΎΠ½Π° присутствуСт. Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π² процСссС нСпосрСдствСнно Π½Π΅ участвуСт (ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ± этом Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ части)

ВокСн обновлСния

Refresh Token β€” Ρ‚ΠΎΠΊΠ΅Π½, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ STS Π²Π΅Ρ€Π½Π΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ Access Token. Π’ зависимости ΠΎΡ‚ Ρ€Π΅ΠΆΠΈΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹, Refresh Token ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎΡ€Π°Π·ΠΎΠ²Ρ‹ΠΌ ΠΈ ΠΎΠ΄Π½ΠΎΡ€Π°Π·ΠΎΠ²Ρ‹ΠΌ. Π’ случаС с ΠΎΠ΄Π½ΠΎΡ€Π°Π·ΠΎΠ²Ρ‹ΠΌ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠΌ, ΠΏΡ€ΠΈ запросС Π½ΠΎΠ²ΠΎΠ³ΠΎ Access Token Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ сформирован Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ Refresh Token, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΌ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ. ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ΄Π½ΠΎΡ€Π°Π·ΠΎΠ²Ρ‹Π΅ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ Π±ΠΎΠ»Π΅Π΅ бСзопасны.

Π‘ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΎ составС Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ «структура Ρ‚ΠΎΠΊΠ΅Π½Π°Β».

ΠŸΡ€ΠΎΡ†Π΅ΡΡ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

ΠŸΡ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΊ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ, Ρ‚ΠΎΡ‚ пСрСнаправляСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° Open ID Connect Provider, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ. Π’ случаС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ прохоТдСния ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΎΠ½ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π½Π°Π·Π°Π΄ identity token ΠΈ access token, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠΌΡƒ рСсурсу.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Ρ‚ΠΎΠΊΠ΅Π½Π°

Π€ΠΎΡ€ΠΌΠ°Ρ‚

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

Π’ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ OAuth2 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ jwt-Ρ‚ΠΎΠΊΠ΅Π½, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ состоит ΠΈΠ· Ρ‚Ρ€Π΅Ρ… частСй. Допустим, ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ Identity provider Π²Ρ‹ отправляСтС Π»ΠΎΠ³ΠΈΠ½/ΠΏΠ°Ρ€ΠΎΠ»ΡŒ ΠΈ Π² ΠΎΡ‚Π²Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚Π΅ Ρ‚ΠΎΠΊΠ΅Π½. Он Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² сСбя: Header (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ), Payload (ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚) ΠΈ Signature (подпись). На сайтС jwt.io Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ содСрТимоС Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ JSON. На этом сайтС Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ описаниС ΠΏΡ€Π°Π²ΠΈΠ» формирования jwt-Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ².

Π’ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ Π² процСссС ΠΎΠ±ΠΌΠ΅Π½Π° ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Π½Π΅Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ, Π½ΠΈΡ‡Π΅Π³ΠΎ ΡΡ‚Ρ€Π°ΡˆΠ½ΠΎΠ³ΠΎ Π½Π΅Ρ‚. ΠœΡ‹ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ исходим ΠΈΠ· прСдполоТСния, Ρ‡Ρ‚ΠΎ коммуникация происходит ΠΏΠΎ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠΌΡƒ HTTPS-ΠΊΠ°Π½Π°Π»Ρƒ, ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ΅ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½Π° Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½Ρ‹ΠΌ. ЕдинствСнноС, Π² Ρ‡Π΅ΠΌ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ – Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠΊΠ΅Π½ Π½Π΅ Π±Ρ‹Π» ΠΏΠΎΠ΄ΠΌΠ΅Π½Π΅Π½ ΠΈΠ»ΠΈ ΡΡ„Π°Π»ΡŒΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½ Π½Π° клиСнтской сторонС, для этого достаточно ΠΈΠΌΠ΅Ρ‚ΡŒ подпись ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π΅Π΅ Π½Π° сСрвСрС. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρ‚ΠΎΠΊΠ΅Π½ Π½Π΅ содСрТит Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ критичСски Π²Π°ΠΆΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

ΠšΡ€ΠΎΠΌΠ΅ identity tokens, Π΅ΡΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΈ Π°ccess tokens, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ содСрТат ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Π²Ρ‹Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΠΊΠ»Π΅ΠΉΠΌΠ°Ρ…. Π‘Ρ€ΠΎΠΊ дСйствия access token достаточно ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π΅Π³ΠΎ Ρ…ΠΈΡ‰Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ нСсанкционированный доступ ΠΊ рСсурсу. Π’. Π΅. Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ, Ссли Π΅ΠΌΡƒ удастся Π·Π°ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ‚ΠΎΠΊΠ΅Π½ этого Ρ‚ΠΈΠΏΠ°, доступ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ Π½Π° ΠΎΡ‡Π΅Π½ΡŒ Π½Π΅ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ врСмя. Для получСния Π½ΠΎΠ²ΠΎΠ³ΠΎ access token ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ refresh token, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π΅ Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΡƒΠ΅Ρ‚ Π² Π½Π΅Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹Ρ… срСдах, Π² частности Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ доступа ΠΈΠ· Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° ΠΎΠ½ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ. КакиС ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½Ρ‹ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ Π² процСссС Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ, разбСрСмся Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ части.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ поля

ΠšΡ€Π°Ρ‚ΠΊΠΎ остановимся Π½Π° Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ Π΅ΡΡ‚ΡŒ стандартныС полях Π² Ρ‚ΠΎΠΊΠ΅Π½Π΅ ΠΈ Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½ΠΈ Π½ΡƒΠΆΠ½Ρ‹:

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π²ΠΎΠΉ части

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ ΠΏΠΎΡΡ‚Π°Ρ€Π°Π»ΠΈΡΡŒ Π΄Π°Ρ‚ΡŒ тСорСтичСский ΠΈ тСрминологичСский Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ понадобится Π½Π°ΠΌ создании Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΡΡ‚Π°Ρ‚ΡŒΡΡ….

Минимальная рСализация интСграция Identity Server Π² вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ выглядит Ρ‚Π°ΠΊ:

Минимальная рСализация ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Π²Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° с Identity Server:

Минимальная рСализация ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Π²Π΅Π±-API с Identity Server:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠžΠ±Π·ΠΎΡ€ способов ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π² Π²Π΅Π±-прилоТСниях

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

Π― расскаТу ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… способов Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ для Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΏΠΎ ΠΏΠ°Ρ€ΠΎΠ»ΡŽ, ΠΏΠΎ сСртификатам, ΠΏΠΎ ΠΎΠ΄Π½ΠΎΡ€Π°Π·ΠΎΠ²Ρ‹ΠΌ паролям, ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Π°ΠΌ доступа ΠΈ ΠΏΠΎ Ρ‚ΠΎΠΊΠ΅Π½Π°ΠΌ. ΠšΠΎΡΠ½ΡƒΡΡŒ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π΅Π΄ΠΈΠ½ΠΎΠ³ΠΎ Π²Ρ…ΠΎΠ΄Π° (Single Sign-On), Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€ΡŽ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ стандарты ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ.

ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ тСхничСским дСталям, Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ освСТим Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΡŽ.

Аналогично эти Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… систСмах, Π³Π΄Π΅ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ ΠΏΠΎΠ΄ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡŽΡ‚ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ вашСй ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи (identity) ΠΏΠΎ username ΠΈΠ»ΠΈ email; ΠΏΠΎΠ΄ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ β€” ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ ΠΎΡ‚ этой ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи, Π° ΠΏΠΎΠ΄ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ β€” ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ вашСй Ρ€ΠΎΠ»ΠΈ Π² систСмС ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΎ прСдоставлСнии доступа ΠΊ Π·Π°ΠΏΡ€ΠΎΡˆΠ΅Π½Π½ΠΎΠΉ страницС ΠΈΠ»ΠΈ рСсурсу.

Однако Π² соврСмСнных систСмах ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΈ Π±ΠΎΠ»Π΅Π΅ слоТныС схСмы Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… я расскаТу Π΄Π°Π»Π΅Π΅. Но Π½Π°Ρ‡Π½Π΅ΠΌ с простого ΠΈ понятного.

АутСнтификация ΠΏΠΎ ΠΏΠ°Ρ€ΠΎΠ»ΡŽ

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ основываСтся Π½Π° Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ username ΠΈ password для ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π² систСмС. ΠŸΠ°Ρ€Π° username/password задаСтся ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΏΡ€ΠΈ Π΅Π³ΠΎ рСгистрации Π² систСмС, ΠΏΡ€ΠΈ этом Π² качСствС username ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ адрСс элСктронной ΠΏΠΎΡ‡Ρ‚Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ Π²Π΅Π±-прилоТСниям, сущСствуСт нСсколько стандартных ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΏΠ°Ρ€ΠΎΠ»ΡŽ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ рассмотрим Π½ΠΈΠΆΠ΅.

HTTP authentication

Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ», описанный Π² стандартах HTTP 1.0/1.1, сущСствуСт ΠΎΡ‡Π΅Π½ΡŒ Π΄Π°Π²Π½ΠΎ ΠΈ Π΄ΠΎ сих ΠΏΠΎΡ€ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ примСняСтся Π² ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ срСдС. ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ Π²Π΅Π±-сайтам Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Π’Π΅ΡΡŒ процСсс стандартизирован ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠΎ поддСрТиваСтся всСми Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°ΠΌΠΈ ΠΈ Π²Π΅Π±-сСрвСрами. БущСствуСт нСсколько схСм Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ, ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‰ΠΈΡ…ΡΡ ΠΏΠΎ ΡƒΡ€ΠΎΠ²Π½ΡŽ бСзопасности:

Forms authentication

Для этого ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Π½Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ стандарта, поэтому всС Π΅Π³ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ спСцифичны для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… систСм, Π° Ρ‚ΠΎΡ‡Π½Π΅Π΅, для ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Π Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ это ΠΏΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ: Π² Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ HTML-Ρ„ΠΎΡ€ΠΌΠ°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ ввСсти свои username/password ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΈΡ… Π½Π° сСрвСр Ρ‡Π΅Ρ€Π΅Π· HTTP POST для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ. Π’ случаС успСха Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ создаСт session token, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ помСщаСтся Π² browser cookies. ΠŸΡ€ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π²Π΅Π±-запросах session token автоматичСски пСрСдаСтся Π½Π° сСрвСр ΠΈ позволяСт ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ запроса.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°
ΠŸΡ€ΠΈΠΌΠ΅Ρ€ forms authentication.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ session token двумя способами:

Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΏΠ°Ρ€ΠΎΠ»ΡŽ

Π”Π²Π° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°, описанных Π²Ρ‹ΡˆΠ΅, ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π° Π²Π΅Π±-сайтах. Но ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с использованиСм Π²Π΅Π±-сСрвисов (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, iOS ΠΈΠ»ΠΈ Android), наряду с HTTP Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ, часто ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ нСстандартныС ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Π΅ для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… частях запроса.

БущСствуСт всСго нСсколько мСст, Π³Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ username ΠΈ password Π² HTTP запросах:

РаспространСнныС уязвимости ΠΈ ошибки Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ

АутСнтификации ΠΏΠΎ ΠΏΠ°Ρ€ΠΎΠ»ΡŽ считаСтся Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌ способом, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ часто ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒ, Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ склонны ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ простыС ΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ Π² Ρ€Π°Π·Π½Ρ‹Ρ… систСмах, Π»ΠΈΠ±ΠΎ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΈΡ… Π½Π° ΠΊΠ»ΠΎΡ‡ΠΊΠ°Ρ… Π±ΡƒΠΌΠ°Π³ΠΈ. Если Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ смог Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ, Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ ΠΎΠ± этом Π½Π΅ ΡƒΠ·Π½Π°Π΅Ρ‚. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΌΠΎΠ³ΡƒΡ‚ Π΄ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ряд ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ошибок, ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‰ΠΈΡ… Π²Π·Π»ΠΎΠΌ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Ρ… записСй.

НиТС прСдставлСн список Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‰ΠΈΡ…ΡΡ уязвимостСй Π² случаС использования Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΏΠ°Ρ€ΠΎΠ»ΡŽ:

АутСнтификация ΠΏΠΎ сСртификатам

Π‘Π΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ прСдставляСт собой Π½Π°Π±ΠΎΡ€ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ², ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°, подписанный certificate authority (CA). CA выступаСт Π² Ρ€ΠΎΠ»ΠΈ посрСдника, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡ‚ΡŒ сСртификатов (ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ с ЀМБ, Π²Ρ‹ΠΏΡƒΡΠΊΠ°ΡŽΡ‰Π΅ΠΉ паспорта). Π’Π°ΠΊΠΆΠ΅ сСртификат криптографичСски связан с Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ ΠΊΠ»ΡŽΡ‡ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ хранится Ρƒ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° сСртификата ΠΈ позволяСт ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚ΡŒ Ρ„Π°ΠΊΡ‚ владСния сСртификатом.

На сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° сСртификат вмСстС с Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ ΠΊΠ»ΡŽΡ‡ΠΎΠΌ ΠΌΠΎΠ³ΡƒΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС, Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅, Π² Ρ„Π°ΠΉΠ»Π΅, Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ физичСском устройствС (smart card, USB token). ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½ ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΌ ΠΈΠ»ΠΈ PIN-ΠΊΠΎΠ΄ΠΎΠΌ.

Π’ Π²Π΅Π±-прилоТСниях Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ сСртификаты стандарта X.509. АутСнтификация с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ X.509-сСртификата происходит Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ соСдинСния с сСрвСром ΠΈ являСтся Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° SSL/TLS. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΎ поддСрТиваСтся Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ сСртификат, Ссли Π²Π΅Π±-сайт допускаСт Ρ‚Π°ΠΊΠΎΠΉ способ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°
ИспользованиС сСртификата для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ.

Π’ΠΎ врСмя Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ сСрвСр выполняСт ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ сСртификата Π½Π° основании ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€Π°Π²ΠΈΠ»:

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°
ΠŸΡ€ΠΈΠΌΠ΅Ρ€ X.509 сСртификата.

ПослС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΡŽ запроса Π½Π° основании Ρ‚Π°ΠΊΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ… сСртификата, ΠΊΠ°ΠΊ subject (имя Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°), issuer (эмитСнт), serial number (сСрийный Π½ΠΎΠΌΠ΅Ρ€ сСртификата) ΠΈΠ»ΠΈ thumbprint (ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΎΠΊ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° сСртификата).

ИспользованиС сСртификатов для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ β€” ΠΊΡƒΠ΄Π° Π±ΠΎΠ»Π΅Π΅ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΉ способ, Ρ‡Π΅ΠΌ аутСнтификация посрСдством ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ. Π­Ρ‚ΠΎ достигаСтся созданиСм Π² процСссС Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ подписи, Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΄ΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ„Π°ΠΊΡ‚ примСнСния Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ситуации (non-repudiation). Однако трудности с распространСниСм ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ сСртификатов Π΄Π΅Π»Π°Π΅Ρ‚ Ρ‚Π°ΠΊΠΎΠΉ способ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ малодоступным Π² ΡˆΠΈΡ€ΠΎΠΊΠΈΡ… ΠΊΡ€ΡƒΠ³Π°Ρ….

АутСнтификация ΠΏΠΎ ΠΎΠ΄Π½ΠΎΡ€Π°Π·ΠΎΠ²Ρ‹ΠΌ паролям

АутСнтификация ΠΏΠΎ ΠΎΠ΄Π½ΠΎΡ€Π°Π·ΠΎΠ²Ρ‹ΠΌ паролям ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ примСняСтся Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎ паролям для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ two-factor authentication (2FA). Π’ этой ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² для Π²Ρ…ΠΎΠ΄Π° Π² систСму: Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π·Π½Π°Π΅Ρ‚ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠ°Ρ€ΠΎΠ»ΡŒ), ΠΈ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ, Ρ‡Π΅ΠΌ ΠΎΠ½ Π²Π»Π°Π΄Π΅Π΅Ρ‚ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, устройство для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΎΠ΄Π½ΠΎΡ€Π°Π·ΠΎΠ²Ρ‹Ρ… ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ). НаличиС Π΄Π²ΡƒΡ… Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ² позволяСт Π² Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ стСпСни ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ бСзопасности, Ρ‡Ρ‚ΠΎ ΠΌ. Π±. вострСбовано для ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π²ΠΈΠ΄ΠΎΠ² Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

Π”Ρ€ΡƒΠ³ΠΎΠΉ популярный сцСнарий использования ΠΎΠ΄Π½ΠΎΡ€Π°Π·ΠΎΠ²Ρ‹Ρ… ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ β€” Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ аутСнтификация ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π²ΠΎ врСмя выполнСния Π²Π°ΠΆΠ½Ρ‹Ρ… дСйствий: ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ Π΄Π΅Π½Π΅Π³, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ настроСк ΠΈ Ρ‚. ΠΏ.

Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Π΅ источники для создания ΠΎΠ΄Π½ΠΎΡ€Π°Π·ΠΎΠ²Ρ‹Ρ… ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ. НаиболСС популярныС:

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°
Аппаратный Ρ‚ΠΎΠΊΠ΅Π½ RSA SecurID Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ 30 сСкунд.

Π’ Π²Π΅Π±-прилоТСниях Ρ‚Π°ΠΊΠΎΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ часто рСализуСтся посрСдством Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ forms authentication: послС ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠΉ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΏΠ°Ρ€ΠΎΠ»ΡŽ, создаСтся сСссия ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΎΠ΄Π½Π°ΠΊΠΎ Π² контСкстС этой сСссии ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ доступа ΠΊ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° ΠΎΠ½ Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΡ€Π°Π·ΠΎΠ²ΠΎΠΌΡƒ ΠΏΠ°Ρ€ΠΎΠ»ΡŽ.

АутСнтификация ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Π°ΠΌ доступа

Π­Ρ‚ΠΎΡ‚ способ Ρ‡Π°Ρ‰Π΅ всСго ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ устройств, сСрвисов ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ Π²Π΅Π±-сСрвисам. Π—Π΄Π΅ΡΡŒ Π² качСствС сСкрСта ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ ΠΊΠ»ΡŽΡ‡ΠΈ доступа (access key, API key) β€” Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ строки, содСрТащиС ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ символов, ΠΏΠΎ сути Π·Π°ΠΌΠ΅Π½ΡΡŽΡ‰ΠΈΠ΅ собой ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ username/password.

Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв, сСрвСр Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠ»ΡŽΡ‡ΠΈ доступа ΠΏΠΎ запросу ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π°Π»Π΅Π΅ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ эти ΠΊΠ»ΡŽΡ‡ΠΈ Π² клиСнтских прилоТСниях. ΠŸΡ€ΠΈ создании ΠΊΠ»ΡŽΡ‡Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ΡŒ срок дСйствия ΠΈ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ доступа, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ клиСнтскоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этого ΠΊΠ»ΡŽΡ‡Π°.

Π₯ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ примСнСния Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Ρƒ β€” ΠΎΠ±Π»Π°ΠΊΠΎ Amazon Web Services. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π΅ΡΡ‚ΡŒ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π΅ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΈ, ΠΈ ΠΎΠ½ Ρ…ΠΎΡ‡Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ сСрвис Amazon S3 для хранСния Ρ„Π°ΠΉΠ»ΠΎΠ². Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Ρ‡Π΅Ρ€Π΅Π· консоль AWS ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠ»ΡŽΡ‡, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ доступ ΠΊ ΠΎΠ±Π»Π°ΠΊΡƒ: Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅/запись Π΅Π³ΠΎ Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Amazon S3. Π­Ρ‚ΠΎΡ‚ ΠΊΠ»ΡŽΡ‡ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π²Π΅Π±-прилоТСния Π² ΠΎΠ±Π»Π°ΠΊΠ΅ AWS.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°
ΠŸΡ€ΠΈΠΌΠ΅Ρ€ примСнСния Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Ρƒ.

ИспользованиС ΠΊΠ»ΡŽΡ‡Π΅ΠΉ позволяСт ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ пароля ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ сторонним прилоТСниям (Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‹ΡˆΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ сохранил Π² Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π½Π΅ свой ΠΏΠ°Ρ€ΠΎΠ»ΡŒ, Π° ΠΊΠ»ΡŽΡ‡ доступа). ΠšΠ»ΡŽΡ‡ΠΈ ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ большСй энтропиСй ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с паролями, поэтому ΠΈΡ… практичСски Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ссли ΠΊΠ»ΡŽΡ‡ Π±Ρ‹Π» раскрыт, это Π½Π΅ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΊΠΎΠΌΠΏΡ€ΠΎΠΌΠ΅Ρ‚Π°Ρ†ΠΈΠΈ основной ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ β€” достаточно лишь Π°Π½Π½ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ этот ΠΊΠ»ΡŽΡ‡ ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ.

Π‘ тСхничСской Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния, здСсь Π½Π΅ сущСствуСт Π΅Π΄ΠΈΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°: ΠΊΠ»ΡŽΡ‡ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒΡΡ Π² Ρ€Π°Π·Π½Ρ‹Ρ… частях HTTP-запроса: URL query, request body ΠΈΠ»ΠΈ HTTP header. Как ΠΈ Π² случаС Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΏΠ°Ρ€ΠΎΠ»ΡŽ, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ β€” использованиС HTTP header. Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ HTTP-схСму Bearer для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Ρ‚ΠΎΠΊΠ΅Π½Π° Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ (Authorization: Bearer [token]). Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Π° ΠΊΠ»ΡŽΡ‡Π΅ΠΉ, соСдинСниС с сСрвСром Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ SSL/TLS.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°
ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Ρƒ доступа, ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π² HTTP Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ слоТныС схСмы Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Π°ΠΌ для Π½Π΅Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹Ρ… соСдинСний. Π’ этом случаС, ΠΊΠ»ΡŽΡ‡ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ состоит ΠΈΡ… Π΄Π²ΡƒΡ… частСй: ΠΏΡƒΠ±Π»ΠΈΡ‡Π½ΠΎΠΉ ΠΈ сСкрСтной. ΠŸΡƒΠ±Π»ΠΈΡ‡Π½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, Π° сСкрСтная Ρ‡Π°ΡΡ‚ΡŒ позволяСт ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ подпись. НапримСр, ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ с digest authentication схСмой, сСрвСр ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡΠ»Π°Ρ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ nonce ΠΈΠ»ΠΈ timestamp, Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚ β€” Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Ρ…ΡΡˆ ΠΈΠ»ΠΈ HMAC этого значСния, вычислСнный с использованиСм сСкрСтной части ΠΊΠ»ΡŽΡ‡Π°. Π­Ρ‚ΠΎ позволяСт ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ всСго ΠΊΠ»ΡŽΡ‡Π° Π² ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠΌ Π²ΠΈΠ΄Π΅ ΠΈ Π·Π°Ρ‰ΠΈΡ‰Π°Π΅Ρ‚ ΠΎΡ‚ replay attacks.

АутСнтификация ΠΏΠΎ Ρ‚ΠΎΠΊΠ΅Π½Π°ΠΌ

Π’Π°ΠΊΠΎΠΉ способ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Ρ‡Π°Ρ‰Π΅ всСго примСняСтся ΠΏΡ€ΠΈ построСнии распрСдСлСнных систСм Single Sign-On (SSO), Π³Π΄Π΅ ΠΎΠ΄Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (service provider ΠΈΠ»ΠΈ relying party) Π΄Π΅Π»Π΅Π³ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ (identity provider ΠΈΠ»ΠΈ authentication service). Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ этого способа β€” Π²Ρ…ΠΎΠ΄ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· ΡƒΡ‡Π΅Ρ‚Π½ΡƒΡŽ запись Π² ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… сСтях. Π—Π΄Π΅ΡΡŒ ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ сСти ΡΠ²Π»ΡΡŽΡ‚ΡΡ сСрвисами Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ, Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ довСряСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ сСтям.

РСализация этого способа Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ identity provider (IP) прСдоставляСт достовСрныС свСдСния ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ Π² Π²ΠΈΠ΄Π΅ Ρ‚ΠΎΠΊΠ΅Π½Π°, Π° service provider (SP) ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ этот Ρ‚ΠΎΠΊΠ΅Π½ для ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ, Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.
На ΠΎΠ±Ρ‰Π΅ΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅, вСсь процСсс выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°
ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Β«Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎΒ» ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Ρ‚ΠΎΠΊΠ΅Π½Π°, ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½ΠΎΠ³ΠΎ посрСдством Bearer схСмы.

ΠŸΡ€ΠΎΡ†Π΅ΡΡ, описанный Π²Ρ‹ΡˆΠ΅, ΠΎΡ‚Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, Ρ‚. Π΅. Ρ‚Π°ΠΊΠΎΠ³ΠΎ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ дСйствий (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, iOS/Android прилоТСния). Π‘Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΆΠ΅ β€” пассивный ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π² Ρ‚ΠΎΠΌ смыслС, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ страницы, Π·Π°ΠΏΡ€ΠΎΡˆΠ΅Π½Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ. Π’ этом случаС аутСнтификация достигаСтся посрСдством автоматичСского пСрСнаправлСния Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Π΅Π±-прилоТСниями identity provider ΠΈ service provider.

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°
ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ «пассивного» ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° посрСдством пСрСнаправлСния запросов.

БущСствуСт нСсколько стандартов, Π² точности ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» взаимодСйствия ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ (Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ ΠΈ пассивными) ΠΈ IP/SP-прилоТСниями ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ². Π‘Ρ€Π΅Π΄ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ популярных стандартов β€” OAuth, OpenID Connect, SAML, ΠΈ WS-Federation. НСкоторая информация ΠΎΠ± этих ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°Ρ… β€” Π½ΠΈΠΆΠ΅ Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅.

Π‘Π°ΠΌ Ρ‚ΠΎΠΊΠ΅Π½ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ прСдставляСт собой структуру Π΄Π°Π½Π½Ρ‹Ρ…, которая содСрТит ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, ΠΊΡ‚ΠΎ сгСнСрировал Ρ‚ΠΎΠΊΠ΅Π½, ΠΊΡ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π»Π΅ΠΌ Ρ‚ΠΎΠΊΠ΅Π½Π°, срок дСйствия, Π½Π°Π±ΠΎΡ€ свСдСний ΠΎ самом ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ (claims). ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρ‚ΠΎΠΊΠ΅Π½ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ подписываСтся для прСдотвращСния нСсанкционированных ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΉ подлинности.

ΠŸΡ€ΠΈ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚ΠΎΠΊΠ΅Π½Π° SP-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ:

Π’ случаС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ SP-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ выполняСт Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΡŽ запроса Π½Π° основании Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅, содСрТащихся Π² Ρ‚ΠΎΠΊΠ΅Π½Π΅.

Π€ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ²

БущСствуСт нСсколько распространСнных Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² для Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ SWT Ρ‚ΠΎΠΊΠ΅Π½Π° (послС дСкодирования).

Issuer=http://auth.myservice.com&
Audience=http://myservice.com&
ExpiresOn=1435937883&
UserName=John Smith&
UserRole=Admin&
HMACSHA256=KOUQRPSpy64rvT2KnYyQKtFFXUIggnesSpE7ADA4o9w

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ подписанного JWT Ρ‚ΠΎΠΊΠ΅Π½Π° (послС дСкодирования 1 ΠΈ 2 Π±Π»ΠΎΠΊΠΎΠ²).

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ SAML

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ Security Assertion Markup Language (SAML) описываСт способы взаимодСйствия ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ identity provider ΠΈ service provider для ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ посрСдством Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ². Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ вСрсии 1.0 ΠΈ 1.1 Π±Ρ‹Π»ΠΈ Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Ρ‹ Π² 2002 – 2003 Π³Π³., Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ вСрсия 2.0, Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°ΡΡˆΠΈΡ€ΡΡŽΡ‰Π°Ρ стандарт ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ нСсовмСстимая, ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π° Π² 2005 Π³.

Π­Ρ‚ΠΎΡ‚ ΠΎΡΠ½ΠΎΠ²ΠΎΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‰ΠΈΠΉ стандарт β€” достаточно слоТный ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… сцСнариСв ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ систСм. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Β«ΡΡ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π±Π»ΠΎΠΊΠΈΒ» стандарта:

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, стандарт опрСдСляСт Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΌΠ΅Ρ‚Π°ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ участниками, которая Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ список ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Ρ€ΠΎΠ»Π΅ΠΉ, ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ², Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ², ΠΊΠ»ΡŽΡ‡ΠΈ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ ΠΈ Ρ‚. ΠΏ.

Рассмотрим ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования SAML для сцСнария Single Sign-On. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Ρ…ΠΎΡ‡Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ Π½Π° Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹ΠΉ рСсурс сСрвис-ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π° (шаг β„– 1 Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ пассивных ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ²). Π’. ΠΊ. ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π΅ Π±Ρ‹Π» Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½, SP отправляСт Π΅Π³ΠΎ Π½Π° сайт identity provider’а для создания Ρ‚ΠΎΠΊΠ΅Π½Π° (шаг β„– 2). НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΡ‚Π²Π΅Ρ‚Π° SP, Π³Π΄Π΅ послСдний ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ SAML HTTP Redirect binding для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ сообщСния с запросом Ρ‚ΠΎΠΊΠ΅Π½Π°:

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

Π’ случаС Ρ‚Π°ΠΊΠΎΠ³ΠΎ запроса, identity provider Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (шаги β„–3-4), послС Ρ‡Π΅Π³ΠΎ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚ΠΎΠΊΠ΅Π½. НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΡ‚Π²Π΅Ρ‚Π° IP с использованиСм HTTP POST binding (шаг β„– 5):

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ автоматичСски ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ эту Ρ„ΠΎΡ€ΠΌΡƒ Π½Π° сайт service provider’а (шаг β„– 6), послСдний Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚ΠΎΠΊΠ΅Π½ ΠΈ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. По Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ запроса ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ доступ ΠΊ Π·Π°ΠΏΡ€ΠΎΡˆΠ΅Π½Π½ΠΎΠΌΡƒ рСсурсу (шаг β„– 7).

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Ρ‹ WS-Trust ΠΈ WS-Federation

WS-Trust ΠΈ WS-Federation входят Π² Π³Ρ€ΡƒΠΏΠΏΡƒ стандартов WS-*, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΡ… SOAP/XML-Π²Π΅Π± сСрвисы. Π­Ρ‚ΠΈ стандарты Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π³Ρ€ΡƒΠΏΠΏΠΎΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ, ΠΊΡƒΠ΄Π° входят Microsoft, IBM, VeriSign ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅. Наряду с SAML, эти стандарты достаточно слоТныС, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ прСимущСствСнно Π² ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… сцСнариях.

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ WS-Trust описываСт интСрфСйс сСрвиса Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΈΠΌΠ΅Π½ΡƒΠ΅ΠΌΠΎΠ³ΠΎ Secure Token Service (STS). Π­Ρ‚ΠΎΡ‚ сСрвис Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ SOAP ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ созданиС, ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈ Π°Π½Π½ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ². ΠŸΡ€ΠΈ этом стандарт допускаСт использованиС Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°, ΠΎΠ΄Π½Π°ΠΊΠΎ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ Π² основном ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ SAML-Ρ‚ΠΎΠΊΠ΅Π½Ρ‹.

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ WS-Federation касаСтся ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² взаимодСйствия сСрвисов ΠΌΠ΅ΠΆΠ΄Ρƒ компаниями, Π² частности, ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² ΠΎΠ±ΠΌΠ΅Π½Π° Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ². ΠŸΡ€ΠΈ этом WS-Federation Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ интСрфСйс сСрвиса STS, описанного Π² стандартС WS-Trust. Π‘Ρ€Π΅Π΄ΠΈ ΠΏΡ€ΠΎΡ‡Π΅Π³ΠΎ, стандарт WS-Federation опрСдСляСт:

МоТно ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ WS-Federation позволяСт Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Ρ‚Π΅ ΠΆΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ, Ρ‡Ρ‚ΠΎ ΠΈ SAML, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΈΡ… ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹ ΠΈ рСализация Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ стСпСни ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ.

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Ρ‹ OAuth ΠΈ OpenID Connect

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ SAML ΠΈ WS-Federation, стандарт OAuth (Open Authorization) Π½Π΅ описываСт ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. ВмСсто этого ΠΎΠ½ опрСдСляСт ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ получСния доступа ΠΎΠ΄Π½ΠΎΠ³ΠΎ прилоТСния ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Однако ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ схСмы, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° Π±Π°Π·Π΅ этого стандарта (ΠΎΠ± этом β€” Π½ΠΈΠΆΠ΅).

ΠŸΠ΅Ρ€Π²Π°Ρ вСрсия стандарта Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π»Π°ΡΡŒ Π² 2007 – 2010 Π³Π³., Π° тСкущая вСрсия 2.0 ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π° Π² 2012 Π³. ВСрсия 2.0 Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ ΠΈ Π² Ρ‚ΠΎ ΠΆΠ΅ врСмя ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ стандарт, Π½ΠΎ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ нСсовмСстима с вСрсиСй 1.0. БСйчас OAuth 2.0 ΠΎΡ‡Π΅Π½ΡŒ популярСн ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ повсСмСстно для прСдоставлСния Π΄Π΅Π»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ доступа ΠΈ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅-стороннСй Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

Π§Ρ‚ΠΎΠ±Ρ‹ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ½ΡΡ‚ΡŒ сам стандарт, рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π²Π΅Π±-прилоТСния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡƒΡ‚Π΅ΡˆΠ΅ΡΡ‚Π²ΠΈΡ. Как Ρ‡Π°ΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΎΠ½ΠΎ ΡƒΠΌΠ΅Π΅Ρ‚ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΡ‡Ρ‚Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ писСм с подтвСрТдСниями Π±Ρ€ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΉ ΠΈ автоматичСски Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΈΡ… Π² ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚. Π’ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ вопрос, ΠΊΠ°ΠΊ это Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ бСзопасно ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ ΠΏΠΎΡ‡Ρ‚Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊ Gmail?

> ΠŸΠΎΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ своСй ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи? β€” ΠΏΠ»ΠΎΡ…ΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚.
> ΠŸΠΎΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠ»ΡŽΡ‡ доступа? β€” Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π½ΠΎ вСсьма слоТно.

Как Ρ€Π°Π· эту ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ ΠΈ позволяСт Ρ€Π΅ΡˆΠΈΡ‚ΡŒ стандарт OAuth: ΠΎΠ½ описываСт, ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡƒΡ‚Π΅ΡˆΠ΅ΡΡ‚Π²ΠΈΠΉ (client) ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ ΠΏΠΎΡ‡Ρ‚Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (resource server) с Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (resource owner). Π’ ΠΎΠ±Ρ‰Π΅ΠΌ Π²ΠΈΠ΄Π΅ вСсь процСсс состоит ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… шагов:

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π€ΠΎΡ‚ΠΎ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ аутСнтификация ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°
ВзаимодСйствиС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Π² стандартС OAuth.

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ описываСт Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ Π²ΠΈΠ΄Π° Π³Ρ€Π°Π½Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ сцСнарии примСнСния:

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ Π½Π΅ опрСдСляСт Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Ρ‚ΠΎΠΊΠ΅Π½Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: Π² сцСнариях, адрСсуСмых стандартом, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ Π½Π΅Ρ‚ нСобходимости Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠΊΠ΅Π½, Ρ‚. ΠΊ. ΠΎΠ½ лишь ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для получСния доступа ΠΊ рСсурсам. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π½ΠΈ Ρ‚ΠΎΠΊΠ΅Π½, Π½ΠΈ Π³Ρ€Π°Π½Ρ‚ сами ΠΏΠΎ сСбС Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Однако Ссли ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ нСсколько способов это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ:

Π‘Ρ‚ΠΎΠΈΡ‚ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ OpenID Connect, замСнивший ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ вСрсии стандарта OpenID 1.0 ΠΈ 2.0, Ρ‚Π°ΠΊΠΆΠ΅ содСрТит Π½Π°Π±ΠΎΡ€ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ для поиска сСрвСров Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ, динамичСской рСгистрации ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² ΠΈ управлСния сСссиСй ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрСли Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π² Π²Π΅Π±-прилоТСниях. НиТС β€” Ρ‚Π°Π±Π»ΠΈΡ†Π°, которая Ρ€Π΅Π·ΡŽΠΌΠΈΡ€ΡƒΠ΅Ρ‚ описанныС способы ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *