Gatsby
ΠΠΠ§ΠΠ«Π
Gatsby
ΠΠΠ§ΠΠ«Π
- Π Π΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ
- 10 ΠΠΊΡ 2018
- Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ
- 42,227
- ΠΠ°ΠΉΠΊΠΈ
- 179,308
ΠΠ²ΡΠΎΡ: Π‘Π»ΡΡΠΌ
ΠΠ°Π·Π²Π°Π½ΠΈΠ΅: ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°: Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π² Keycloak (2022)
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅:
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΊΡΡΡΡ Π²Ρ:
ΠΠΎΠΉΠΌΡΡΠ΅, ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° Π΄Π»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π΄Π°ΡΡ Keycloak
Π£Π·Π½Π°Π΅ΡΠ΅, ΠΏΠΎΡΠ΅ΠΌΡ ΡΠ΄ΠΎΠ±Π½Π΅Π΅ ΠΈ Π±ΡΡΡΡΠ΅Π΅ Π²Π·ΡΡΡ Π³ΠΎΡΠΎΠ²ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅
Π Π°ΡΡΠΌΠΎΡΡΠΈΡΠ΅ ΡΡΡΠ½ΠΎΡΡΠΈ Keycloak, Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΡΠ°Π·Π±Π΅ΡΡΡΠ΅, ΠΊΠ°ΠΊ Π΄Π΅ΠΏΠ»ΠΎΠΈΡΡ Keycloak ΡΠ΅ΡΠ΅Π· Docker Run
Π£Π·Π½Π°Π΅ΡΠ΅, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ GoGatekeeper ΠΈ Π½Π°ΡΠΈΠ²Π½ΡΠ΅ Π»ΠΈΠ±Ρ Π΄Π»Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ
ΠΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅, ΠΊΠ°ΠΊ Π΄Π΅ΠΏΠ»ΠΎΠΈΡΡ Keycloak Π² standalone-ha ΡΠ΅ΠΆΠΈΠΌΠ΅
ΠΠ°ΡΡΠΈΡΠ΅ΡΡ ΠΏΡΠΈΠΊΡΡΡΠΈΠ²Π°ΡΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΌ Mappers Π΄Π»Ρ GoGatekeeper
Π Π°Π·Π±Π΅ΡΡΡΠ΅ΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ°Ρ , ΠΊΠ°ΡΡΠΎΠΌΠ½ΡΡ ΡΠ΅ΠΌΠ°Ρ ΠΈ ΠΏΠ»Π°Π³ΠΈΠ½Π°Ρ Keycloak
ΠΠ°ΡΡΠΈΡΠ΅ΡΡ ΠΏΡΠΈΠΊΡΡΡΠΈΠ²Π°ΡΡ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΡΠ΅ΡΠ΅Π· Google ΠΈ ΡΠ°Π·Π±Π΅ΡΡΡΠ΅ΡΡ Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ΠΎΠΌ Keycloak
ΠΠΎΠΌΡ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»Π΅Π·Π΅Π½ ΠΊΡΡΡ?
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ
Π£Π·Π½Π°Π΅ΡΠ΅, ΠΊΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΠΏΠΈΡΠ°ΡΡ ΡΠ²ΠΎΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ, Π½Π°ΡΡΠΈΡΠ΅ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ oidc ΠΈΠ· Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
DevOps-ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠ°ΠΌ
ΠΠ°ΡΡΠΈΡΠ΅ΡΡ ΡΠ°Π·Π²ΠΎΡΠ°ΡΠΈΠ²Π°ΡΡ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Keycloak, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ·Π½Π°Π΅ΡΠ΅, Π΄Π»Ρ ΡΠ΅Π³ΠΎ ΠΎΠ½ Π½ΡΠΆΠ΅Π½
Π’ΠΈΠΌΠ»ΠΈΠ΄Π°ΠΌ ΠΈ ΡΠ΅Ρ . Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠ°ΠΌ
Π£Π·Π½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π΄ΠΈΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π΄Π»Ρ Π²Π°ΡΠ΅ΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ
ΠΠΎΠ΄ΡΠ»Ρ 1
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅:
Π‘ΠΊΠ°ΡΠ°ΡΡ:
ΠΠ°Π·Π²Π°Π½ΠΈΠ΅: ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°: Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π² Keycloak (2022)
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅:
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΊΡΡΡΡ Π²Ρ:
ΠΠΎΠΉΠΌΡΡΠ΅, ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° Π΄Π»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π΄Π°ΡΡ Keycloak
Π£Π·Π½Π°Π΅ΡΠ΅, ΠΏΠΎΡΠ΅ΠΌΡ ΡΠ΄ΠΎΠ±Π½Π΅Π΅ ΠΈ Π±ΡΡΡΡΠ΅Π΅ Π²Π·ΡΡΡ Π³ΠΎΡΠΎΠ²ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅
Π Π°ΡΡΠΌΠΎΡΡΠΈΡΠ΅ ΡΡΡΠ½ΠΎΡΡΠΈ Keycloak, Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΡΠ°Π·Π±Π΅ΡΡΡΠ΅, ΠΊΠ°ΠΊ Π΄Π΅ΠΏΠ»ΠΎΠΈΡΡ Keycloak ΡΠ΅ΡΠ΅Π· Docker Run
Π£Π·Π½Π°Π΅ΡΠ΅, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ GoGatekeeper ΠΈ Π½Π°ΡΠΈΠ²Π½ΡΠ΅ Π»ΠΈΠ±Ρ Π΄Π»Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ
ΠΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅, ΠΊΠ°ΠΊ Π΄Π΅ΠΏΠ»ΠΎΠΈΡΡ Keycloak Π² standalone-ha ΡΠ΅ΠΆΠΈΠΌΠ΅
ΠΠ°ΡΡΠΈΡΠ΅ΡΡ ΠΏΡΠΈΠΊΡΡΡΠΈΠ²Π°ΡΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΌ Mappers Π΄Π»Ρ GoGatekeeper
Π Π°Π·Π±Π΅ΡΡΡΠ΅ΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ°Ρ , ΠΊΠ°ΡΡΠΎΠΌΠ½ΡΡ ΡΠ΅ΠΌΠ°Ρ ΠΈ ΠΏΠ»Π°Π³ΠΈΠ½Π°Ρ Keycloak
ΠΠ°ΡΡΠΈΡΠ΅ΡΡ ΠΏΡΠΈΠΊΡΡΡΠΈΠ²Π°ΡΡ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΡΠ΅ΡΠ΅Π· Google ΠΈ ΡΠ°Π·Π±Π΅ΡΡΡΠ΅ΡΡ Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ΠΎΠΌ Keycloak
ΠΠΎΠΌΡ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»Π΅Π·Π΅Π½ ΠΊΡΡΡ?
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ
Π£Π·Π½Π°Π΅ΡΠ΅, ΠΊΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΠΏΠΈΡΠ°ΡΡ ΡΠ²ΠΎΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ, Π½Π°ΡΡΠΈΡΠ΅ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ oidc ΠΈΠ· Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
DevOps-ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠ°ΠΌ
ΠΠ°ΡΡΠΈΡΠ΅ΡΡ ΡΠ°Π·Π²ΠΎΡΠ°ΡΠΈΠ²Π°ΡΡ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Keycloak, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ·Π½Π°Π΅ΡΠ΅, Π΄Π»Ρ ΡΠ΅Π³ΠΎ ΠΎΠ½ Π½ΡΠΆΠ΅Π½
Π’ΠΈΠΌΠ»ΠΈΠ΄Π°ΠΌ ΠΈ ΡΠ΅Ρ . Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠ°ΠΌ
Π£Π·Π½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π΄ΠΈΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π΄Π»Ρ Π²Π°ΡΠ΅ΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ
ΠΠΎΠ΄ΡΠ»Ρ 1
- ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΌΠΎΠ΄ΡΠ»Ρ
- Π’Π΅ΠΎΡΠΈΡ. ΠΠΎΡΠ΅ΠΌΡ Π±Ρ ΠΏΡΠΎΡΡΠΎ Π½Π΅ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ²ΠΎΡ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ?
- Π’Π΅ΠΎΡΠΈΡ. OIDC ΠΈ Oauth2
- Π’Π΅ΠΎΡΠΈΡ. ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΊΠ΅ΠΉΠΊΠ»ΠΎΠΊ
- ΠΡΠ°ΠΊΡΠΈΠΊΠ°. ΠΠ΅ΠΏΠ»ΠΎΠΈΠΌ ΠΊΠ΅ΠΉΠΊΠ»ΠΎΠΊ ΡΠ΅ΡΠ΅Π· docker run Π² standalone ΡΠ΅ΠΆΠΈΠΌΠ΅ Π½Π° Π²ΠΌ.
- Π’Π΅ΠΎΡΠΈΡ. Π‘ΡΡΠ½ΠΎΡΡΠΈ keycloak. Realm, Clients, Identity Providers, users
- Π’Π΅ΠΎΡΠΈΡ. ΠΡΠ΅ΠΌΡ ΠΆΠΈΠ·Π½ΠΈ ΡΠΎΠΊΠ΅Π½ΠΎΠ²
- ΠΡΠ°ΠΊΡΠΈΠΊΠ°. Π‘ΠΎΠ·Π΄Π°ΡΠΌ client
- Π‘ΠΎΠ·Π΄Π°ΡΠΌ User
- ΠΡΠ°ΠΊΡΠΈΠΊΠ°. ΠΡΠΈΠΊΡΡΡΠΈΠ²Π°Π΅ΠΌ OIDC ΠΊ Π³ΠΎΡΠΎΠ²ΠΎΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠΌΠ΅ΡΡΠ΅ΠΌΡ Ρ Π½ΠΈΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡ
- ΠΡΠΎΠ³ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ
- ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΌΠΎΠ΄ΡΠ»Ρ
- Π’Π΅ΠΎΡΠΈΡ: Π Π°Π±ΠΎΡΠ° ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ OIDC
- ΠΡΠ°ΠΊΡΠΈΠΊΠ°. ΠΡΠΈΠΊΡΡΡΠΈΠ²Π°Π΅ΠΌ ΠΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΊ Π΄Π΅ΠΌΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° nginx ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ nginx Π’Π΅ΠΎΡΠΈΡ. GoGatekeeper
- ΠΡΠ°ΠΊΡΠΈΠΊΠ°. ΠΡΠΈΠΊΡΡΡΠΈΠ²Π°Π΅ΠΌ gogatekeeper ΠΊ Π΄Π΅ΠΌΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° nginx
- ΠΡΠ°ΠΊΡΠΈΠΊΠ°. ΠΡΠΈΠΊΡΡΡΠΈΠ²Π°Π΅ΠΌ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π½Π° gogatekeeper
- Π’Π΅ΠΎΡΠΈΡ. ΠΡΠΎ Π½Π°ΡΠΈΠ²Π½ΡΠ΅ Π»ΠΈΠ±Ρ Π΄Π»Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΡΠΏ
- ΠΡΠΎΠ³ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ
- ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΌΠΎΠ΄ΡΠ»Ρ
- Π’Π΅ΠΎΡΠΈΡ. Π‘ΡΡΠ½ΠΎΡΡΠΈ keycloak. User Federations, mappers, scopes
- ΠΡΠ°ΠΊΡΠΈΠΊΠ°. ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° User Federations, mappers, scopes
- ΠΡΠ°ΠΊΡΠΈΠΊΠ°. ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Roles
- ΠΡΠ°ΠΊΡΠΈΠΊΠ°. ΠΡΠΈΠΊΡΡΡΠΈΠ²Π°Π΅ΠΌ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΌ mappers Π΄Π»Ρ gogatekeeper
- ΠΡΠΎΠ³ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ
- ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΌΠΎΠ΄ΡΠ»Ρ
- Π’Π΅ΠΎΡΠΈΡ. HA ΡΠ΅ΠΆΠΈΠΌ keycloak. Keycloak ΠΏΠΎΠ΄ ΠΊΠ°ΠΏΠΎΡΠΎΠΌ. Infinispan.
- Π’Π΅ΠΎΡΠΈΡ. ΠΡΠ»ΡΡΠΈΠ¦ΠΠ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ keycloak
- ΠΠ΅ΠΏΠ»ΠΎΠΉ keycloak Π² standalone-ha ΡΠ΅ΠΆΠΈΠΌΠ΅
- Π’Π΅ΠΎΡΠΈΡ. ΠΠ°ΡΡΠΎΠΌΠ½ΡΠ΅ ΡΠ΅ΠΌΡ Π΄Π»Ρ keycloak
- ΠΡΠ°ΠΊΡΠΈΠΊΠ°. ΠΠ°ΡΡΠΎΠΌΠ½ΡΠ΅ ΡΠ΅ΠΌΡ Π΄Π»Ρ keycloak
- Π’Π΅ΠΎΡΠΈΡ. ΠΠ°ΡΡΠΎΠΌΠ½ΡΠ΅ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΡ Π΄Π»Ρ keycloak
- ΠΡΠΎΠ³ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ
- ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΌΠΎΠ΄ΡΠ»Ρ
- Π’Π΅ΠΎΡΠΈΡ. OIDC ΠΈ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
- Π’Π΅ΠΎΡΠΈΡ. Authentication Flows
- Π’Π΅ΠΎΡΠΈΡ. ΠΠ½Π΅ΡΠ½ΠΈΠ΅ Identity Providers
- ΠΡΠ°ΠΊΡΠΈΠΊΠ°. ΠΠ½Π΅ΡΠ½ΠΈΠ΅ Identity Providers. ΠΡΠΈΠΊΡΡΡΠΈΠ²Π°Π΅ΠΌ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ ΡΠ΅ΡΠ΅Π· Π³ΡΠ³Π» ΠΈ Π³ΠΈΡΡ Π°Π±
- Π’Π΅ΠΎΡΠΈΡ. Π Π΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ
- Π’Π΅ΠΎΡΠΈΡ. ΠΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ keycloak
- ΠΠΎΡΠ΅ΠΌΡ ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Keycloak Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ° ΠΈ ΠΏΠΎΡΠ΅ΠΌΡ Ρ Π½Π°Ρ ΡΡΡ Π½Π΅Ρ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΊΠ°ΠΊ Π΄Π΅Π»Π°ΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ
- ΠΡΠΎΠ³ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅:
Π‘ΠΊΡΡΡΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ Π΄Π»Ρ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ!
Π‘ΠΊΠ°ΡΠ°ΡΡ:
ΠΠ»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΡΠΊΡΡΡΠΎΠ³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΠΎΠΉΡΠΈ ΠΈΠ»ΠΈ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ.