ΠΠΌΠΌΠΎΠ±ΠΈΠ»Π°ΠΉΠ·Π΅Ρ StarLine i96CAN: Π·Π°ΡΠΈΡΠ½ΠΈΠΊ-Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠΊΠ°
by StarLine_news, 12.12.2018
StarLine i96 CANΒ β ΡΠΌΠ½ΡΠΉ ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΡΠΉ ΡΡΡΠ°ΠΆ Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Ρ. ΠΠ½ ΡΠ°ΡΠΏΠΎΠ·Π½Π°ΡΡ Π²Π»Π°Π΄Π΅Π»ΡΡΠ° ΠΏΠΎ Π±Π΅ΡΠΏΡΠΎΠ²ΠΎΠ΄Π½ΠΎΠΉ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Bluetooth Smart ΠΈ Π·Π°ΡΠΈΡΠ°Π΅Ρ ΠΎΡ ΡΠ³ΠΎΠ½Π°, Π±Π»ΠΎΠΊΠΈΡΡΡ Π΄Π²ΠΈΠ³Π°ΡΠ΅Π»Ρ ΠΏΡΠΈ ΠΏΠΎΠΏΡΡΠΊΠ΅ Π½Π°ΡΠ°ΡΡ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π±Π΅Π· Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ.
Π£ΠΌΠ½ΠΎΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΅Π·Π΄ΠΊΠΈΠ‘ΠΎΠ±ΠΈΡΠ°Π΅ΡΠ΅ΡΡ Π² ΠΏΡΡΡ? ΠΠ²ΡΠΎΡΠΈΠ·ΡΠΉΡΠ΅ΡΡ ΠΏΠΎ Bluetooth Smart Ρ ΠΏΠΎΠΌΠΎΡΡΡ StarLine ΠΌΠ΅ΡΠΊΠΈ ΠΈΠ»ΠΈ ΡΠΌΠ°ΡΡΡΠΎΠ½Π° Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌΒ StarLine ΠΠ»ΡΡ. ΠΠΈΠ±ΠΎ Π²Π²ΠΎΠ΄Ρ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»ΡΠ½ΡΠΉ PIN-ΠΊΠΎΠ΄ ΡΡΠ°ΡΠ½ΡΠΌΠΈ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Ρ. ΠΠ»Ρ Π΅ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ΠΉ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡΠΈ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ. ΠΡΠΈΠ²ΠΎΠ΄ΠΈΠΌ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°Π΄Π΅ΠΆΠ½ΡΡ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ²:
ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½Π°Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° Π΄Π²ΠΈΠ³Π°ΡΠ΅Π»ΡΠΠΈΡΠΈΡΠ΅ ΡΠ³ΠΎΠ½ΡΠΈΠΊΠ° Π½Π°ΠΆΠΈΠ²Ρ! ΠΠΌΠΌΠΎΠ±ΠΈΠ»Π°ΠΉΠ·Π΅ΡΒ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ Π·Π°ΠΏΡΡΠΊ Π΄Π²ΠΈΠ³Π°ΡΠ΅Π»Ρ ΠΏΠΎ Π±ΠΎΡΡΠΎΠ²ΠΎΠΌΡ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΡ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈΒ iCAN,Β Π΄Π²ΠΈΠ³Π°ΡΠ΅Π»Ρ Π±ΡΠ΄Π΅Ρ Π½Π°Π΄Π΅ΠΆΠ½ΠΎ Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ ΠΏΠΎ ΡΠΈΡΡΠΎΠ²ΠΎΠΉ ΡΠΈΠ½Π΅.
ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΏΠΎΠ²ΡΠ΅Π΄ΠΈΡ CAN-ΡΠΈΠ½Ρ, ΠΈΠΌΠΌΠΎΠ±ΠΈΠ»Π°ΠΉΠ·Π΅Ρ Π·Π°Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ Π΄Π²ΠΈΠ³Π°ΡΠ΅Π»Ρ Π² ΠΌΠΎΠΌΠ΅Π½Ρ Π·Π°ΠΏΡΡΠΊΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅Π»Π΅Β StarLine R4,Β ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΉ ΡΠ΅ΠΏΠΈ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠ΄Π±ΠΎΡΠ° ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ ΠΏΠΎΡΡΠ»ΠΊΠΈ ΠΈΡΠΊΠ»ΡΡΠ΅Π½Π°!
Π₯ΠΎΡΠΈΡΠ΅ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΡΠΉ Π·Π°ΠΏΡΡΠΊ Π½Π° ΡΠ²ΠΎΠ΅ΠΌ Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Π΅? Π£ΠΌΠ½ΡΠΉΒ StarLine i96CANΒ ΠΏΠΎΠ·Π°Π±ΠΎΡΠΈΡΡΡ ΠΎΠ± ΡΡΠΎΠΌ: Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° Π΄Π²ΠΈΠ³Π°ΡΠ΅Π»Ρ Π²ΠΊΠ»ΡΡΠΈΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈ Π½Π°ΡΠ°Π»Π΅ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΠΠΠ, ΠΈΠ»ΠΈ ΠΏΡΠΈ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠΈ ΠΎΠ±ΠΎΡΠΎΡΠΎΠ² Π΄Π²ΠΈΠ³Π°ΡΠ΅Π»Ρ. Π₯ΠΎΠ·ΡΠΈΠ½Ρ β ΠΏΠΎΠΌΠΎΠ³Π°Π΅ΠΌ, ΡΠ³ΠΎΠ½ΡΠΈΠΊΡ β ΠΌΠ΅ΡΠ°Π΅ΠΌ!
ΠΠ°ΡΠΈΡΠ° ΠΎΡ ΡΠΈΠ»ΠΎΠ²ΠΎΠ³ΠΎ Π·Π°Ρ Π²Π°ΡΠ°ΠΠ°Π±Π΅ΠΆΠ°Π»ΠΈ Π² Π±Π»ΠΈΠΆΠ°ΠΉΡΠΈΠΉ ΠΌΠ°Π³Π°Π·ΠΈΠ½ ΠΈ Π·Π°Π±ΡΠ»ΠΈ Π² Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ ΡΡΠ°ΡΠ½ΡΠΉ ΠΊΠ»ΡΡ, Π° ΡΡΠΈΠΌ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ ΡΠ³ΠΎΠ½ΡΠΈΠΊ? ΠΠ°ΠΌ ΠΏΠΎΠΌΠΎΠΆΠ΅ΡΒ ΠΎΡΠ»ΠΎΠΆΠ΅Π½Π½Π°Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ: ΠΎΠ½Π° ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ Π½Π°ΡΠ°Π»Π° Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ. ΠΠ΅ Π½Π°ΠΉΠ΄Ρ ΠΌΠ΅ΡΠΊΡ ΠΈΠ»ΠΈ ΡΠΌΠ°ΡΡΡΠΎΠ½ Π² Π·ΠΎΠ½Π΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ, ΠΈΠΌΠΌΠΎΠ±ΠΈΠ»Π°ΠΉΠ·Π΅Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ Π·Π°Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ Π΄Π²ΠΈΠ³Π°ΡΠ΅Π»Ρ.
ΠΠ°ΡΠΈΡΠ° Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠΈΠ½ΡΠΠ΅ Π΄Π°ΠΉΡΠ΅ ΡΠ³ΠΎΠ½ΡΠΈΠΊΡ ΠΏΡΠΎΠΏΠΈΡΠ°ΡΡ ΡΠ²ΠΎΠΉ ΡΡΠ°ΡΠ½ΡΠΉ ΠΊΠ»ΡΡ ΠΈΠ»ΠΈ Β«Π·Π°ΠΊΠΎΡΠΎΡΠΈΡΡΒ» CAN-ΡΠΈΠ½Ρ!Β StarLine i96 CANΒ Π·Π°ΡΠΈΡΠ°Π΅Ρ Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Ρ ΠΎΡ Π½Π΅ΡΠ°Π½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠΈΠ½Π΅ Π²Π°ΡΠ΅Π³ΠΎ Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Ρ. ΠΠ»ΠΎΠΊΠΈΡΡΠΉΡΠ΅ ΡΡΠΎΡ ΡΠ°Π·ΡΠ΅ΠΌ Π²ΡΠ΅Π³Π΄Π° ΠΊΡΠΎΠΌΠ΅ ΡΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΆΠΈΠΌΠ° ΠΈΠ»ΠΈ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ Β«ΠΡ
ΡΠ°Π½Π°Β».
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π² Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ Π΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ Π±Π΅ΡΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ°Β Keyless,Β ΠΏΠΎΠΏΡΠΎΡΠΈΡΠ΅ ΠΌΠ°ΡΡΠ΅ΡΠ°-ΡΡΡΠ°Π½ΠΎΠ²ΡΠΈΠΊΠ° Π²Π²Π΅ΡΡΠΈ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΡΡΠΎΠ²Π΅Π½Ρ Π·Π°ΡΠΈΡΡ βΒ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ ΡΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΡΠ°Π΄ΠΈΠΎΠΊΠ°Π½Π°Π»Π° ΠΏΠΎ CAN.Β ΠΠ½Π° Π°ΠΊΡΠΈΠ²ΠΈΡΡΠ΅ΡΡΡ ΠΏΡΠΈ Π²Π°ΡΠ΅ΠΌ ΡΠ΄Π°Π»Π΅Π½ΠΈΠΈ ΠΎΡ Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Ρ. ΠΠ»ΠΎΡΠΌΡΡΠ΅Π½Π½ΠΈΠΊΠ° ΠΆΠ΄Π΅Ρ ΡΠ°Π·ΠΎΡΠ°ΡΠΎΠ²Π°Π½ΠΈΠ΅: Π·Π°Π²Π΅ΡΡΠΈ Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Ρ ΡΠΊΡΠ°Π΄Π΅Π½Π½ΡΠΌ ΡΡΠ°ΡΠ½ΡΠΌ ΠΊΠ»ΡΡΠΎΠΌ Π² ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ Bluetooth ΠΌΠ΅ΡΠΊΠΈ Π±ΡΠ΄Π΅Ρ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.
ΠΠ°ΡΠ° ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ Π½Π° ΠΠΠ‘ΠΠΠΡΠ±ΡΠ°Π²Β StarLine i96 CANΒ Π΄Π»Ρ ΡΠ²ΠΎΠ΅Π³ΠΎ Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Ρ, Π²Ρ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΠ΅ Π½Π° ΠΠΠ‘ΠΠΒ Π΄ΠΎ 20%Β ΠΏΠΎ ΡΠΈΡΠΊΡ Β«Π£Π³ΠΎΠ½/Π₯ΠΈΡΠ΅Π½ΠΈΠ΅Β» Π² ΡΡΡΠ°Ρ ΠΎΠ²ΠΎΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈΒ Β«ΠΠ½Π³ΠΎΡΡΡΡΠ°Ρ Β».Β
ΠΠ°ΡΠΈΡΠ° β ΠΠΠ‘Π’ΠΠ ΡΠΊΠΈ!ΠΡΠ΅ Π½ΡΠ°Π½ΡΡ Π½ΡΠΆΠ½ΡΡ
Π²Π°ΠΌ Π½Π°ΡΡΡΠΎΠ΅ΠΊ ΠΎΠ±ΡΡΠ΄ΠΈΡΠ΅ ΡΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠΎΠΌ ΠΏΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅. ΠΠΊΡΠΈΠ²ΠΈΡΡΠΉΡΠ΅ ΡΠ΅ΠΆΠΈΠΌ Β«Π‘Π²ΠΎΠ±ΠΎΠ΄Π½ΡΠ΅ ΡΡΠΊΠΈΒ»; Π²ΡΠ±Π΅ΡΠΈΡΠ΅ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π΄Π²ΠΈΠ³Π°ΡΠ΅Π»Ρ; ΠΎΡΠΊΠ»ΡΡΠΈΡΠ΅ Π·Π²ΡΠΊΠΎΠ²ΡΡ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΈΡ Π² ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΠΌΠ΅ΡΠΊΠΈ, Π΅ΡΠ»ΠΈ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠΈΡΡΡΡΡΠ²ΠΈΠ΅ ΠΈΠΌΠΌΠΎΠ±ΠΈΠ»Π°ΠΉΠ·Π΅ΡΠ° Π½Π΅Π·Π°ΠΌΠ΅ΡΠ½ΡΠΌ.
Π‘Β ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ StarLine ΠΠ°ΡΡΠ΅Ρ ΠΈ Π²Π°ΡΠΈΠ°ΡΠΈΠ²Π½ΠΎΡΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡΒ Β Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈΠΌΠΌΠΎΠ±ΠΈΠ»Π°ΠΉΠ·Π΅ΡΠ° β ΠΏΡΠΎΡΡΡ ΠΈ ΡΠ΄ΠΎΠ±Π½Ρ. ΠΠ°ΡΠΈ ΠΏΠΎΠΆΠ΅Π»Π°Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»Π½ΡΡΡΡ Π² ΡΡΠΈΡΠ°Π½Π½ΡΠ΅ ΠΌΠΈΠ½ΡΡΡ!
Π‘ Π²Π΅ΡΡΠΈΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ 1.6.0 Π΄ΠΎΡΡΡΠΏΠ½ΠΎ Π΅ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΡΠΌΠ½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Π΄Π»Ρ Π²Π°ΡΠ΅ΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ.ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ βΒ Π·Π΄Π΅ΡΡ. ΠΡΠΎΠΊΠΎΠ½ΡΡΠ»ΡΡΠΈΡΡΠΉΡΠ΅ΡΡ Ρ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΌΠ°ΡΡΠ΅ΡΠ°-ΡΡΡΠ°Π½ΠΎΠ²ΡΠΈΠΊΠ°!
ΠΡ ΡΠ°Π½Π° Π΅ΡΠ΅ ΡΠΌΠ½Π΅Π΅ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΠ΅ ΠΈΠΌΠΌΠΎΠ±ΠΈΠ»Π°ΠΉΠ·Π΅Ρ ΠΊ ΠΌΠ°ΡΠΊΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΡ ΡΠ°Π½Π½ΠΎ-ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ΠΎΠ²ΠΎΠΌΡ StarLine M17Β β ΠΈ Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΡΠΉ ΠΎΡ ΡΠ°Π½Π½ΡΠΉ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠΎΠ±ΡΠΈΡ Π½Π° Π²Π°Ρ ΡΠΌΠ°ΡΡΡΠΎΠ½ ΠΎ ΠΏΠΎΠΏΡΡΠΊΠ΅ ΠΏΠΎΠΊΡΡΠ΅Π½ΠΈΡ Π½Π° Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Ρ. |
Β
ΠΠΠΠΠΠΠΠΠ’ | StarLine i96 CAN | StarLine i96 CAN LUX | StarLine i96 CAN ECO | StarLine i96 CAN SMART |
ΠΠ΅ΡΠΊΠ° Bluetooth Smart | ![]() | 2 ΡΡ. | 1 ΡΡ. | |
ΠΠ²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ ΠΏΠΎ ΡΠΌΠ°ΡΡΡΠΎΠ½Ρ | ||||
ΠΠ²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ ΡΡΠ°ΡΠ½ΡΠΌΠΈ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ | ||||
ΠΠ½Π΅ΡΠ½Π΅Π΅ ΡΠ΅Π»Π΅ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ | ||||
ΠΠΎΠ½ΡΡΠΎΠ»Ρ Π·Π°ΠΏΡΡΠΊΠ° Π΄Π²ΠΈΠ³Π°ΡΠ΅Π»ΡΒ ΠΏΠΎ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΈ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ CAN | ||||
ΠΠΎΠ΄ΠΎΠ²ΠΎΠ΅ ΡΠ΅Π»Π΅ StarLine R4 | Β | |||
ΠΠ΅ΡΠΏΡΠΎΠ²ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠΎΠ΄ΠΊΠ°ΠΏΠΎΡΠ½ΡΠΉ Π±Π»ΠΎΠΊ StarLine R6 | Β | |||
Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π½Π½Π°Ρ ΡΠΎΠ·Π½ΠΈΡΠ½Π°Ρ ΡΠ΅Π½Π° | 10 750 Π | 12 350 Π | 7 400 Π | 6 250 Π |
*Π‘ΡΠΎΠΈΠΌΠΎΡΡΡ Π°ΠΊΡΡΠ°Π»ΡΠ½Π° Π½Π° Π΄Π°ΡΡ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ
StarLine Π½Π°Π΄Π΅ΠΆΠ½ΠΎ Π·Π°ΡΠΈΡΠ°Π΅Ρ Ρ ΡΠΌΠΎΠΌ
StarLine ΠΠΎΠ±Π΅Π΄ΠΈΡ
Category : ΠΠΎΠ²ΠΈΠ½ΠΊΠΈ
ΠΠ»Π΅ΠΊΡΠ°Π½Π΄ΡΠ° Π‘ΡΠ΅ΠΏΠ°Π½ΠΎΠ²Π° | RB.

Π Π΅Π΄Π°ΠΊΡΠΎΡ β RB
ΠΠ°ΠΉΠ΄Π΅Π½ΠΎ
124 ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π° Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π°Π²ΡΠΎΡΠ° Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅Π ΠΊΠ°ΠΊ Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ Π·Π° ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌΠΈ Π²Π»ΠΈΡΠ΅Ρ Π½Π° Π·Π΄ΠΎΡΠΎΠ²ΡΠ΅
Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅ Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅ΠΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π² ΡΠ΅Π»Π΅ΡΠΎΠ½Π°Ρ ΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°Ρ ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ Π²ΡΠ΅ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½Π΅Π΅
Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅ Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅ΠΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠΎΠ² ΠΈΠ· Facebook ΠΈ Π£Π½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅ΡΠ° ΠΡΡΠΈΠ»Π΅Π½Π΄Π°
Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅ Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅ΠΠ°ΠΊ Π½Π°ΡΡΠΈΡΡΡΡ Β«ΡΠΈΡΠ°ΡΡΒ» Π»ΡΠ΄Π΅ΠΉ ΠΏΠΎ ΠΈΡ ΠΏΡΠΈΠ²ΡΡΠΊΠ°ΠΌ
Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅ Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅ 09.2020″> 03 ΡΠ΅Π½ΡΡΠ±ΡΡ 2020ΠΠ±ΡΡΠ½ΡΠ΅ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΠ΅ ΠΏΠΈΡΡΠΌΠ° ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΎΡΠ΅Π½Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌΠΈ
Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅ Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅ΠΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΡΠΈ Π² Google Π€ΠΎΡΠΎ Π·Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠ»ΠΈΠΊΠΎΠ²
Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅ Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅Π‘ΠΎΠ²Π΅ΡΡ Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ ΠΈΠ½Π²Π΅ΡΡΠΎΡΠΎΠ²
Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅ Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅Π§Π΅Π»ΠΎΠ²Π΅ΡΠ΅ΡΡΠ²ΠΎ Π΅ΡΠ΅ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π»ΠΎ ΠΏΡΠΈΠ²ΠΈΠ²ΠΊΠΈ Ρ ΡΠ°ΠΊΠΎΠΉ ΡΠΊΠΎΡΠΎΡΡΡΡ
Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅ Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅ΠΠ΅ΠΉΡΠΈΠ½Π³-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Nanaya ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ°
Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅ Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅Π‘ΠΈΡΡΠ°ΡΠΈΠΈ Π² ΡΠ°Π±ΠΎΡΠΈΡ ΡΠ°ΡΠ°Ρ ΡΠ°ΡΡΠΎ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡΡ ΡΡΠΎΡΡ ΡΡΠ°ΡΡΠ΅ΠΊΠ»Π°ΡΡΠ½ΠΈΠΊΠΎΠ²
Π§ΠΈΡΠ°ΡΡ Π΄Π°Π»Π΅Π΅ΠΠΎΠΊΠ°Π·Π°ΡΡ Π΅ΡΠ΅
ΠΠ²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ΅ΡΠΈ
ΠΠ»ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ e-mail ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ
Π Π΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ Π½Π° Rusbase
ΠΠΌΡ
Π€Π°ΠΌΠΈΠ»ΠΈΡ
ΠΠ°ΠΆΠΈΠΌΠ°Ρ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ «ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ» Ρ ΡΠΎΠ³Π»Π°ΡΠ°ΡΡΡ Ρ ΡΡΠ»ΠΎΠ²ΠΈΡΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΡ
ΠΡΠ»ΠΈ Π²Ρ Π·Π°Π±ΡΠ»ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ, ΠΌΡ Π²ΡΡΠ»Π΅ΠΌ Π²Π°ΠΌ Π΅Π³ΠΎ Π½Π° ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΡ ΠΏΠΎΡΡΡ
ΠΠ°Ρ email
ΠΡ ΠΎΠ΄ΠΡΠΎΠ½Ρ ΠΈ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ ΠΠ 30.

ΡΠ΅ΠΊΠ»Π°ΠΌΠ° ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΎΠ², Π½Π΅ Π΄Π΅Π»Π°ΡΡΠΈΡ ΠΏΠΎΠΆΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠΉ,Β ΡΠ·Π½Π°ΠΉΡΠ΅, ΠΏΠΎΡΠ΅ΠΌΡ
ΡΠ΅Π»Ρ
ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΎΠ², Π½Π΅ Π΄Π΅Π»Π°ΡΡΠΈΡ ΠΏΠΎΠΆΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΡ,Β ΡΠ·Π½Π°ΠΉΡΠ΅, ΠΏΠΎΡΠ΅ΠΌΡ
ΡΡΡΠ°Π½Π°
ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΎΠ², Π½Π΅ Π΄Π΅Π»Π°ΡΡΠΈΡ ΠΏΠΎΠΆΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΡ,Β ΡΠ·Π½Π°ΠΉΡΠ΅, ΠΏΠΎΡΠ΅ΠΌΡ
ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ
ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΈΠ½ΡΠΏΠ΅ΠΊΡΠΎΡ Π±ΡΠΎΠ½ΠΈ
ΠΠ½ΡΠΏΠ΅ΠΊΡΠΎΡ Π±ΡΠΎΠ½ΠΈ — ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΈΠ³ΡΡ World of Tanks, Π²ΠΊΠ»ΡΡΠ°Ρ Π²Π΅ΡΡΠΈΠΈ Π΄Π»Ρ ΠΠ, Blitz ΠΈ Console. Armor Inspector Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΎΠ½Π»Π°ΠΉΠ½, Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ iOS/Android ΠΈ Π½Π° ΠΠ.
Armor Inspector ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ Π²Π°ΠΌ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡΠΎΠ»ΡΠΈΠ½Ρ Π±ΡΠΎΠ½ΠΈ (ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΊΠΎΠ»Π»ΠΈΠ·ΠΈΠΉ World of Tanks), ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΊΠΈΠΏΠ°ΠΆΠ° ΠΈ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, Π²ΠΊΠ»ΡΡΠ°Ρ Π±ΠΎΠ΅ΡΠΊΠ»Π°Π΄ΠΊΠΈ, ΡΠΎΠΏΠ»ΠΈΠ²Π½ΡΠ΅ Π±Π°ΠΊΠΈ, Π΄Π²ΠΈΠ³Π°ΡΠ΅Π»ΠΈ. ΠΠ½ ΠΈΠΌΠ΅Π΅Ρ ΠΊΠ°Π»ΡΠΊΡΠ»ΡΡΠΎΡ ΠΏΡΠΎΠ±ΠΈΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ ΠΏΠΎΠ½ΡΡΡ, ΠΏΠΎΡΠ΅ΠΌΡ ΠΈ ΠΊΠ°ΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ±ΠΈΡΡ Π²ΡΠ°ΠΆΠ΅ΡΠΊΠΈΠΉ ΡΠ°Π½ΠΊ.
Π ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΡΠ°ΠΊΠΆΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΊΠ°Π»ΡΠΊΡΠ»ΡΡΠΎΡΠ° ΠΏΠ΅ΡΠ° ΠΈ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ World of Tanks, ΠΏΠΎΠ»Π½ΡΠ΅ Ρ
Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ ΡΠ°Π½ΠΊΠΎΠ², ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ ΠΈ ΠΎΡΠ΅Π½ΠΈΠ²Π°ΡΡ ΡΡΠΎΠ½ ΠΎΡ ΡΡΠ³Π°ΡΠ½ΡΡ
Π±ΠΎΠ΅ΠΏΡΠΈΠΏΠ°ΡΠΎΠ², ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠ΅Π½ΠΈΠ²Π°ΡΡ ΡΡΠΎΠ½ ΠΎΡ ΡΠ°ΡΠ°Π½Π° ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Armor Inspector Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΠ°Π²Π½ΠΈΡΡ ΡΠ°Π½ΠΊΠΈ WoT ΠΈ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΠ°Π·Π½ΠΈΡΡ Π² Π±ΡΠΎΠ½Π΅ ΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΡ
.
ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΠΏΠ΅ΠΊΡΠΎΡ Π±ΡΠΎΠ½ΠΈ
Π‘Π»Π΅Π²Π° Π΅ΡΡΡ ΠΌΠ΅Π½Ρ, Π³Π΄Π΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ ΡΠ΅ΠΆΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
Π Π΅Π½ΡΠ³Π΅Π½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡΡΠΎΠ»ΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΉ WoT, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ WoT ΠΈ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ WoT. ΠΠ΄Π΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΠΎΠ»ΡΠΈΠ½Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π±ΡΠΎΠ½Π΅Π²ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΈΠ½Ρ.
ΠΡΠΎΡΠΈΠ²ΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ ΠΈΠ·ΡΡΠΈΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠΊΡ ΠΏΡΠΎΠ½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ Π² WoT. ΠΠ΄Π΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ ΡΡΡΠ΅Π»ΠΊΠ° ΠΈ ΡΠ΅Π»Π΅Π²ΡΠ΅ ΡΠ°Π½ΠΊΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΠΌΠΈΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΡΡΡΠ΅Π» Π² Π»ΡΠ±ΡΡ Π·Π°Π΄Π°Π½Π½ΡΡ ΡΠΎΡΠΊΡ. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π²ΡΠ΅ ΡΡΠ·Π²ΠΈΠΌΡΠ΅ ΠΌΠ΅ΡΡΠ° ΡΠ°Π½ΠΊΠ° Π² ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅.
Π‘ΡΠΎΠ»ΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΎ Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΠΎΠ³ΠΎ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠΎΠ½Π° Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°Π½Π΅ΡΡΠΈ (ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ) ΠΏΡΠΈ ΡΠ°ΡΠ°Π½Π΅.
ΠΠ΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ Π²Π΅ΡΡΠΈΡ ΠΈΠ³ΡΡ Π² ΠΠ°ΡΡΡΠΎΠΉΠΊΠ°Ρ
, Π±ΡΠ΄Ρ ΡΠΎ ΠΠ, ΠΠ»ΠΈΡ ΠΈΠ»ΠΈ ΠΠΎΠ½ΡΠΎΠ»Ρ. ΠΡΠΎΠ½Ρ
VK 30.01 (H) ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π½Π° ΡΡΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Armor Inspector Π²ΡΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ·Π½Π°ΡΡ ΡΡ Π΅ΠΌΡ Π±ΡΠΎΠ½ΠΈ VK 30.01 (H) , ΡΡΠ·Π²ΠΈΠΌΡΠ΅ ΠΌΠ΅ΡΡΠ° ΠΈ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ.
ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΠΌΠ΅Π½Ρ Β«Π Π΅Π½ΡΠ³Π΅Π½Β», ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ VK 30.01 (H) ΠΌΠΎΠ΄Π΅Π»Ρ ΡΡΠΎΠ»ΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ , ΡΠΎΠ»ΡΠΈΠ½Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π±ΡΠΎΠ½Π΅Π²ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΈΠ½Ρ ΠΈ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ. ΠΠΎΠ»Π½ΡΠ΅ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ VK 30.01 (H) ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΡΠ΄ΠΎΠΌ Ρ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ , ΡΡΠ°Π²Π½ΠΈΡΠ΅ 9ΠΠ½ΠΎΠΏΠΊΠ° 0040 Π½Π° ΡΡΠ°Π²Π½ΠΈΡΠ΅ Π±Π°ΠΊ VK 30.01 (H) Ρ Π»ΡΠ±ΡΠΌ Π΄ΡΡΠ³ΠΈΠΌ Π±Π°ΠΊΠΎΠΌ wot.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΌΠ΅Π½Ρ Β«ΠΡΠΎΡΠΈΠ²ΠΎΡΡΠΎΡΠ½ΠΈΠ΅Β», ΡΡΠΎΠ±Ρ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΌΠΎΠ΄Π΅Π»Ρ ΠΆΠΈΠ²ΠΎΠΉ Π±ΡΠΎΠ½ΠΈ VK 30.01 (H) ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π»ΡΠ±ΠΎΠ³ΠΎ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ³ΠΎ Π²Π°ΠΌΠΈ ΡΡΡΠ΅Π»ΠΊΠΎΠ²ΠΎΠ³ΠΎ ΡΠ°Π½ΠΊΠ°. ΠΠ 30.01 (Π) ΡΠ»Π°Π±ΡΠ΅ ΠΌΠ΅ΡΡΠ° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ ΠΊΡΠ°ΡΠ½ΡΠΌ ΠΈ Π·Π΅Π»Π΅Π½ΡΠΌ ΡΠ²Π΅ΡΠΎΠΌ. Π Π°ΡΡΡΠΎΡΠ½ΠΈΠ΅ ΡΡΠ΅ΠΌΠΊΠΈ ΡΠ΅Π³ΡΠ»ΠΈΡΡΠ΅ΡΡΡ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΌΠ°ΡΡΡΠ°Π±Π°.
ΡΡΠΎ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ?
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ. ΠΠ΄Π½Π°ΠΊΠΎ ΠΌΡ Π΄Π²Π° ΠΈΠ³ΡΠΎΠΊΠ°, ΠΈ ΠΌΡ Π½ΠΈΠΊΠΎΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌ Wargaming, ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ°ΠΌΠΈ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡ ΠΈ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡ Π²ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ. ΠΡΠΎ ΡΡΠΎΠΈΠ»ΠΎ Π½Π°ΠΌ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈ Π΄Π΅Π½Π΅Π³, ΡΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π²Π°Ρ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΡΠΎ ΡΡΠΎΠΈΠ»ΠΎ Π½Π°ΠΌ Π΄Π΅Π½Π΅Π³, ΡΡΠΎΠ±Ρ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΡΠΈΠΌ Π²Π΅Π±-ΡΠ°ΠΉΡΠΎΠΌ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ Π΄Π°Π½Π½ΡΠ΅ HD Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
Π Π΅Π½ΡΠ³Π΅Π½ΠΎΠ²ΡΠΊΠΈΠΉ ΡΠ΅ΠΆΠΈΠΌ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π²ΡΠ΅ΠΌ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ. Π Β«ΠΠΎΠ½ΡΡΠΎΠ½ΡΠ°ΡΠΈΠΈΒ» ΡΠ°Π½ΠΊΠΈ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½Ρ. Π ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΡΠΎΠ»ΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠ°Π½Ρ Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½Ρ.
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠ°Π²ΠΈΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠ°ΡΡΠΌΠΎΡΡΠΈΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°. Π‘ Π²Π°ΡΠ΅ΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π΄Π°Π½Π½ΡΠ΅ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π²Π°ΠΌ Π΅ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΠΈ ΡΡΠ»ΡΠ³.
Π£ ΠΌΠ΅Π½Ρ Π΅ΡΡΡ Π²ΠΎΠΏΡΠΎΡ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ ΡΠ²ΠΎΠΉ Π²ΠΎΠΏΡΠΎΡ Π½Π° Π½Π°ΡΠ΅ΠΌ Π΄ΠΈΡΠΊΠΎΡΠ΄-ΠΊΠ°Π½Π°Π»Π΅.
ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΎΠ², Π½Π΅ Π΄Π΅Π»Π°ΡΡΠΈΡ ΠΏΠΎΠΆΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΡ,Β ΡΠ·Π½Π°ΠΉΡΠ΅, ΠΏΠΎΡΠ΅ΠΌΡ
ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ OAuth 2.0 / Π₯Π°Π±Ρ
ΠΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΡΠ°ΡΡΠΈ. ΠΠ°ΠΊ ΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» OAuth 2.0 Π² ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ
. ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π²Π½Π΅Π΄ΡΠΈΡΡ ΡΡΠ°Π½Π΄Π°ΡΡ, ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΌ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» OAuth 2.0.
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ Ρ
ΠΎΡΡ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡΠΌΠΈ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ
Π°ΡΠ°ΠΊ OAuth 2.0 ΠΈ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠΎΠ² Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ ΡΠ°ΠΊΠΈΡ
ΠΏΡΠΎΠ±Π»Π΅ΠΌ. ΠΠΏΠΈΡΠ°Π½Π½ΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ Π½Π΅ Π½ΠΎΠ²Ρ, Π½ΠΎ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΏΠΎ Π΄Π°Π½Π½ΠΎΠΉ ΡΠ΅ΠΌΠ΅ Π½Π΅ Ρ
Π²Π°ΡΠ°Π΅Ρ. ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΡΠ΅Π»Ρ ΡΡΠ°ΡΡΠΈ β Π²ΠΎΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΡΠΎΡ ΠΏΡΠΎΠ±Π΅Π».
ΠΡΠΎΠ²Π°ΠΉΠ΄Π΅Ρ β ΡΡΠΎ ΡΠ»ΡΠΆΠ±Π°, ΠΊΠΎΡΠΎΡΠ°Ρ Π²Π»Π°Π΄Π΅Π΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΈ Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠΌ ΡΠ»ΡΠΆΠ±Π°ΠΌ (ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ) Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΡΠΈΠΌ Π΄Π°Π½Π½ΡΠΌ. ΠΠ»ΠΈΠ΅Π½Ρ β ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Ρ
ΠΎΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅, Ρ
ΡΠ°Π½ΡΡΠΈΠ΅ΡΡ Ρ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠ°.
ΠΡΠΊΠΎΡΠ΅ ΠΏΠΎΡΠ»Π΅ Π²ΡΡ ΠΎΠ΄Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° OAuth 2.0 ΠΎΠ½ Π±ΡΠ» Π°Π΄Π°ΠΏΡΠΈΡΠΎΠ²Π°Π½ Π΄Π»Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ , Ρ ΠΎΡΡ ΠΈ Π½Π΅ Π±ΡΠ» Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ OAuth 2.0 Π΄Π»Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠΌΠ΅ΡΠ°Π΅Ρ Π²Π΅ΠΊΡΠΎΡ Π°ΡΠ°ΠΊΠΈ Ρ Π΄Π°Π½Π½ΡΡ , Ρ ΡΠ°Π½ΡΡΠΈΡ ΡΡ Ρ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° ΡΡΠ»ΡΠ³, Π½Π° ΡΡΠ΅ΡΠ½ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΡ ΡΠ»ΡΠΆΠ±.
ΠΠΎ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π±ΡΠ»Π° ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠ°Π»ΠΎΠΌ. ΠΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΡΠΎΡΠ»Π°Π²Π»Π΅Π½ΠΈΡ ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π²ΡΠ΅Π³ΠΎ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π·Π²ΡΡΠ°Π» ΠΏΡΠΈΡΡΠ½ΠΎ. Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π°Π΄Π°ΠΏΡΠΈΡΠΎΠ²Π°Π»ΠΈ OAuth 2.0 Π΄Π»Ρ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΌΠ°Π»ΠΎ ΠΊΡΠΎ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΠ»ΡΡ ΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ΅ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ: ΠΌΠΎΠ», ΠΈ Π² ΠΏΡΠΎΠ΄Π°ΠΊΡΠ½ ΠΏΠΎΡΠ»ΠΈ! ΠΠΏΡΡΡ ΠΆΠ΅, OAuth 2.0 ΠΏΠ»ΠΎΡ ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Π°ΠΌΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ: ΠΎΠ΄Π½ΠΈ ΠΈ ΡΠ΅ ΠΆΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΊΠ°ΠΊ Π² ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ , ΡΠ°ΠΊ ΠΈ Π² Π½Π°ΡΡΠΎΠ»ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ .
ΠΡΠ°ΠΊ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ, ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΠΉ OAuth 2.0 Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΌ.
ΠΡΡΡ Π΄Π²Π΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ OAuth 2.0:- ΠΠ΅Π½Π°Π΄Π΅ΠΆΠ½ΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π΅ ΠΈΠΌΠ΅ΡΡ Π±ΡΠΊΠ΅Π½Π΄Π° Π΄Π»Ρ OAuth 2.
0, ΠΏΠΎΡΡΠΎΠΌΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠ°Ρ ΡΠ°ΡΡΡ ΠΏΠΎΡΠΎΠΊΠ° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° ΠΈΠ΄Π΅Ρ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ.
- ΠΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΠ· Π±ΡΠ°ΡΠ·Π΅ΡΠ° Π² ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²Π΅Π΄ΡΡ ΡΠ΅Π±Ρ ΠΏΠΎ-ΡΠ°Π·Π½ΠΎΠΌΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π½Π°ΡΡΡΠΎΠ΅ΠΊ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΏΠΎΡΡΠ΄ΠΊΠ° ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΡΠΎΡΠ΅ΠΉ ΠΌΠ°Π³ΠΈΠΈ.
ΠΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΌ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ ΠΊΠΎΡΠ½ΠΈ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ OAuth 2.0 Π² ΡΠ»ΡΡΠ°Π΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠ΅ΡΠ²Π΅Ρ-ΡΠ΅ΡΠ²Π΅Ρ, Π° Π·Π°ΡΠ΅ΠΌ ΡΡΠ°Π²Π½ΠΈΠΌ Π΅Π³ΠΎ Ρ OAuth 2.0 Π² ΡΠ»ΡΡΠ°Π΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΊΠ»ΠΈΠ΅Π½Ρ-ΡΠ΅ΡΠ²Π΅Ρ. Π ΠΎΠ±ΠΎΠΈΡ
ΡΠ»ΡΡΠ°ΡΡ
Π²ΡΠ΅ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΠΉ ΡΠ΅ΡΠ²ΠΈΡ ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠ΅ΡΡΡ Π½Π° ΡΠ΅ΡΠ²ΠΈΡΠ΅ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠ° ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ
ΠΈ ,
Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΡΠ»ΡΡΠ°ΡΡ
, ΡΠ΅ΠΊΡΠ΅Ρ_ΠΊΠ»ΠΈΠ΅Π½ΡΠ°. client_id
ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠ»ΡΠΆΠ±Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ client_secret
, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΡΠ½ΡΠΌ. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π² RFC 7591.
ΠΠ° ΡΡ Π΅ΠΌΠ΅ Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ OAuth 2.0 ΠΏΡΠΈ ΠΌΠ΅ΠΆΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠΌ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠΈ.
ΠΡΡΠΎΡΠ½ΠΈΠΊ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ: https://tools.ietf.org/html/rfc6749#section-1.2
ΠΡΠΎΡΠΎΠΊΠΎΠ» OAuth 2.0 ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ Π½Π° ΡΡΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΡΠ°ΠΏΠ°:
- [ΡΠ°Π³ΠΈ A-C] ΠΠΎΠ»ΡΡΠΈΡΠ΅
ΠΊΠΎΠ΄ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ
(Π΄Π°Π»Π΅Π΅ΠΊΠΎΠ΄
). - [ΡΠ°Π³ΠΈ D-E] ΠΠ±ΠΌΠ΅Π½
Ρ ΠΊΠΎΠ΄ΠΎΠΌ
Π½Π°access_token
. - ΠΠΎΠ»ΡΡΠΈΡΡ ΡΠ΅ΡΡΡΡ ΡΠ΅ΡΠ΅Π·
access_token
.
ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ code
value:
- [Π¨Π°Π³ A] ΠΠ»ΠΈΠ΅Π½Ρ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΊ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΡ ΡΡΠ»ΡΠ³.
- [Π¨Π°Π³ B] ΠΠΎΡΡΠ°Π²ΡΠΈΠΊ ΡΡΠ»ΡΠ³ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΡ Π΄Π°Π½Π½ΡΡ
(ΡΡΡΠ΅Π»ΠΊΠ° B Π²Π²Π΅ΡΡ
). ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π΄ΠΎΡΡΡΠΏ ΠΊ Π΄Π°Π½Π½ΡΠΌ (ΡΡΡΠ΅Π»ΠΊΠ° B Π²ΠΏΡΠ°Π²ΠΎ).
- [Π¨Π°Π³ C] ΠΠΎΡΡΠ°Π²ΡΠΈΠΊ ΡΡΠ»ΡΠ³ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ
ΠΊΠΎΠ΄
Π² Π±ΡΠ°ΡΠ·Π΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅ΡΠΊΠΎΠ΄
ΠΊΠ»ΠΈΠ΅Π½ΡΡ.
access_token
:- [Π¨Π°Π³ D] ΠΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΠΉ ΡΠ΅ΡΠ²Π΅Ρ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡ Π½Π° ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅
access_token
.Code
,client_secret
ΠΈredirect_uri
Π²ΠΊΠ»ΡΡΠ΅Π½Ρ Π² Π·Π°ΠΏΡΠΎΡ. - [Π¨Π°Π³ E] Π ΡΠ»ΡΡΠ°Π΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ
ΠΊΠΎΠ΄
,client_secret
redirect_uri
,access_token
ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ.
access_token
Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎ ΡΡ
Π΅ΠΌΠ΅ server-to-server: ΠΏΠΎΡΡΠΎΠΌΡ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΡ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π²Π·Π»ΠΎΠΌΠ°ΡΡ ΡΠ΅ΡΠ²Π΅Ρ ΡΠ»ΡΠΆΠ±Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΈΠ»ΠΈ ΡΠ΅ΡΠ²Π΅Ρ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° ΡΡΠ»ΡΠ³, ΡΡΠΎΠ±Ρ ΡΠΊΡΠ°ΡΡΡ access_token
.Π’Π΅ΠΏΠ΅ΡΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΡΡ Π΅ΠΌΡ OAuth 2.0 Π±Π΅Π· Π±ΡΠΊΠ΅Π½Π΄Π° (Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ-ΡΠ΅ΡΠ²Π΅Ρ).
ΠΡΠΎΠΈΡΡ
ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ: https://tools.ietf.org/html/rfc8252#section-4.1
ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΡΡ Π΅ΠΌΠ° ΡΠ°Π·Π±ΠΈΡΠ° Π½Π° ΡΠ°ΠΊΠΈΠ΅ ΠΆΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠ°Π³ΠΈ:
- [ΡΠ°Π³ΠΈ 1-4 Π½Π° ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ΅] ΠΠΎΠ»ΡΡΠ°Π΅ΠΌ
ΠΊΠΎΠ΄
. - [ΡΠ°Π³ΠΈ 5-6 Π½Π° ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ΅] ΠΠ±ΠΌΠ΅Π½
ΠΊΠΎΠ΄Π°
Π½Π°access_token
- ΠΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ΅ΡΡΡΡΡ ΡΠ΅ΡΠ΅Π·
access_token
client_secret
Π±ΡΠ΄Π΅Ρ Π²ΡΡΡΠΎΠ΅Π½ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ client_secret
Π½Π΅Π»ΡΠ·Ρ ΡΠΊΡΡΡΡ ΠΎΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠ° Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ
ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ
. ΠΡΡΡΠΎΠ΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ client_secret
ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π²Π»Π΅ΡΡ Π΄Π²ΡΠΌΡ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ: ΠΏΡΡΠ΅ΠΌ Π°Π½Π°Π»ΠΈΠ·Π° ΡΡΠ°ΡΠΈΠΊΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ ΠΈΠ»ΠΈ ΠΏΡΡΠ΅ΠΌ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π ΡΠΎ, ΠΈ Π΄ΡΡΠ³ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ client_secret
Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π΅Π½ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ
ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ
. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΏΡΠΎΡΠΈΡΡ: Β«ΠΠΎΡΠ΅ΠΌΡ Π±Ρ Π½Π°ΠΌ ΡΡΠ°Π·Ρ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ access_token
?Β» ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ΄ΡΠΌΠ°ΡΡ, ΡΡΠΎ ΡΡΠΎΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ°Π³ Π½Π΅ Π½ΡΠΆΠ΅Π½. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΡ
Π΅ΠΌΠ° Π½Π΅ΡΠ²Π½ΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ access_token
ΡΡΠ°Π·Ρ. ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΡΠ»ΡΡΠ°ΡΡ
Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ, Π½Π΅ΡΠ²Π½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π΄Π»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ OAuth 2. 0.
ΠΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π°
ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΠ· Π±ΡΠ°ΡΠ·Π΅ΡΠ° Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΠ°Ρ ΡΡ Π΅ΠΌΠ° URI ΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ AppLink. ΠΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΡΠΈΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΠ² Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°ΠΊΠΈΠΌ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΌ, ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π±ΡΠ°ΡΠ·Π΅ΡΠ° ΡΠ°ΠΌΠΎ ΠΏΠΎ ΡΠ΅Π±Π΅.ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠ°Ρ ΡΡ Π΅ΠΌΠ° URI (ΠΈΠ»ΠΈ Π³Π»ΡΠ±ΠΎΠΊΠ°Ρ ΡΡΡΠ»ΠΊΠ°) ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ: ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΡ Π΅ΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΠ΅ΠΌ. Π‘Ρ Π΅ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π»ΡΠ±ΠΎΠΉ, ΠΈ Π½Π° ΠΎΠ΄Π½ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΈ ΡΠΎΠΉ ΠΆΠ΅ ΡΡ Π΅ΠΌΠΎΠΉ.
ΠΡΠ΅ ΡΠΏΡΠΎΡΠ°Π΅ΡΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΡ
Π΅ΠΌΠ° Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΎ ΡΡΠΎ, Π΅ΡΠ»ΠΈ Π΄Π²Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΏΠΈΡΡΠ²Π°ΡΡ ΠΎΠ΄Π½Ρ ΠΈ ΡΡ ΠΆΠ΅ ΡΡ
Π΅ΠΌΡ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅? ΠΠ°ΠΊ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠ΅ΡΠ°Π΅Ρ, ΠΊΠ°ΠΊΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡΠΊΡΡΡΡ ΠΏΡΠΈ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠΈ ΡΠ΅ΡΠ΅Π· ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΡΡ ΡΡ
Π΅ΠΌΡ URI? Android ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ ΠΎΠΊΠ½ΠΎ Ρ Π²ΡΠ±ΠΎΡΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΡΡΠ»ΠΊΠΎΠΉ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄Π°. Π iOS Π½Π΅Ρ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΊΡΡΡΡ Π»ΡΠ±ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π Π»ΡΠ±ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Ρ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠ° Π΅ΡΡΡ ΡΠ°Π½Ρ ΠΏΠ΅ΡΠ΅Ρ
Π²Π°ΡΠΈΡΡ ΠΊΠΎΠ΄ ΠΈΠ»ΠΈ access_token.
Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΉ ΡΡ Π΅ΠΌΡ URI, AppLink Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ ΠΎΡΠΊΡΡΡΠΈΠ΅ Π½ΡΠΆΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½ΠΎ Ρ ΡΡΠΎΠ³ΠΎ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠ²:
- ΠΠ°ΠΆΠ΄ΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ ΡΠ΅ΡΠ²ΠΈΡΠ° Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡΠΎΠΉΡΠΈ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ Π²Π΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ.
- ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Android ΠΌΠΎΠ³ΡΡ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ AppLink Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ
.
- ΠΠ΅ΡΡΠΈΠΈ Android ΡΡΠ°ΡΡΠ΅ 6.0 ΠΈ Π²Π΅ΡΡΠΈΠΈ iOS ΡΡΠ°ΡΡΠ΅ 9.0 Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ AppLink.
ΠΡΠ°ΠΊΠ° Ρ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΠΎΠΌ ΠΊΠΎΠ΄Π° Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠΈΡΡΠ°ΡΠΈΡ, ΠΊΠΎΠ³Π΄Π° Π½Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ Π»Π΅Π³ΠΈΡΠΈΠΌΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (ΠΊΠ»ΠΈΠ΅Π½Ρ OAuth 2.
ΠΡΠΎΠΈΡΡ
ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ https://tools.ietf.org/html/rfc7636#section-1
ΠΠΎΡ ΡΠ°ΠΊΠ°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°: Π½Π° ΡΠ΅ΡΠ²Π΅ΡΡΠΎΠΌ ΡΠ°Π³Π΅ Π±ΡΠ°ΡΠ·Π΅Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΊΠΎΠ΄
Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΡΠ΅ΡΠ΅Π· Custom URI Scheme ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΠΊΠΎΠ΄
ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠ΅ΡΠ΅Ρ
Π²Π°ΡΠ΅Π½ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ (ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΎ ΠΏΡΠΎΠΏΠΈΡΠ°Π½ΠΎ ΠΏΠΎ ΡΠΎΠΉ ΠΆΠ΅ ΡΡ
Π΅ΠΌΠ΅, ΡΡΠΎ ΠΈ Π»Π΅Π³ΠΈΡΠΈΠΌΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅). ΠΠ°ΡΠ΅ΠΌ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ΅Π½ΡΠ΅Ρ code
Π½Π° access_token
ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π΄ΠΎΡΡΡΠΏ ΠΊ Π΄Π°Π½Π½ΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
ΠΠ°ΠΊΠ°Ρ Π·Π°ΡΠΈΡΠ°? Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΠΆΠΏΡΠΎΡΠ΅ΡΡΠ½ΠΎΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅; ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎΠ± ΡΡΠΎΠΌ ΠΏΠΎΠ·ΠΆΠ΅. Π ΠΎΠ±ΡΠ΅ΠΌ, Π²Π°ΠΌ Π½ΡΠΆΠ½Π° ΡΡ Π΅ΠΌΠ° Proof Key for Code Exchange. ΠΡΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π½Π° ΡΡ Π΅ΠΌΠ΅ Π½ΠΈΠΆΠ΅.
ΠΡΡΠΎΡΠ½ΠΈΠΊ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ: https://tools.ietf.org/html/rfc7636#section-1.1
ΠΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΠΉ Π·Π°ΠΏΡΠΎΡ ΠΈΠΌΠ΅Π΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ
ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ²: code_verifier
, code_challenge
(Π² ΡΡ
Π΅ΠΌΠ΅ 9010 9 t(code_verifier) ββ ) ΠΈ code_challenge_method
(Π½Π° ΡΡ
Π΅ΠΌΠ΅ t_m
).
Code_verifier
β ΡΡΠΎ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π΄Π»ΠΈΠ½ΠΎΠΉ 256 Π±ΠΈΡ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·. ΠΡΠ°ΠΊ, ΠΊΠ»ΠΈΠ΅Π½Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠΉ code_verifier 9.0110 Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° ΠΊΠΎΠ΄Π°
.
Code_challenge_method
β ΡΡΠΎ ΠΈΠΌΡ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ, ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ SHA-256.
Code_challenge
β ΡΡΠΎ code_verifier
, ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΌΡ Π±ΡΠ»ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ code_challenge_method
ΠΈ ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ Π² URL Safe Base64.
ΠΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ code_verifier
Π² code_challenge
Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π»Ρ ΠΎΡΡΠ°ΠΆΠ΅Π½ΠΈΡ Π²Π΅ΠΊΡΠΎΡΠΎΠ² Π°ΡΠ°ΠΊΠΈ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΏΠ΅ΡΠ΅Ρ
Π²Π°ΡΠ° code_verifier
(Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ· ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ
Π»ΠΎΠ³ΠΎΠ² ΡΡΡΡΠΎΠΉΡΡΠ²Π°) ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΊΠΎΠ΄
.
Π ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ SHA-256, ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΡΠΎΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ code_verifier
. ΠΠΎ Π²ΡΠ΅Ρ
ΠΎΡΡΠ°Π»ΡΠ½ΡΡ
ΡΠ»ΡΡΠ°ΡΡ
Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ SHA-256.
ΠΠΎΡ ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΡΠ° ΡΡ Π΅ΠΌΠ°:
- ΠΠ»ΠΈΠ΅Π½Ρ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ
code_verifier
ΠΈ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ Π΅Π³ΠΎ. - ΠΠ»ΠΈΠ΅Π½Ρ Π²ΡΠ±ΠΈΡΠ°Π΅Ρ
code_challenge_method
ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρcode_challenge
ΠΎΡcode_verifier
. - [Π¨Π°Π³ Π] ΠΠ»ΠΈΠ΅Π½Ρ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ
ΠΊΠΎΠ΄
, ΠΊ Π·Π°ΠΏΡΠΎΡΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡcode_challenge
ΠΈcode_challenge_method
. - [Π¨Π°Π³ B] ΠΠΎΡΡΠ°Π²ΡΠΈΠΊ ΡΠΎΡ
ΡΠ°Π½ΡΠ΅Ρ
code_challenge
ΠΈcode_challenge_method
Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρcode
ΠΊΠ»ΠΈΠ΅Π½ΡΡ. - [Π¨Π°Π³ C] ΠΠ»ΠΈΠ΅Π½Ρ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ
access_token
Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΠΌ ΠΊ Π½Π΅ΠΌΡcode_verifier
. - ΠΡΠΎΠ²Π°ΠΉΠ΄Π΅Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ
code_challenge
ΠΈΠ· Π²Ρ ΠΎΠ΄ΡΡΠ΅Π³ΠΎcode_verifier
, Π° Π·Π°ΡΠ΅ΠΌ ΡΡΠ°Π²Π½ΠΈΠ²Π°Π΅Ρ Π΅Π³ΠΎ Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½Π½ΡΠΌcode_challenge
. - [Π¨Π°Π³ D] ΠΡΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ, ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΡ
access_token
.
code_challenge
ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ ΠΏΠ΅ΡΠ΅Ρ
Π²Π°Ρ ΠΊΠΎΠ΄Π°, Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΏΠΎΡΠΎΠΊ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠ°.- ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ
, Π·Π°ΠΊΠΎΠ½Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ
ΠΊΠΎΠ΄
(code_challenge
ΠΈcode_challenge_method
ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π·Π°ΠΏΡΠΎΡΠΎΠΌ ). - ΠΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Ρ
Π²Π°ΡΡΠ²Π°Π΅Ρ
ΠΊΠΎΠ΄
(Π½ΠΎ Π½Π΅code_challenge
, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠΎΠ΄Π°_challenge
Π½Π΅Ρ Π² ΠΎΡΠ²Π΅ΡΠ΅). - ΠΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ
access_token
(Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌcode_verifier
). - Π‘Π΅ΡΠ²Π΅Ρ Π·Π°ΠΌΠ΅ΡΠ°Π΅Ρ Π½Π΅ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅
code_challenge
ΠΈ Π²ΡΠ΄Π°Π΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅.
code_verifier
(ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎΠ΅ 256-Π±ΠΈΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅!) ΠΈΠ»ΠΈ Π½Π°ΠΉΡΠΈ Π΅Π³ΠΎ Π³Π΄Π΅-ΡΠΎ Π² Π»ΠΎΠ³Π°Ρ
(ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΏΠ΅ΡΠ²ΡΠΉ Π·Π°ΠΏΡΠΎΡ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°Π» code_challenge
).
ΠΡΠ°ΠΊ, code_challenge
ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π½Π° Π²ΠΎΠΏΡΠΎΡ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° ΡΡΠ»ΡΠ³: Β« access_token
Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΡΡΡ ΡΠ΅ΠΌ ΠΆΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π» code
, ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈΠΌ?Β».
OAuth 2.0 CSRF
OAuth 2.0 CSRF ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π±Π΅Π·Π²ΡΠ΅Π΄Π΅Π½, ΠΊΠΎΠ³Π΄Π° Π΄Π»Ρ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ OAuth 2.0. Π‘ΠΎΠ²ΡΠ΅ΠΌ Π΄ΡΡΠ³Π°Ρ ΠΈΡΡΠΎΡΠΈΡ, ΠΊΠΎΠ³Π΄Π° Π΄Π»Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ OAuth 2.0. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ OAuth 2.0 CSRF ΡΠ°ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π·Π°Ρ Π²Π°ΡΡ Π°ΠΊΠΊΠ°ΡΠ½ΡΠ°. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎΠ± Π°ΡΠ°ΠΊΠ΅ CSRF Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ OAuth 2.0 ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ°ΠΊΡΠΈ ΠΈ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠ° provider.com. Π‘Π½Π°ΡΠ°Π»Π° Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ Π½Π° ΡΠ²ΠΎΠ΅ΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ Π²Ρ
ΠΎΠ΄ΠΈΡ Π² ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ [email protected]
ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΊΠΎΠ΄
Π΄Π»Ρ ΡΠ°ΠΊΡΠΈ. ΠΠ°ΡΠ΅ΠΌ ΠΎΠ½ ΠΏΡΠ΅ΡΡΠ²Π°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ OAuth 2.0 ΠΈ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΡΡΡΠ»ΠΊΡ:
com.taxi.app://oauth? ΠΊΠΎΠ΄ = b57b236c9bcd2a61fcd627b69ae2d7a6eb5bc13f2dc25311348ee08df43bc0c4ΠΠ°ΡΠ΅ΠΌ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΡΡ ΡΡΡΠ»ΠΊΡ ΡΠ²ΠΎΠ΅ΠΉ ΠΆΠ΅ΡΡΠ²Π΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Π²ΠΈΠ΄Π΅ ΠΏΠΈΡΡΠΌΠ° ΠΈΠ»ΠΈ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΡ ΡΠ»ΡΠΆΠ±Ρ ΡΠ°ΠΊΡΠΈ.

access_token
. Π ΠΈΡΠΎΠ³Π΅ ΠΎΠ½ΠΈ ΠΏΠΎΠΏΠ°Π΄Π°ΡΡ Π² Π°ΠΊΠΊΠ°ΡΠ½Ρ ΡΠ°ΠΊΡΠΈ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠ° . ΠΠ΅ ΠΏΠΎΠ΄ΠΎΠ·ΡΠ΅Π²Π°Ρ ΠΎΠ± ΡΡΠΎΠΌ, ΠΆΠ΅ΡΡΠ²Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΠΎΡ Π°ΠΊΠΊΠ°ΡΠ½Ρ: ΡΠΎΠ²Π΅ΡΡΠ°Π΅Ρ ΠΏΠΎΠ΅Π·Π΄ΠΊΠΈ, Π²Π²ΠΎΠ΄ΠΈΡ Π»ΠΈΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈ Ρ. Π΄. Π’Π΅ΠΏΠ΅ΡΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ Π² Π»ΡΠ±ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π²ΠΎΠΉΡΠΈ Π² ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ ΡΠ°ΠΊΡΠΈ ΠΆΠ΅ΡΡΠ²Ρ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½Π° ΠΏΡΠΈΠ²ΡΠ·Π°Π½Π° ΠΊ [email protected]
. ΠΡΠ°ΠΊΠ° Π²Ρ
ΠΎΠ΄Π° Π² ΡΠΈΡΡΠ΅ΠΌΡ CSRF ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»Π° Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΡ ΡΠΊΡΠ°ΡΡΡ ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ.
ΠΡΠ°ΠΊΠΈ CSRF ΠΎΠ±ΡΡΠ½ΠΎ ΠΎΡΠ±ΠΈΠ²Π°ΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΎΠΊΠ΅Π½Π° CSRF (Π΅Π³ΠΎ ΡΠ°ΠΊΠΆΠ΅ Π½Π°Π·ΡΠ²Π°ΡΡ state
), ΠΈ OAuth 2.0 Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ. ΠΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠΊΠ΅Π½ CSRF:
- ΠΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΠΈ ΡΠΎΡ
ΡΠ°Π½ΡΠ΅Ρ ΡΠΎΠΊΠ΅Π½ CSRF Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°.
- ΠΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΡΠΎΠΊΠ΅Π½ CSRF Π²
ΠΊΠΎΠ΄
Π·Π°ΠΏΡΠΎΡ Π΄ΠΎΡΡΡΠΏΠ°. - Π‘Π΅ΡΠ²Π΅Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΎΡ ΠΆΠ΅ ΡΠΎΠΊΠ΅Π½ CSRF Ρ ΠΊΠΎΠ΄ΠΎΠΌ
- ΠΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠ°Π²Π½ΠΈΠ²Π°Π΅Ρ Π²Ρ
ΠΎΠ΄ΡΡΠΈΠ΅ ΠΈ ΡΠΎΡ
ΡΠ°Π½Π΅Π½Π½ΡΠ΅ ΡΠΎΠΊΠ΅Π½Ρ CSRF.
ΠΡΠ»ΠΈ ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ, ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΡΡΡ.
ΠΠΊΡΠ°ΡΡΠ΅, ΡΠΎΠΊΠ΅Π½ CSRF ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΡΠ²Π΅ΡΠΈΡΡ Π½Π° Π²ΠΎΠΏΡΠΎΡ: Β«ΠΡΠΎ Ρ ΠΈΠ½ΠΈΡΠΈΠΈΡΠΎΠ²Π°Π» access_token
Π·Π°ΠΏΡΠΎΡ ΠΈΠ»ΠΈ ΠΊΡΠΎ-ΡΠΎ ΠΏΡΡΠ°Π΅ΡΡΡ ΠΌΠ΅Π½Ρ ΠΎΠ±ΠΌΠ°Π½ΡΡΡ?Β».
ΠΠ΅ΡΡΠΊΠΎ Π·Π°ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ΅ΠΊΡΠ΅Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°
ΠΠΎΠ±ΠΈΠ»ΡΠ½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±Π΅Π· ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΈΠ½ΠΎΠ³Π΄Π° Ρ ΡΠ°Π½ΡΡ ΠΆΠ΅ΡΡΠΊΠΎ Π·Π°ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ client_id
ΠΈ client_secret
. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΈΡ
ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΈΠ·Π²Π»Π΅ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ»ΠΈΡΠ½ΠΈΠ΅ ΡΠ°ΡΠΊΡΡΡΠΈΡ client_id
ΠΈ client_secret
ΡΠΈΠ»ΡΠ½ΠΎ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠΎΠ³ΠΎ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊ ΡΡΠ»ΡΠ³ Π΄ΠΎΠ²Π΅ΡΠΈΡ Π΄ΠΎΠ²Π΅ΡΡΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ client_id
, client_secret
ΠΏΠ°ΡΠ°. ΠΠ΄Π½ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΈΡ
ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΎΡΠ»ΠΈΡΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΎΡ Π΄ΡΡΠ³ΠΎΠ³ΠΎ, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ Π΄ΡΡΠ³ΠΈΠ΅ ΠΎΡΠΊΡΡΠ²Π°ΡΡ ΡΠΊΡΡΡΡΠ΅ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠ΅ ΡΠΎΡΠΊΠΈ API ΠΈΠ»ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΌΡΠ³ΠΊΠΈΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΡΠΊΠΎΡΠΎΡΡΠΈ Π΄Π»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ².
Π ΡΡΠ°ΡΡΠ΅ Β«ΠΠΎΡΠ΅ΠΌΡ ΠΊΠ»ΡΡΠΈ ΠΈ ΡΠ΅ΠΊΡΠ΅ΡΡ API OAuth Π½Π΅Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½Ρ Π² ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ Β» Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΡΡ ΡΡΠ° ΡΠ΅ΠΌΠ°.
ΠΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π΄Π΅ΠΉΡΡΠ²ΡΡΡΠ΅Π΅ ΠΊΠ°ΠΊ Π·Π°ΠΊΠΎΠ½Π½ΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠΈΡΠΈΡΠΎΠ²Π°ΡΡ Π»Π΅Π³ΠΈΡΠΈΠΌΠ½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ ΡΠΊΡΠ°Π½ ΡΠΎΠ³Π»Π°ΡΠΈΡ ΠΎΡ ΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ (ΡΠΊΡΠ°Π½ ΡΠΎΠ³Π»Π°ΡΠΈΡ β ΡΡΠΎ ΡΠΊΡΠ°Π½, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΠΈΠ΄ΠΈΡ: Β«Π― ΡΠΎΠ³Π»Π°ΡΠ΅Π½ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊβ¦Β»). ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ Π½Π°ΠΆΠ°ΡΡ Β«ΡΠ°Π·ΡΠ΅ΡΠΈΡΡΒ» ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ²ΠΎΠΈ Π΄Π°Π½Π½ΡΠ΅.Android ΠΈ iOS ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ ΠΏΠ΅ΡΠ΅ΠΊΡΠ΅ΡΡΠ½ΠΎΠΉ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠΎΡΡΠ°Π²ΡΠΈΠΊ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π·Π°ΠΊΠΎΠ½Π½ΡΠΌ, ΠΈ Π½Π°ΠΎΠ±ΠΎΡΠΎΡ.
Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ OAuth 2.0 ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΠΎΡΠΎΠΊ ΡΠ΅ΡΠ΅Π· Π±ΡΠ°ΡΠ·Π΅Ρ, Π·Π°ΡΠΈΡΠΈΡΡΡΡ ΠΎΡ ΡΡΠΎΠΉ Π°ΡΠ°ΠΊΠΈ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.
ΠΡΡΠ³ΠΈΠ΅ Π°ΡΠ°ΠΊΠΈ
ΠΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ Π°ΡΠ°ΠΊΠΈ, ΡΠΊΡΠΊΠ»ΡΠ·ΠΈΠ²Π½ΡΠ΅ Π΄Π»Ρ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ OAuth 2.0. ΠΠ΄Π½Π°ΠΊΠΎ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ Π·Π°Π±ΡΠ²Π°ΡΡ ΠΎΠ± ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΠΎΠΉ ΠΏΠΎΠ΄ΠΌΠ΅Π½Π΅ OAuth 2.0: redirect_uri
, ΠΏΠ΅ΡΠ΅Ρ
Π²Π°ΡΠ΅ ΡΡΠ°ΡΠΈΠΊΠ° ΡΠ΅ΡΠ΅Π· Π½Π΅Π·Π°ΡΠΈΡΠ΅Π½Π½ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΈ Ρ.
Π₯ΠΎΡΠΎΡΠΎ, ΠΏΠ»ΠΎΡ ΠΎ OAuth 2.0
ΠΠ°Π²Π°ΠΉΡΠ΅ Π½Π°ΡΠ½Π΅ΠΌ Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΡΠΏΠΎΡΠΎΠ±Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΊΡΠ°Π½Π° ΡΠΎΠ³Π»Π°ΡΠΈΡ. ΠΠΎΠ±ΠΈΠ»ΡΠ½ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈΠΌΠ΅ΡΡ Π΄Π²Π° ΡΠΏΠΎΡΠΎΠ±Π° ΠΎΡΠΊΡΡΡΠΈΡ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΡ Π² ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.ΠΠ΅ΡΠ²ΡΠΉ ΡΠΏΠΎΡΠΎΠ± β ΡΠ΅ΡΠ΅Π· ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΡΡ Π²ΠΊΠ»Π°Π΄ΠΊΡ Π±ΡΠ°ΡΠ·Π΅ΡΠ° (ΡΠ»Π΅Π²Π° Π½Π° ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ΅). ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅ : ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠ°Ρ Π²ΠΊΠ»Π°Π΄ΠΊΠ° Π±ΡΠ°ΡΠ·Π΅ΡΠ° Π΄Π»Ρ Android Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Chrome Custom Tab, Π° Π΄Π»Ρ iOS β SafariViewController. Π ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ° Π±ΡΠ°ΡΠ·Π΅ΡΠ°: Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ Π½Π΅Ρ.
ΠΡΠΎΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± - ΡΠ΅ΡΠ΅Π· WebView (ΡΠΏΡΠ°Π²Π° Π½Π° ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ΅) ΠΈ Ρ ΡΡΠΈΡΠ°Ρ Π΅Π³ΠΎ ΠΏΠ»ΠΎΡ ΠΈΠΌ ΠΏΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΊ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΌΡ OAuth 2.0.
WebView β Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ Π±ΡΠ°ΡΠ·Π΅Ρ Π΄Π»Ρ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
" ΠΡΡΡΠΎΠ΅Π½Π½ΡΠΉ Π±ΡΠ°ΡΠ·Π΅Ρ " ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ°ΠΉΠ»Π°ΠΌ cookie, Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΡ, ΠΊΠ΅ΡΡ, ΠΈΡΡΠΎΡΠΈΠΈ ΠΈ Π΄ΡΡΠ³ΠΈΠΌ Π΄Π°Π½Π½ΡΠΌ Safari ΠΈ Chrome Π·Π°ΠΏΡΠ΅ΡΠ΅Π½ Π΄Π»Ρ WebView. ΠΠ΅ΡΠ½ΠΎ ΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ΅: Safari ΠΈ Chrome Π½Π΅ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π΄Π°Π½Π½ΡΠΌ WebView.
" ΠΡΠ°ΡΠ·Π΅Ρ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ " ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ WebView, ΠΈΠΌΠ΅Π΅Ρ ΠΏΠΎΠ»Π½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ°ΠΉΠ»Π°ΠΌ cookie, Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΡ, ΠΊΠ΅ΡΡ, ΠΈΡΡΠΎΡΠΈΠΈ ΠΈ Π΄ΡΡΠ³ΠΈΠΌ Π΄Π°Π½Π½ΡΠΌ WebView.
Π ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅: ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ Β«Π²ΠΎΠΉΡΠΈ Ρβ¦Β», ΠΈ WebView Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ Π΅Π³ΠΎ Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ Ρ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° ΡΡΠ»ΡΠ³.
ΠΠΏΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ΅ΠΉΠ»:
- ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²Π²ΠΎΠ΄ΠΈΡ ΡΠ²ΠΎΠΉ Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ ΠΎΡ ΡΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° ΡΡΠ»ΡΠ³ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π»Π΅Π³ΠΊΠΎ ΡΠΊΡΠ°ΡΡΡ ΡΡΠΈ Π΄Π°Π½Π½ΡΠ΅.
- OAuth 2.0 ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ Π±ΡΠ» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ Π΄Π»Ρ , ΡΡΠΎΠ±Ρ Π½Π΅ Π²Π²ΠΎΠ΄ΠΈΡΡ Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° ΡΡΠ»ΡΠ³.
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠΈΠ²ΡΠΊ Π²Π²ΠΎΠ΄ΠΈΡΡ ΡΠ²ΠΎΠΉ Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ Π³Π΄Π΅ ΡΠ³ΠΎΠ΄Π½ΠΎ, ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΡΠ±Π°Π»ΠΊΠΈ.
ΠΡΠ»ΠΈ Ρ ΠΊΠΎΠ³ΠΎ-ΡΠΎ Π΅ΡΡΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ Π² ΠΏΠΎΠ»ΡΠ·Ρ WebView Π²ΠΌΠ΅ΡΡΠΎ Custom Tab Browser, Π±ΡΠ΄Ρ ΠΏΡΠΈΠ·Π½Π°ΡΠ΅Π»Π΅Π½, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π°ΠΏΠΈΡΠ΅ΡΠ΅ ΠΎΠ± ΡΡΠΎΠΌ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ
.
ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½Π°Ρ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½Π°Ρ ΡΡ Π΅ΠΌΠ° OAuth 2.0
ΠΡ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡ Π΅ΠΌΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ code_challenge
, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅
ΠΈ Π·Π°ΡΠΈΡΠ° ΠΎΡ Π°ΡΠ°ΠΊΠΈ Ρ ΠΏΠ΅ΡΠ΅Ρ
Π²Π°ΡΠΎΠΌ ΠΊΠΎΠ΄Π° ΠΈ OAuth 2.0 CSRF.
ΠΡΡΠΎΡΠ½ΠΈΠΊ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ: https://tools.ietf.org/html/rfc8252#section-4.1
ΠΠΎΠ΄ Π·Π°ΠΏΡΠΎΡΠ° Π΄ΠΎΡΡΡΠΏΠ° (ΡΠ°Π³ΠΈ 1-2) Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
https://o2.mail.ru/code? redirect_uri=com.mail.cloud.app%3A%2F%2Foauth& ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ = 927489cb2fcdb32e302713f6a720397868b71dd2128c734181983f367d622c24& code_challenge = ZjYxNzQ4ZjI4YjdkNWRmZjg4MWQ1N2FkZjQzNGVkODE1YTRhNjViN jJjMGY5MGJjNzdiOGEzMDU2ZjE3NGFiYw%3D%3D& code_challenge_method=S256& ΠΎΠ±Π»Π°ΡΡΡ = ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½Π°Ρ ΠΏΠΎΡΡΠ°% 2Cid & response_type=ΠΊΠΎΠ΄& client_id=984a644ec3b56d32b0404777e1eb73390cΠΠ° ΡΠ°Π³Π΅ 3 Π±ΡΠ°ΡΠ·Π΅Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΎΡΠ²Π΅Ρ Ρ ΠΏΠ΅ΡΠ΅Π°Π΄ΡΠ΅ΡΠ°ΡΠΈΠ΅ΠΉ:
com.mail.cloud.app://oΠ°uth? ΠΊΠΎΠ΄ = b57b236c9bcd2a61fcd627b69ae2d7a6eb5bc13f2dc25311348ee08df43bc0c4& ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ = 927489cb2fcdb32e302713f6a720397868b71dd2128c734181983f367d622c24ΠΠ° ΡΠ°Π³Π΅ 4 Π±ΡΠ°ΡΠ·Π΅Ρ ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΡΡ ΡΡ Π΅ΠΌΡ URI ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ ΡΠΎΠΊΠ΅Π½ CSRF ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.

access_token
Π·Π°ΠΏΡΠΎΡ (ΡΠ°Π³ 5):https://o2.mail.ru/token? code_verifier = e61748f28b7d5daf881d571df434ed815a4a65b62c0f90bc77b8a3056f174abc& ΠΊΠΎΠ΄ = b57b236c9bcd2a61fcd627b69ae2d7a6eb5bc13f2dc25311348ee08df43bc0c4& client_id=984a644ec3b56d32b0404777e1eb73390cΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΡΠ°Π³ ΠΏΡΠΈΠ½ΠΎΡΠΈΡ ΠΎΡΠ²Π΅Ρ Ρ
access_token
.ΠΡΠ° ΡΡ Π΅ΠΌΠ° Π² ΡΠ΅Π»ΠΎΠΌ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½Π°, Π½ΠΎ Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΎΡΠΎΠ±ΡΡ ΡΠ»ΡΡΠ°ΡΡ OAuth 2.0 ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΎΡΠ΅ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½Π΅Π΅.
Android IPC
Π Android Π΅ΡΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Π΄Π²ΡΠ½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π΄Π°Π½Π½ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΡΠ΅ΡΡΠ°ΠΌΠΈ: IPC (ΠΌΠ΅ΠΆΠΏΡΠΎΡΠ΅ΡΡΠ½ΠΎΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅). IPC Π»ΡΡΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΉ ΡΡ Π΅ΠΌΡ URI ΠΏΠΎ Π΄Π²ΡΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ:- ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΎΡΠΊΡΡΠ²Π°ΡΡΠ΅Π΅ ΠΊΠ°Π½Π°Π» IPC, ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΡ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡΡ ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ°. ΠΠ΅ΡΠ½ΠΎ ΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ΅: ΠΎΡΠΊΡΡΡΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΡ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡΡ ΠΎΡΠΊΡΡΠ²ΡΠ΅Π³ΠΎ Π΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
- ΠΡΠ»ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΈΡΠ΅Π»Ρ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡ ΠΏΠΎ ΠΊΠ°Π½Π°Π»Ρ IPC, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎΡΠ²Π΅Ρ ΠΏΠΎ ΡΠΎΠΌΡ ΠΆΠ΅ ΠΊΠ°Π½Π°Π»Ρ.
ΠΠΌΠ΅ΡΡΠ΅ Ρ ΠΏΠ΅ΡΠ΅ΠΊΡΠ΅ΡΡΠ½ΠΎΠΉ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΎΠΉ (ΠΏΡΠ½ΠΊΡ 1) ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΡΡΠΎΡΠΎΠ½Π½ΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΠΈΡΡ
access_token
.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Implicit Grant Π΄Π»Ρ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΡ ΡΡ
Π΅ΠΌΡ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ OAuth 2.0. β code_challenge
ΠΈ state
ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ·Π½Π°ΡΠ°ΡΡ ΠΌΠ΅Π½ΡΡΡΡ ΠΏΠΎΠ²Π΅ΡΡ
Π½ΠΎΡΡΡ Π°ΡΠ°ΠΊΠΈ. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ½ΠΈΠ·ΠΈΡΡ ΡΠΈΡΠΊ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±ΡΠ΄ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ Π·Π°ΠΊΠΎΠ½Π½ΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ, ΠΏΡΡΠ°ΡΡΡ ΡΠΊΡΠ°ΡΡΡ ΡΡΠ΅ΡΠ½ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
SDK Π΄Π»Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ²
ΠΠΎΠΌΠΈΠΌΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠΎΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠΉ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΉ ΡΡ Π΅ΠΌΡ OAuth 2.0, ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ SDK Π΄Π»Ρ ΡΠ²ΠΎΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ². ΠΡΠΎ ΡΠΏΡΠΎΡΡΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ OAuth 2.0 Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΈ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠΌΠ΅Π½ΡΡΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ. ΠΠΎΠ·Π²ΠΎΠ»ΡΡΠ΅ ΠΌΠ½Π΅ ΠΏΠΎΠ΄ΡΡΠΎΠΆΠΈΡΡ ΡΡΠΎ Π΄Π»Ρ Π²Π°Ρ. ΠΠΎΡ (ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ) 9ΠΠΎΠ½ΡΡΠΎΠ»ΡΠ½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ 0079 Π΄Π»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠ³ΠΎ OAuth 2.0 Π΄Π»Ρ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ² OAuth 2.0:- ΠΡΠΎΡΠ½Π°Ρ ΠΎΡΠ½ΠΎΠ²Π° ΠΈΠΌΠ΅Π΅Ρ ΡΠ΅ΡΠ°ΡΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. Π ΡΠ»ΡΡΠ°Π΅ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ OAuth 2.0 ΠΎΡΠ½ΠΎΠ²ΠΎΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡ
Π΅ΠΌΠ° ΠΈΠ»ΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ», Π²ΡΠ±ΡΠ°Π½Π½ΡΠΉ Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ.
ΠΠ΅Π³ΠΊΠΎ Π΄ΠΎΠΏΡΡΡΠΈΡΡ ΠΎΡΠΈΠ±ΠΊΡ ΠΏΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΉ ΡΡ Π΅ΠΌΡ OAuth 2.0. ΠΡΡΠ³ΠΈΠ΅ ΡΠΆΠ΅ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ ΡΠ΄Π°ΡΡ ΠΈ ΡΡΠ²ΠΎΠΈΠ»ΠΈ ΡΡΠΎΠΊ; Π½Π΅Ρ Π½ΠΈΡΠ΅Π³ΠΎ ΠΏΠ»ΠΎΡ ΠΎΠ³ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ ΡΡΠΈΡΡΡΡ Π½Π° ΠΈΡ ΠΎΡΠΈΠ±ΠΊΠ°Ρ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π·Π° ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·. Π‘Π°ΠΌΠ°Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½Π°Ρ ΡΡ Π΅ΠΌΠ° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ OAuth 2.0 ΠΎΠΏΠΈΡΠ°Π½Π° Π² ΠΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ ?
-
Access_token
ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Ρ ΡΠ°Π½ΠΈΡΡΡΡ Π² ΡΠ²ΡΠ·ΠΊΠ΅ ΠΊΠ»ΡΡΠ΅ΠΉ Π΄Π»Ρ iOS ΠΈ Π²ΠΎ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΌ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π΄Π»Ρ Android. ΠΡΠΈ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° Π±ΡΠ»ΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Ρ ΠΈΠΌΠ΅Π½Π½ΠΎ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ. Content Provider ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² Android, Π½ΠΎ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π½Π°Π΄Π΅ΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠ΅Π½. -
Client_secret
Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π΅Π½ , Π΅ΡΠ»ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ½ Π½Π΅ Ρ ΡΠ°Π½ΠΈΡΡΡ Π² Π±ΡΠΊΠ΅Π½Π΄Π΅. ΠΠ΅ ΠΎΡΠ΄Π°Π²Π°ΠΉΡΠ΅ Π΅Π³ΠΎ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΌ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ. - ΠΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ WebView Π΄Π»Ρ ΡΠΊΡΠ°Π½Π° ΡΠΎΠ³Π»Π°ΡΠΈΡ; ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΡΡ Π²ΠΊΠ»Π°Π΄ΠΊΡ Π±ΡΠ°ΡΠ·Π΅ΡΠ°.
- ΠΠ»Ρ Π·Π°ΡΠΈΡΡ ΠΎΡ ΠΏΠ΅ΡΠ΅Ρ
Π²Π°ΡΠ° ΠΊΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅
code_challenge
. - ΠΠ»Ρ Π·Π°ΡΠΈΡΡ ΠΎΡ CSRF OAuth 2.0 ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅
ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅
. - ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ HTTPS Π²Π΅Π·Π΄Π΅ , ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ Π½Π° HTTP Π·Π°ΠΏΡΠ΅ΡΠ΅Π½. ΠΠΎΡ 3-ΠΌΠΈΠ½ΡΡΠ½Π°Ρ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΡ, ΠΎΠ±ΡΡΡΠ½ΡΡΡΠ°Ρ, ΠΏΠΎΡΠ΅ΠΌΡ (Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π²ΠΎΠ·Π½Π°Π³ΡΠ°ΠΆΠ΄Π΅Π½ΠΈΡ Π·Π° ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡΠΈΠ±ΠΎΠΊ).
- Π‘Π»Π΅Π΄ΡΠΉΡΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ°ΠΌ ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΠΈ (Π²ΡΠ±ΠΎΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ°, Π΄Π»ΠΈΠ½Ρ ΡΠΎΠΊΠ΅Π½ΠΎΠ² ΠΈ Ρ. Π΄.). ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈ Π²ΡΡΡΠ½ΠΈΡΡ, ΠΏΠΎΡΠ΅ΠΌΡ ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π½ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ°ΠΊ, Π½ΠΎ Π½Π΅ Π·Π°ΠΏΡΡΠΊΠ°ΠΉΡΠ΅ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΠΊΡΠΈΠΏΡΡ.
-
ΠΠΎΠ΄
Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·, Ρ ΠΊΠΎΡΠΎΡΠΊΠΈΠΌ ΡΡΠΎΠΊΠΎΠΌ ΡΠ»ΡΠΆΠ±Ρ. - Π‘ΠΎ ΡΡΠΎΡΠΎΠ½Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅, ΡΡΠΎ Π²Ρ ΠΎΡΠΊΡΡΠ²Π°Π΅ΡΠ΅ Π΄Π»Ρ OAuth 2,0; Π° ΡΠΎ ΡΡΠΎΡΠΎΠ½Ρ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅, ΠΊΡΠΎ ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ Π²Π°Ρ Π΄Π»Ρ OAuth 2.0.
- ΠΠΎΠΌΠ½ΠΈΡΠ΅ ΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ
ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΡ
OAuth 2.0. ΠΠΎΠ±ΠΈΠ»ΡΠ½ΡΠΉ OAuth 2.0 ΡΠ°ΡΡΠΈΡΡΠ΅Ρ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ, ΠΏΠΎΡΡΠΎΠΌΡ
redirect_uri
ΠΏΡΠΎΠ²Π΅ΡΡΡΡ Π½Π° ΡΠΎΡΠ½ΠΎΠ΅ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ Π΄Π»Ρ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ OAuth 2,0 ΠΎΡΡΠ°ΡΡΡΡ Π² ΡΠΈΠ»Π΅. - ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΡΠ²ΠΎΠΈΠΌ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ SDK. Π£ Π½ΠΈΡ
Π±ΡΠ΄Π΅Ρ ΠΌΠ΅Π½ΡΡΠ΅ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ, ΠΈ ΠΈΠΌ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡΠ΅ Π²Π½Π΅Π΄ΡΠΈΡΡ Π²Π°Ρ OAuth 2.
0.
- Β«Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ OAuth 2.0Β» https://www.youtube.com/watch?v=vjCF_O6aZIg
- ΠΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΠΉ Π³ΠΎΠ½ΠΊΠΈ OAuth 2.0 https://hackerone.com/reports/55140
- ΠΠΎΡΡΠΈ Π²ΡΠ΅ ΠΎΠ± OAuth 2.0 Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅ https://oauth.net/2/
- ΠΠΎΡΠ΅ΠΌΡ ΠΊΠ»ΡΡΠΈ ΠΈ ΡΠ΅ΠΊΡΠ΅ΡΡ API OAuth Π½Π΅Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½Ρ Π² ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ
https://developer.okta.com/blog/2019/01/22/oauth-api-keys-arent-safe-in-mobile-apps
- [RFC] OAuth 2.0 Π΄Π»Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ https://tools.ietf.org/html/rfc8252
- [RFC] ΠΠ»ΡΡ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ Π΄Π»Ρ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΊΠΎΠ΄Π°ΠΌΠΈ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌΠΈ OAuth https://tools.ietf.org/html/rfc7636
- [RFC] ΠΠΎΠ΄Π΅Π»Ρ ΡΠ³ΡΠΎΠ· OAuth 2.0 ΠΈ Π²ΠΎΠΏΡΠΎΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ https://tools.ietf.org/html/rfc6819
- [RFC] ΠΡΠΎΡΠΎΠΊΠΎΠ» Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² OAuth 2.0 https://tools.ietf.org/html/rfc7591
- Google OAuth 2.0 Π΄Π»Ρ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ
ΠΈ Π½Π°ΡΡΠΎΠ»ΡΠ½ΡΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ https://developers.