AWS рдЗрдВрдЬреАрдирд┐рдпрд░реЛрдВ рдХреЗ рд▓рд┐рдП GCP: рдЖрдкрдХреЗ AWS рдХреЗ рд╕рд╣рдЬ рдЬреНрдЮрд╛рди рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ (рдФрд░ рдХрд╣рд╛рдБ рд╡реЗ рдЯреВрдЯ рдЬрд╛рддреЗ рд╣реИрдВ)
рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ AWS рдореЗрдВ рдЦрд╛рддреЛрдВ рдХреЛ рдХреИрд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░реЗрдВ, рдЕрдиреБрдорддрд┐рдпрд╛рдБ рдХреИрд╕реЗ рджреЗрдВ рдФрд░ рд╕реНрдЯреЗрдЯ рдХреЛ рдХреИрд╕реЗ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдХрд░реЗрдВред рдпрд╣рд╛рдБ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ Google Cloud рдореЗрдВ рд╡рд╣реА рдХрд╛рдо рдХреИрд╕реЗ рдХрд░реЗрдВ - рд╡реЗ рдЕрд╡рдзрд╛рд░рдгрд╛рдПрдБ рдЬреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдореИрдк рд╣реЛрддреА рд╣реИрдВ, рдФрд░ рд╡реЗ рдЪрд╛рд░ рд╕реНрдерд╛рди рдЬрд╣рд╛рдБ рдЖрдкрдХреА AWS рдХреА рдорд╛рдВрд╕рдкреЗрд╢реА рд╕реНрдореГрддрд┐ рдЖрдкрдХреЛ рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рдЧреБрдорд░рд╛рд╣ рдХрд░реЗрдЧреАред
рдпрджрд┐ рдЖрдк AWS рдореЗрдВ рдкрд╛рд░рдВрдЧрдд рд╣реИрдВ рдФрд░ рдЕрдм Google Cloud рдХреЛ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЕрдЪреНрдЫреА рдЦрдмрд░ рдпрд╣ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рд▓рдЧрднрдЧ 80% рд╕рд╣рдЬ рдЬреНрдЮрд╛рди рд╕реАрдзреЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ: рдЪреАрдЬреЛрдВ рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрджрд╛рдиреБрдХреНрд░рдо рд╣реИ, рдПрдХреНрд╕реЗрд╕ рджреЗрдиреЗ рдХрд╛ рдПрдХ рднреВрдорд┐рдХрд╛-рдЖрдзрд╛рд░рд┐рдд рддрд░реАрдХрд╛ рд╣реИ, рдХреАрд▓реЗрд╕ CI рдХреЗ рд▓рд┐рдП рдПрдХ OIDC рдХрд╣рд╛рдиреА рд╣реИ, рдФрд░ рдПрдХ "рдЕрдкрдиреЗ рд╕реНрдЯреЗрдЯ рдмреИрдХрдПрдВрдб рдХреЛ рдХреЛрд▓реНрдб-рд╕реНрдЯрд╛рд░реНрдЯ рдХрд░реЗрдВ" рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИред рдмреБрд░реА рдЦрдмрд░ рдмрд╛рдХреА 20% рд╣реИ - рдФрд░ рдпрд╣ рдХреБрдЫ рдЙрдЪреНрдЪ-рдЯреНрд░реИрдлрд╝рд┐рдХ рд╡рд╛рд▓реЗ рд╕реНрдерд╛рдиреЛрдВ рдкрд░ рдХреЗрдВрджреНрд░рд┐рдд рд╣реИ рдЬрд╣рд╛рдБ AWS рд╡рд╛рд▓рд╛ рдХрд╛рдо рдХрд░рдиреЗ рд╕реЗ рд╕реНрдкрд╖реНрдЯ рддреНрд░реБрдЯрд┐ рдХреЗ рдмрдЬрд╛рдп рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реА рдЕрд╕реНрд╡реАрдХреГрддрд┐ рдорд┐рд▓рддреА рд╣реИред рдпрд╣ рдкреЛрд╕реНрдЯ рдЕрдиреБрд╡рд╛рдж рдкрд░рдд рд╣реИ: рд╡рд╣реА рдХрд╛рдо рдЬреЛ рдЖрдк AWS рдореЗрдВ рдХрд░рддреЗ рд╣реИрдВ, GCP рдореЗрдВ рдХрд┐рдП рдЧрдП, рдЬрд┐рд╕рдореЗрдВ рдЖрдиреЗ рд╡рд╛рд▓реА рдмрд╛рдзрд╛рдУрдВ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рдпрджрд┐ рдЖрдк рдХреЗрд╡рд▓ рдПрдХ рдкреИрд░рд╛рдЧреНрд░рд╛рдл рдкрдврд╝рддреЗ рд╣реИрдВ рддреЛ: GCP рдХрд╛ рдкрджрд╛рдиреБрдХреНрд░рдо (organization -> folder -> project -> resource) AWS Organizations -> OU -> account -> resource рдкрд░ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдореИрдк рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рддреАрди рдЪреАрдЬреЗрдВ рдЖрдкрдХреА рдорд╛рдВрд╕рдкреЗрд╢реА рд╕реНрдореГрддрд┐ рдХреЛ рддреЛрдбрд╝ рджреЗрддреА рд╣реИрдВред IAM рдПрдХ рдХреЗрд╡рд▓-рдЕрдиреБрдорддрд┐ рдиреАрддрд┐ рд╣реИ рдЬреЛ рд╕рдВрд╕рд╛рдзрди рдЯреНрд░реА рд╕реЗ рдмрдВрдзреА рд╣реЛрддреА рд╣реИ рдФрд░ рдиреАрдЪреЗ рдХреА рдУрд░ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рддреА рд╣реИ - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реЗ рдХреЛрдИ рдиреАрддрд┐ рд╕рдВрд▓рдЧреНрди рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рдПрдХ project рдХреА рд╕реЗрд╡рд╛ APIs рд╕рднреА рдмрдВрдж рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИрдВ, рдФрд░ рдЬрдм рддрдХ рдЖрдк рдкреНрд░рддреНрдпреЗрдХ рдХреЛ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рдХрд░рддреЗ, рддрдм рддрдХ рдХреБрдЫ рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ред рдФрд░ рдЖрдк рднреВрдорд┐рдХрд╛рдПрдБ рдирд╣реАрдВ рдорд╛рдирддреЗ, рдЖрдк service accounts рдХрд╛ рдкреНрд░рддрд┐рд░реВрдкрдг рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рд╕реНрд╡рдпрдВ рдЕрдкрдиреА рдПрдХреНрд╕реЗрд╕ рдиреАрддрд┐ рд╡рд╛рд▓реЗ рд╕рдВрд╕рд╛рдзрди рд╣реИрдВред рдиреАрдЪреЗ рд╕рдм рдХреБрдЫ рдЗрдиреНрд╣реАрдВ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рддрд╛ рд╣реИред
рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рдмрджрд▓рд╛рд╡: рдЕрдиреБрдорддрд┐рдпрд╛рдБ рдЯреНрд░реА рдкрд░ рд░рд╣рддреА рд╣реИрдВ, рдкрд╣рдЪрд╛рди рдкрд░ рдирд╣реАрдВ
AWS рдореЗрдВ, рдорд╛рдирд╕рд┐рдХ рдореЙрдбрд▓ "рдПрдХ рдкрд╣рдЪрд╛рди рд╕реЗ рдПрдХ рдиреАрддрд┐ рд╕рдВрд▓рдЧреНрди рдХрд░реЗрдВ" рд╣реИред рдЖрдк рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдпрд╛ рдПрдХ рднреВрдорд┐рдХрд╛ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЙрд╕ рдкрд░ JSON рд▓рдЧрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдЕрдиреБрдорддрд┐ рдкреНрд░рд┐рдВрд╕рд┐рдкрд▓ рдХреЗ рд╕рд╛рде рдпрд╛рддреНрд░рд╛ рдХрд░рддреА рд╣реИред рд╕рдВрд╕рд╛рдзрди рдиреАрддрд┐рдпрд╛рдБ рдореМрдЬреВрдж рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкрд╣рдЪрд╛рди-рд╕рдВрд▓рдЧреНрди рдиреАрддрд┐ рдЧреБрд░реБрддреНрд╡рд╛рдХрд░реНрд╖рдг рдХрд╛ рдХреЗрдВрджреНрд░ рд╣реИред
GCP рдЗрд╕реЗ рдЙрд▓рдЯ рджреЗрддрд╛ рд╣реИред рдПрдХ IAM рдиреАрддрд┐ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реИ - (member, role) рдЬреЛрдбрд╝реЗ - рдЬреЛ рд╕рдВрд╕рд╛рдзрди рдкрджрд╛рдиреБрдХреНрд░рдо рдореЗрдВ рдПрдХ рдиреЛрдб рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реЛрддреЗ рд╣реИрдВ (organization, folder, project, рдпрд╛ рдПрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд resource)ред рдиреАрддрд┐ рдПрдХреНрд╕реЗрд╕ рдХреА рдЬрд╛ рд░рд╣реА рдЪреАрдЬрд╝ рдкрд░ рд░рд╣рддреА рд╣реИ, рди рдХрд┐ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рд╡рд╛рд▓реА рдкрд╣рдЪрд╛рди рдкрд░ред рдХрд┐рд╕реА рднреА рдмрд┐рдВрджреБ рдкрд░ рдЖрдкрдХреА рдкреНрд░рднрд╛рд╡реА рдПрдХреНрд╕реЗрд╕ рдЙрд╕ рдиреЛрдб рддрдХ рд░реВрдЯ рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓реА рд╣рд░ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХрд╛ рд╕рдВрдШ рд╣реИред folder рд╕реНрддрд░ рдкрд░ рдПрдХ рд╕рдореВрд╣ рдХреЛ roles/compute.admin рдкреНрд░рджрд╛рди рдХрд░реЗрдВ рдФрд░ рдЙрд╕ folder рдХреЗ рддрд╣рдд рд╣рд░ project рдЗрд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдЧрд╛ред
рдпрджрд┐ рдЖрдкрдиреЗ Azure RBAC рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ рддреЛ рдпрд╣ рдкрд░рд┐рдЪрд┐рдд рд▓рдЧреЗрдЧрд╛ - рдпрд╣ рдиреАрдЪреЗ рдХреА рдУрд░ рд╡рд┐рд░рд╛рд╕рдд рдХреЗ рд╕рд╛рде рднреВрдорд┐рдХрд╛-рдПрдЯ-рдП-рд╕реНрдХреЛрдк рд╣реИред рд╡рд╣ рдирд┐рдпрдо рдЬреЛ рдЖрдкрдХреЛ рдмрдЪрд╛рддрд╛ рд╣реИ:
рдЬрдм GCP рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ, рддреЛ "рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкрд░ рдиреАрддрд┐" рдХреА рддрд▓рд╛рд╢ рдмрдВрдж рдХрд░ рджреЗрдВред org, folder, project, рдпрд╛ resource рдкрд░ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рджреЗрдЦреЗрдВ - рдФрд░ рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рдпрд╣ рдиреАрдЪреЗ рдХреА рдУрд░ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЕрдиреБрдорддрд┐ рддреАрди рд╕реНрддрд░ рдКрдкрд░ рд╣реЛ рд╕рдХрддреА рд╣реИред
рдХреБрдЫ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдмрд╛рддреЗрдВ рдЬреЛ AWS рд╕реЗ рднрд┐рдиреНрди рд╣реИрдВ:
- рднреВрдорд┐рдХрд╛рдПрдБ рддреАрди рдЧреНрд░реЗрдб рдореЗрдВ рдЖрддреА рд╣реИрдВред Primitive рднреВрдорд┐рдХрд╛рдПрдБ (
roles/owner,roles/editor,roles/viewer) рдореЛрдЯреЗ рд╡рд┐рд░рд╛рд╕рдд рд╡рд╛рд▓реЗ рддрд┐рдХрдбрд╝реА рд╣реИрдВ - рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдореЗрдВ рдЙрдирд╕реЗ рдмрдЪреЗрдВред Predefined рднреВрдорд┐рдХрд╛рдПрдБ рд╡реЗ рдмрд╛рд░реАрдХ-рджрд╛рдиреЗрджрд╛рд░ рдкреНрд░рддрд┐-рд╕реЗрд╡рд╛ рднреВрдорд┐рдХрд╛рдПрдБ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдЖрдкрдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП (roles/storage.objectViewer,roles/compute.instanceAdmin.v1, ...)ред Custom рднреВрдорд┐рдХрд╛рдПрдБ рдЖрдкрдХреА рд╣реИрдВ рдЬрдм рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╕реЗрдЯ рдмрд╣реБрдд рд╡реНрдпрд╛рдкрдХ рд╣реЛред - рдЖрдзрд╛рд░ рдореЙрдбрд▓ рдпреЛрдЧрд╛рддреНрдордХ рдФрд░ рдХреЗрд╡рд▓-рдЕрдиреБрдорддрд┐ рд╡рд╛рд▓рд╛ рд╣реИред AWS рдореЗрдВ рд╣рд░ рдиреАрддрд┐ рдореЗрдВ
Effect: DenyрдмреБрдирд╛ рд╣реБрдЖ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдкреНрд░рднрд╛рд╡реА рдПрдХреНрд╕реЗрд╕ рдХреЗрд╡рд▓ рдЕрдиреБрдорддрд┐рдпреЛрдВ рдХрд╛ рд╕рдВрдШ рд╣реИред - рдЕрд╕реНрд╡реАрдХреГрддрд┐ рдПрдХ рдЕрд▓рдЧ рдкрд░рдд рд╣реИред рдЬрдм рдЖрдкрдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдХрдареЛрд░ "рдХрднреА рдирд╣реАрдВ, рдЕрдиреБрджрд╛рди рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛" рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рддреЛ рдЖрдк рдПрдХ IAM deny policy рд▓рд┐рдЦрддреЗ рд╣реИрдВ - рдПрдХ рдЕрд▓рдЧ рдСрдмреНрдЬреЗрдХреНрдЯ рдЬреЛ org/folder/project рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЕрдиреБрдорддрд┐рдпреЛрдВ рд╕реЗ рдкрд╣рд▓реЗ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдЗрдирд▓рд╛рдЗрди
Denyрд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХреЗ рд╕рдмрд╕реЗ рдХрд░реАрдм рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЬрд╛рдирдмреВрдЭрдХрд░ рдЖрдЙрдЯ-рдСрдл-рдмреИрдВрдб рд╣реИред - рдЧрд╛рд░реНрдбрд░реЗрд▓реНрд╕ рдлрд┐рд░ рд╕реЗ рдПрдХ рддреАрд╕рд░реА рдЪреАрдЬрд╝ рд╣реИрдВ: Organization Policy Serviceред
constraints/compute.vmExternalIpAccessрдпрд╛constraints/iam.disableServiceAccountKeyCreationрдЬреИрд╕реЗ рдкреНрд░рддрд┐рдмрдВрдз SCPs рдХреЗ GCP рдПрдирд╛рд▓реЙрдЧ рд╣реИрдВред рд╡реЗ org/folder/project рдкрд░ рд╕рдВрд▓рдЧреНрди рд╣реЛрддреЗ рд╣реИрдВ, рдиреАрдЪреЗ рдХреА рдУрд░ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рддреЗ рд╣реИрдВ, рдФрд░ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдореМрдЬреВрдж рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдмрдЬрд╛рдп рдЗрд╕рдХреЗ рдХрд┐ рдХреМрди рдХреНрдпрд╛ рдХреЙрд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИред "SCP-рдЖрдХрд╛рд░ рдХреЗ рдЧрд╛рд░реНрдбрд░реЗрд▓" рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВ, рди рдХрд┐ "IAM рднреВрдорд┐рдХрд╛" рдХреЗ рдмрд╛рд░реЗ рдореЗрдВред
рддреЛ рдЬрд╣рд╛рдБ AWS рдЖрдкрдХреЛ IAM рдХреЗ рднреАрддрд░ рдПрдХ рдЕрдиреБрдорддрд┐/рдЕрд╕реНрд╡реАрдХреГрддрд┐ рд╡реНрдпрд╛рдХрд░рдг рджреЗрддрд╛ рд╣реИ, GCP рдЗрд╕ рдХрд╛рдо рдХреЛ рдЕрдиреБрдорддрд┐ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ, рдЕрд╕реНрд╡реАрдХреГрддрд┐ рдиреАрддрд┐рдпреЛрдВ рдФрд░ org-рдиреАрддрд┐ рдмрд╛рдзрд╛рдУрдВ рдореЗрдВ рдлреИрд▓рд╛рддрд╛ рд╣реИред рдкрд░рд┐рдгрд╛рдо рд╕рдорд╛рди, рддрдВрддреНрд░ рддреАрдиред
рд╕рдм рдХреБрдЫ рдПрдХ project рд╣реИ - рдФрд░ рдЗрд╕рдХреА APIs рдмрдВрдж рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИрдВ
project GCP рдХреА рдореВрд▓рднреВрдд рдЗрдХрд╛рдИ рд╣реИред рдпрд╣ рдПрдХ AWS account рдХрд╛ рдореЛрдЯрд╛ рдПрдирд╛рд▓реЙрдЧ рд╣реИ: рдПрдХ рдЕрд▓рдЧрд╛рд╡ рд╕реАрдорд╛, рдПрдХ IAM рд╕реНрдХреЛрдк, рдФрд░ рдПрдХ рдмрд┐рд▓рд┐рдВрдЧ рд▓рдХреНрд╖реНрдп рдПрдХ рд╕рд╛рдеред рд▓реЗрдХрд┐рди рдПрдХ project рдПрдХ account рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрд╣реАрдВ рдЕрдзрд┐рдХ рд╣рд▓реНрдХрд╛ рд╣реИ - рдмрдирд╛рдиреЗ рдореЗрдВ рд╕рд╕реНрддрд╛, рд╣рдЯрд╛рдиреЗ рдореЗрдВ рдЖрд╕рд╛рди, рджрд░реНрдЬрдиреЛрдВ рдореЗрдВ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрднрд┐рдкреНрд░реЗрдд рд╣реИред рдореБрд╣рд╛рд╡рд░реЗрджрд╛рд░ рдкреИрдЯрд░реНрди рдкреНрд░рддрд┐ рд╡рд╛рддрд╛рд╡рд░рдг рдкреНрд░рддрд┐ рд╡рд░реНрдХрд▓реЛрдб рдПрдХ project рд╣реИ (app-qa, app-prod), рди рдХрд┐ рдЯреИрдЧ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХреБрдЫ рд╕рд╛рдЭрд╛ accountsред
projects рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рддреАрди рдмрд╛рддреЗрдВ рдЬрд┐рдирдХрд╛ рдХреЛрдИ рд╕реНрдкрд╖реНрдЯ AWS рд╕рдордХрдХреНрд╖ рдирд╣реАрдВ рд╣реИ:
- рдПрдХ project рдХреЗ рддреАрди рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рдЕрдВрддрд░ рдкрд░реЗрд╢рд╛рди рдХрд░рддреЗ рд╣реИрдВред project ID рдПрдХ рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рдЕрджреНрд╡рд┐рддреАрдп, рдорд╛рдирд╡-рдЪреБрдиреА рд╣реБрдИ, рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реИ (
acme-app-prod-7f3a) - рдпрд╣ рд╡рд╣ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рд▓рдЧрднрдЧ рд╣рд░ рдХрдорд╛рдВрдб рдФрд░ рд╕рдВрд╕рд╛рдзрди рдкрде рдореЗрдВ рдбрд╛рд▓рддреЗ рд╣реИрдВред project number рдПрдХ рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рдЕрджреНрд╡рд┐рддреАрдп рдкреВрд░реНрдгрд╛рдВрдХ рд╣реИ рдЬрд┐рд╕реЗ GCP рдЕрд╕рд╛рдЗрди рдХрд░рддрд╛ рд╣реИред display name рдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдФрд░ рдХреЙрд╕реНрдореЗрдЯрд┐рдХ рд╣реИред ID рдХреЛ рдзреНрдпрд╛рди рд╕реЗ рдЪреБрдиреЗрдВ; рдЖрдк рдЗрд╕реЗ рдХрднреА рдирд╣реАрдВ рдмрджрд▓ рд╕рдХрддреЗред - Service APIs рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдмрдВрдж рд╣реЛрддреА рд╣реИрдВред рдпрд╣ рд╕рдмрд╕реЗ рдЖрдо рдкрд╣рд▓реЗ рджрд┐рди рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реИред VM рдмрдирд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЖрдк
compute.googleapis.comрд╕рдХреНрд╖рдо рдХрд░рддреЗ рд╣реИрдВ; рдПрдХ рдмрдХреЗрдЯ рд╕реЗ рдкрд╣рд▓реЗ,storage.googleapis.com; рдФрд░ рдЗрд╕реА рддрд░рд╣, рдкреНрд░рддрд┐ projectред GCP рдкрд░ рдЖрдкрдХреА рдкрд╣рд▓реА "рдЕрд╕реНрд╡реАрдХреГрддрд┐" рдЖрдорддреМрд░ рдкрд░ рдПрдХ рдЧреБрдо IAM рднреВрдорд┐рдХрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ - рдпрд╣API [compute.googleapis.com] not enabled on projectрд╣реЛрддреА рд╣реИред AWS рдореЗрдВ, рд╕реЗрд╡рд╛рдПрдБ рдмрд╕ рдореМрдЬреВрдж рд╣реЛрддреА рд╣реИрдВ; GCP рдореЗрдВ, рд╣рд░ project рдПрдХ рдЦрд╛рд▓реА рд╕реНрд▓реЗрдЯ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдЖрдк рдареАрдХ рд╡рд╣реА рд╕рддрд╣ рдЪрд╛рд▓реВ рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХрд╛ рдЖрдк рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред (Terraform рдореЗрдВ рдпрд╣google_project_serviceрд╣реИ; CLI рд╕реЗ,gcloud services enableред) - Projects рдкреНрд░рд╛рдХреГрддрд┐рдХ рдмреНрд▓рд╛рд╕реНрдЯ-рд░реЗрдбрд┐рдпрд╕ рдФрд░ рдХреЛрдЯрд╛ рд╕реАрдорд╛ рд╣реИрдВред рдХреЛрдЯрд╛, рдмрдЬрдЯ рдФрд░ рдЕрдзрд┐рдХрд╛рдВрд╢ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреНрд░рддрд┐ project рд╣реЛрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдПрдХ рдкреНрд░рдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ project рд╢реБрд░реВ рдХрд░рдирд╛ рд╕рд╛рдорд╛рдиреНрдп, рд╕рд╕реНрддрд╛ рдХрджрдо рд╣реИ - рди рдХрд┐ AWS account рдЬреИрд╕реА рдФрдкрдЪрд╛рд░рд┐рдХрддрд╛ред
Service accounts: рдЖрдк рдкреНрд░рддрд┐рд░реВрдкрдг рдХрд░рддреЗ рд╣реИрдВ, рдЖрдк рдорд╛рдирддреЗ рдирд╣реАрдВ рд╣реИрдВ
AWS рдореЗрдВ, рдПрдХ рднреВрдорд┐рдХрд╛ рдЕрдиреБрдорддрд┐рдпреЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реИ рдЬрд┐рд╕реЗ рдПрдХ рдкреНрд░рд┐рдВрд╕рд┐рдкрд▓ STS рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдорд╛рдирддрд╛ рд╣реИ, рдЬреЛ рдПрдХ рдЯреНрд░рд╕реНрдЯ рдиреАрддрд┐ рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рд╣реЛрддрд╛ рд╣реИред GCP рдореЗрдВ рд╕рдордХрдХреНрд╖ рдХрд╛рд░реНрдпрд╡рд╛рд╣рдХ service account (SA) рд╣реИ, рдФрд░ рдпрд╣ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬреЛ рд╣рд░ AWS рдЗрдВрдЬреАрдирд┐рдпрд░ рдХреЛ рднреНрд░рдорд┐рдд рдХрд░рддрд╛ рд╣реИред
рдПрдХ service account рдПрдХ рдкрд╣рдЪрд╛рди рдФрд░ рдПрдХ рд╕рдВрд╕рд╛рдзрди рджреЛрдиреЛрдВ рд╣реИред рдЗрд╕рдХрд╛ рдПрдХ рдИрдореЗрд▓ (deployer@acme-app-prod.iam.gserviceaccount.com) рд╣реИ, рдпрд╣ рдПрдХ project рдХреЗ рдЕрдВрджрд░ рд░рд╣рддрд╛ рд╣реИ, рдФрд░ - рдорд╣рддреНрд╡рдкреВрд░реНрдг рд░реВрдк рд╕реЗ - рдЗрд╕рдХреА рдЕрдкрдиреА IAM рдиреАрддрд┐ рд╣реИ рдЬреЛ рдпрд╣ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддреА рд╣реИ рдХрд┐ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреМрди рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд╡рд╣ рджреВрд╕рд░рд╛ рдЖрдзрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдХреЛрдИ AWS рд░рд┐рдлреНрд▓реЗрдХреНрд╕ рдирд╣реАрдВ рд╣реИ:
- рдПрдХ service account рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рдкреНрд░рд┐рдВрд╕рд┐рдкрд▓ рдХреЛ SA рдкрд░ рд╣реА рдПрдХ рднреВрдорд┐рдХрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ -
roles/iam.serviceAccountTokenCreator(рдХрдо рд╕рдордп рддрдХ рдЪрд▓рдиреЗ рд╡рд╛рд▓реЗ рдЯреЛрдХрди рдмрдирд╛рдиреЗ рдФрд░ рдЙрд╕рдХрд╛ рдкреНрд░рддрд┐рд░реВрдкрдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП) рдпрд╛roles/iam.serviceAccountUser(рдЗрд╕реЗ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдП рдЬрд╛ рд░рд╣реЗ рд╕рдВрд╕рд╛рдзрди рд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рдЬреИрд╕реЗ VM рдпрд╛ Cloud Run рд╕реЗрд╡рд╛)ред рдпрд╣ рджреЛ-рддрд░рдлрд╛ рдЕрдиреБрджрд╛рди рд╣реИ рдЬрд┐рд╕реЗ AWS рдХреЗ рд▓реЛрдЧ рднреВрд▓ рдЬрд╛рддреЗ рд╣реИрдВ: рдЖрдкрдХреЗ CI рдкреНрд░рд┐рдВрд╕рд┐рдкрд▓ рдХреЛ рд╡реНрдпрд╛рдкрдХ project рдЕрдзрд┐рдХрд╛рд░ рджреЗрдирд╛ рдмреЗрдХрд╛рд░ рд╣реИ рдпрджрд┐ рд╡рд╣ deployer SA рдирд╣реАрдВ рдмрди рд╕рдХрддрд╛ред - рдЖрдк рдПрдХ SA рдХрд╛ рдкреНрд░рддрд┐рд░реВрдкрдг рдПрдХ рдЯреЛрдХрди (
generateAccessToken) рдорд╛рдВрдЧрдХрд░ рдХрд░рддреЗ рд╣реИрдВ, рди рдХрд┐ рдЯреНрд░рд╕реНрдЯ-рдиреАрддрд┐ рд╣реИрдВрдбрд╢реЗрдХ рдХреЗ рд╕рд╛рде рдПрдХ рднреВрдорд┐рдХрд╛ рдорд╛рдирдХрд░ред рдкреНрд░рддрд┐рд░реВрдкрдг рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ SA рд╕рдВрд╕рд╛рдзрди рдкрд░ рдПрдХ рд╕рд╛рдзрд╛рд░рдг IAM рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рд░рд╣рддреА рд╣реИ - рдХреЛрдИ рдЕрд▓рдЧ рдЯреНрд░рд╕реНрдЯ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред - Service account keys рдореМрдЬреВрдж рд╣реИрдВ рдФрд░ рдЖрдкрдХреЛ рдЙрдирд╕реЗ рдЬреНрдпрд╛рджрд╛рддрд░ рдмрдЪрдирд╛ рдЪрд╛рд╣рд┐рдПред рдПрдХ рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЧрдИ JSON рдХреБрдВрдЬреА рдПрдХ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЪрд▓рдиреЗ рд╡рд╛рд▓реА рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рдФрд░ рдПрдХ рдХреНрд▓рд╛рд╕рд┐рдХ рд▓реАрдХ рд╡реЗрдХреНрдЯрд░ рд╣реИ; рдХрдИ orgs рдкрд╣рд▓реЗ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдмрд╛рдзрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ org-рд╡реНрдпрд╛рдкреА рдХреБрдВрдЬреА рдирд┐рд░реНрдорд╛рдг рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рддреЗ рд╣реИрдВред рдХреАрд▓реЗрд╕ рд╡рд┐рдХрд▓реНрдк рд╡реЗ рд╣реИрдВ рдЬрд┐рдирдХреА рдЖрдкрдХреЛ рддрд▓рд╛рд╢ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдПред
- рдХреАрд▓реЗрд╕ CI Workload Identity Federation рд╣реИ - AWS рдХреЗ OIDC рдлреЗрдбрд░реЗрд╢рди рдЬреИрд╕рд╛ рд╣реА OIDC рд╡рд┐рдЪрд╛рд░ред рдЖрдкрдХреЗ GitHub Actions рдпрд╛ рдмрд╛рд╣рд░реА рд╡рд░реНрдХрд▓реЛрдб рдПрдХ OIDC рдЯреЛрдХрди рдкреНрд░рд╕реНрддреБрдд рдХрд░рддреЗ рд╣реИрдВ, рдПрдХ рд╡рд░реНрдХрд▓реЛрдб рдЖрдЗрдбреЗрдВрдЯрд┐рдЯреА рдкреВрд▓ рдЬрд╛рд░реАрдХрд░реНрддрд╛ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рддрд╛ рд╣реИ, рдФрд░ GCP рдПрдХ SA рдХреЗ рд▓рд┐рдП рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рд╡рд╛рдкрд╕ рджреЗрддрд╛ рд╣реИред рдХреЛрдИ рд╕рдВрдЧреНрд░рд╣реАрдд рд░рд╣рд╕реНрдп рдирд╣реАрдВред (GKE рдХреЗ рдЕрдВрджрд░, рдПрдирд╛рд▓реЙрдЧ Workload Identity рд╣реИ, рдЬреЛ рдПрдХ Kubernetes service account рдХреЛ рдПрдХ Google service account рд╕реЗ рдмрд╛рдВрдзрддрд╛ рд╣реИ - AWS рдХреЗ IRSA рдХрд╛ рд╕реАрдзрд╛ рдкреНрд░рддрд┐рд░реВрдкред)
рдПрдХ-рдкрдВрдХреНрддрд┐ рдЕрдиреБрд╡рд╛рдж: рдПрдХ AWS рднреВрдорд┐рдХрд╛ рдЬрд┐рд╕реЗ рдЖрдк рдЯреНрд░рд╕реНрдЯ рдиреАрддрд┐ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдорд╛рдирддреЗ рд╣реИрдВ рд╡рд╣ рдПрдХ GCP service account рдмрди рдЬрд╛рддреА рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк SA рдкрд░ рдПрдХ рдЯреЛрдХрди-рдирд┐рд░реНрдорд╛рддрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рддрд┐рд░реВрдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВред
рдкрд╣рдЪрд╛рди рдбреЛрдореЗрди: Cloud Identity, Workspace, рдФрд░ org
GCP рдкрд╣рдЪрд╛рди рдХреЛ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рд╕реЗ рдЕрд▓рдЧ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди Azure рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрд╣реАрдВ рдЕрдзрд┐рдХ рдзреАрд░реЗ рд╕реЗред organization node рдПрдХ рд╕рддреНрдпрд╛рдкрд┐рдд рдбреЛрдореЗрди рдХреЗ рд╡рд┐рд░реБрджреНрдз рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рдПрдХ Cloud Identity рдпрд╛ Google Workspace account рдХреЗ рд╕реНрд╡рд╛рдорд┐рддреНрд╡ рдореЗрдВ рд╣реЛрддрд╛ рд╣реИред рд╡рд╣ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдФрд░ рд╕рдореВрд╣ - Admin console (admin.google.com) рдореЗрдВ рдкреНрд░рд╢рд╛рд╕рд┐рдд рд╣реЛрддреА рд╣реИ, рдЬреЛ Cloud console рд╕реЗ рдПрдХ рдЕрд▓рдЧ рд╕рддрд╣ рд╣реИ рдЬрд╣рд╛рдБ рдЖрдк рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рддреЗ рд╣реИрдВред
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдФрд░ рд╕рдореВрд╣ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ; IAM рдореЗрдВ рдПрдХреНрд╕реЗрд╕ рдкреНрд░рджрд╛рди рдХреА рдЬрд╛рддреА рд╣реИред рдЖрдк "GCP рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛" рдЙрд╕ рддрд░рд╣ рд╕реЗ рдирд╣реАрдВ рдмрдирд╛рддреЗ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдЖрдк AWS рдореЗрдВ рдПрдХ IAM рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рддреЗ рд╣реИрдВред рдорд╛рдирд╡ Cloud Identity/Workspace рдореЗрдВ рдореМрдЬреВрдж рд╣реЛрддрд╛ рд╣реИ (рдпрд╛ рдЖрдкрдХреЗ IdP рд╕реЗ рдлреЗрдбрд░реЗрдЯреЗрдб рд╣реЛрддрд╛ рд╣реИ), рдФрд░ рдЖрдк рдЙрдиреНрд╣реЗрдВ - рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рдПрдХ рд╕рдореВрд╣ рдХреЗ рд░реВрдк рдореЗрдВ - рд╕рдВрд╕рд╛рдзрди рдЯреНрд░реА рдкрд░ IAM рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдореЗрдВ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддреЗ рд╣реИрдВред рд╕рд░реНрд╡реЛрддреНрддрдо рдЕрднреНрдпрд╛рд╕ рд╕рдореВрд╣реЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рд╣реИ, рдХрднреА рднреА рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВред
- AWS рдХреЗ рдкрд╛рд╕ рдЬреИрд╕рд╛ рдХреЛрдИ рд╕реНрд╡рддрдВрддреНрд░ "IAM users" рд╕реНрдЯреЛрд░ рдирд╣реАрдВ рд╣реИред рдмрд╛рд╣рд░реА IdPs (Okta, Entra ID, рдФрд░ рдЗрд╕реА рддрд░рд╣) Cloud Identity рдореЗрдВ рдлреЗрдбрд░реЗрдЯ рд╣реЛрддреЗ рд╣реИрдВ; рдпрд╣ рдХрд╛рд░реНрдпрдмрд▓ рдПрдХреНрд╕реЗрд╕ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рд╣реИред
- рдпрд╛рдж рд░рдЦрдиреЗ рдпреЛрдЧреНрдп рджреЛ рдлреБрдЯрдЧрди: рд╡рд┐рд╢реЗрд╖ рд╕рджрд╕реНрдп
allUsers(рд╢рд╛рдмреНрджрд┐рдХ рд░реВрдк рд╕реЗ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдХреЛрдИ рднреА, рдЕрдкреНрд░рдорд╛рдгрд┐рдд) рдФрд░allAuthenticatedUsers(рдХрд┐рд╕реА рднреА Google account рд╡рд╛рд▓рд╛ рдХреЛрдИ рднреА рд╡реНрдпрдХреНрддрд┐)ред рдХрд┐рд╕реА рднреА рдПрдХ рдХреЛ рднреВрдорд┐рдХрд╛ рд╕реЗ рдмрд╛рдВрдзрдирд╛ рд╣реА рдмрдХреЗрдЯ рдХреЗ рдЧрд▓рддреА рд╕реЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╣реЛрдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рд╣реИред рдЙрдирдХреЗ рд╕рд╛рде рд╡реИрд╕рд╛ рд╣реА рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░реЗрдВ рдЬреИрд╕рд╛ рдЖрдк S3 рдмрдХреЗрдЯ рдиреАрддрд┐ рдкрд░Principal: "*"рдХреЗ рд╕рд╛рде рдХрд░рддреЗ рд╣реИрдВред
рдвреАрд▓реА рд╕рд╛рджреГрд╢реНрдпрддрд╛: organization рдФрд░ рдЙрд╕рдХрд╛ Cloud Identity рдбреЛрдореЗрди рдореЛрдЯреЗ рддреМрд░ рдкрд░ "IAM Identity Center рдХреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рд╕рд╛рде рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рдПрдХ AWS Organization" рд╣реИ - рд▓реЗрдХрд┐рди рджрд┐рди-рдкреНрд░рддрд┐рджрд┐рди рдХрд╛ рд╕рдВрд╕рд╛рдзрди рдХрд╛рд░реНрдп рдЯреНрд░реА рдкрд░ IAM рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣реЛрддрд╛ рд╣реИ, рди рдХрд┐ рдкрд╣рдЪрд╛рди-рд╕рдВрд▓рдЧреНрди рдиреАрддрд┐ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗред
рдмрд┐рд▓рд┐рдВрдЧ рдПрдХ рдЕрд▓рдЧ рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк projects рд╕реЗ рд▓рд┐рдВрдХ рдХрд░рддреЗ рд╣реИрдВ
GCP рдореЗрдВ рдПрдХ billing account рдЕрдкрдирд╛ рд╕реНрд╡рдпрдВ рдХрд╛ рд╕рдВрд╕рд╛рдзрди рд╣реИ - рдпрд╣ org -> folder -> project рдкрджрд╛рдиреБрдХреНрд░рдо рдореЗрдВ рдПрдХ рдиреЛрдб рдирд╣реАрдВ рд╣реИред Projects рдПрдХ billing account рд╕реЗ рд▓рд┐рдВрдХ рд╣реЛрддреЗ рд╣реИрдВ (рдкреНрд░рддреНрдпреЗрдХ project рдареАрдХ рдПрдХ рд╕реЗ), рдФрд░ рдПрдХ рдПрдХрд▓ billing account рдХрдИ projects рдХреЛ рд╡рд┐рддреНрдд рдкреЛрд╖рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред
- рдЗрд╕рдХрд╛ рдЕрдкрдирд╛ IAM рд╣реИред
roles/billing.admin,roles/billing.user,roles/billing.creatorbilling account рдкрд░ рд░рд╣рддреЗ рд╣реИрдВ, рдЖрдкрдХреЗ рд╕рдВрд╕рд╛рдзрди рднреВрдорд┐рдХрд╛рдУрдВ рд╕реЗ рдЕрд▓рдЧред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдПрдХ рдирдП project рдХреЛ рдПрдХ billing account рд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдЙрд╕ billing account рдкрд░roles/billing.userрдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ - рдХреЗрд╡рд▓ рд╡реНрдпрд╛рдкрдХ project рдЕрдзрд┐рдХрд╛рд░ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред - "рдореИрдВ рдбрд┐рдкреНрд▓реЙрдп рдХрд░ рд╕рдХрддрд╛ рд╣реВрдБ" рдЖрдкрдХреЛ "рдореИрдВ рдПрдХ рд╢реБрд▓реНрдХ рдпреЛрдЧреНрдп project рдмрдирд╛ рд╕рдХрддрд╛ рд╣реВрдБ" рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдирд╣реАрдВ рдмрддрд╛рддрд╛ рд╣реИред рдПрдХ рдРрд╕рд╛ project рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рд╕ рдкрд░ рд╢реБрд▓реНрдХ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ, рдЖрдкрдХреЛ
resourcemanager.projectCreator(org/folder рдкрд░) рдФрд░billing.user(billing account рдкрд░) рджреЛрдиреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рджреВрд╕рд░реЗ рдХреЛ рдЫреЛрдбрд╝ рджреЗрдВ рдФрд░ project рдирд┐рд░реНрдорд╛рдг рдЖрдзрд╛ рд╕рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдПрдХ рдРрд╕рд╛ project рдмрдирддрд╛ рд╣реИ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдЪрд▓рд╛ рд╕рдХрддрд╛ред
рдпрд╣ Azure рдХреА рдХрдареЛрд░ рд╡рд╛рдгрд┐рдЬреНрдп-рдкреНрд▓реЗрди рджреАрд╡рд╛рд░ рд╕реЗ рдирд░рдо рд╣реИ - GCP рдмрд┐рд▓рд┐рдВрдЧ Cloud IAM рд╕реЗ рдЬреБрдбрд╝реА рд╣реБрдИ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рджреБрдирд┐рдпрд╛ рдХреЗ рдмрдЬрд╛рдп рд╕рдорд╛рди gcloud рдФрд░ Terraform рд╕рддрд╣реЛрдВ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдЕрднреА рднреА рдЕрд▓рдЧ рднреВрдорд┐рдХрд╛рдУрдВ рд╡рд╛рд▓рд╛ рдПрдХ рдЕрд▓рдЧ рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИ, рдФрд░ рдпрд╣ рдЕрдХреНрд╖рдо APIs рдХреЗ рдмрд╛рдж рджреВрд╕рд░рд╛ рд╕рдмрд╕реЗ рдЖрдо "рд▓реЗрдХрд┐рди рдореИрдВ рдПрдХ рдПрдбрдорд┐рди рд╣реВрдБ" рдЖрд╢реНрдЪрд░реНрдп рд╣реИред
рдирд╛рдо, ID, рдФрд░ рдПрдХ рдиреЗрдЯрд╡рд░реНрдХрд┐рдВрдЧ рдЖрд╢реНрдЪрд░реНрдп
рдкреНрд░рддреНрдпреЗрдХ GCP resource рдХрд╛ рдПрдХ рд╕рд╛рдкреЗрдХреНрд╖ рд╕рдВрд╕рд╛рдзрди рдирд╛рдо рд╣реЛрддрд╛ рд╣реИ рдЬреИрд╕реЗ projects/acme-app-prod/zones/us-central1-a/instances/web-1 (рдФрд░ рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдпреЛрдЧреНрдп //compute.googleapis.com/... рд░реВрдк)ред project ID рд╣рд░ рд▓реЙрдЧ рд▓рд╛рдЗрди рдФрд░ API рдХреЙрд▓ рдХреЗ рд╕рд╛рде рдпрд╛рддреНрд░рд╛ рдХрд░рддреА рд╣реИ - рд╡рд╣реА рдХрд╛рдо рдЬреЛ AWS рдореЗрдВ рдПрдХ ARN рдХрд╛ account рдХрд░рддрд╛ рд╣реИ - рдЗрд╕рд▓рд┐рдП, Azure рдХреА рддрд░рд╣, рдЖрдкрдХреЗ рд╕рдВрд╕рд╛рдзрди рдирд╛рдо рд╡рд╣ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ project рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдиреНрдХреЛрдб рдХрд░рддрд╛ рд╣реИред рд╡рд╣реА рдЫреЛрдЯреЗ рдирд╛рдо рдЖрдкрдХреЗ -dev, -qa, рдФрд░ -prod projects рдореЗрдВ рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рджреЛрд╣рд░рд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред
рдиреЗрдЯрд╡рд░реНрдХрд┐рдВрдЧ рдХреА рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдЬрд┐рд╕реЗ рдкрд╣рд▓реЗ рд╣реА рдЙрдЬрд╛рдЧрд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЪреБрдкрдЪрд╛рдк AWS рдХреЗ рд╕рд╣рдЬ рдЬреНрдЮрд╛рди рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░рддреА рд╣реИ: GCP рдореЗрдВ рдПрдХ VPC рдиреЗрдЯрд╡рд░реНрдХ рдПрдХ рд╡реИрд╢реНрд╡рд┐рдХ рд╕рдВрд╕рд╛рдзрди рд╣реИ, рдФрд░ рдЗрд╕рдХреЗ рд╕рдмрдиреЗрдЯ рдХреНрд╖реЗрддреНрд░реАрдп рд╣реИрдВред AWS рдореЗрдВ рдПрдХ VPC рдПрдХ рдХреНрд╖реЗрддреНрд░ рддрдХ рд╕реАрдорд┐рдд рд╣реЛрддрд╛ рд╣реИ; GCP рдореЗрдВ рдПрдХ VPC рд╣рд░ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдлреИрд▓рд╛ рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдЖрдк рдЗрд╕рдХреЗ рдЕрдВрджрд░ рдХреНрд╖реЗрддреНрд░реАрдп рд╕рдмрдиреЗрдЯ рдмрдирд╛рддреЗ рд╣реИрдВред рдХреНрд╖реЗрддреНрд░реАрдп рд╕рдмрдиреЗрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рдПрдХрд▓ рд╡реИрд╢реНрд╡рд┐рдХ VPC рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реИ, рди рдХрд┐ рдПрдХ рд╡рд┐рджреЗрд╢реА рдмрд╣реБ-рдХреНрд╖реЗрддреНрд░реАрдп рд╕реЗрдЯрдЕрдк - VPC рдкреАрдпрд░рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рди рдкрд╣реБрдБрдЪреЗрдВ рдЬреЛ рдПрдХ рд╕рдмрдиреЗрдЯ рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рджреЗрддрд╛ рд╣реИред
AWS -> GCP рддреНрд╡рд░рд┐рдд рдорд╛рдирдЪрд┐рддреНрд░
рдкрд╣рд▓реЗ рдорд╣реАрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдЕрдкрдиреЗ рдкрд╛рд╕ рд░рдЦреЗрдВ:
- Organization -> organizationред рд╡рд╣реА рд╡рд┐рдЪрд╛рд░, рд▓реЗрдХрд┐рди GCP org рдЖрдкрдХреЗ Cloud Identity/Workspace рдбреЛрдореЗрди рд╕реЗ рдмрдВрдзрд╛ рд╣реБрдЖ рд╣реИред
- Organizational Unit (OU) -> folderред рдиреЗрд╕реНрдЯреЗрдмрд▓ рдЧреНрд░реБрдкрд┐рдВрдЧ рдиреЛрдб; folders рдореЗрдВ folders рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
- Account -> projectред рдЕрд▓рдЧрд╛рд╡, IAM, рдФрд░ рдмрд┐рд▓рд┐рдВрдЧ рдЗрдХрд╛рдИ - рд▓реЗрдХрд┐рди рд╣рд▓реНрдХрд╛ рдФрд░ рдбрд┐рд╕реНрдкреЛрдЬреЗрдмрд▓, рджрд░реНрдЬрдиреЛрдВ рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ред
- SCP (рдЧрд╛рд░реНрдбрд░реЗрд▓) -> Organization Policy constraint рдПрдХ org/folder/project рд╕реНрдХреЛрдк рдкрд░ - рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдореМрдЬреВрдж рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдиреАрдЪреЗ рдХреА рдУрд░ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рддрд╛ рд╣реИред
- IAM identity-attached policy -> рдПрдХ рдЯреНрд░реА рдиреЛрдб рдкрд░ IAM binding
(member, role)ред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкрд░ рдХреЛрдИ рдиреАрддрд┐ рдирд╣реАрдВ; рдЕрдиреБрджрд╛рди рд╕рдВрд╕рд╛рдзрди рдкрд░ рд░рд╣рддрд╛ рд╣реИ рдФрд░ рдиреАрдЪреЗ рдХреА рдУрд░ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рддрд╛ рд╣реИред - IAM рднреВрдорд┐рдХрд╛ рдЬрд┐рд╕реЗ рдЖрдк рдорд╛рдирддреЗ рд╣реИрдВ (STS + рдЯреНрд░рд╕реНрдЯ рдиреАрддрд┐ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ) -> service account рдЬрд┐рд╕рдХрд╛ рдЖрдк рдкреНрд░рддрд┐рд░реВрдкрдг рдХрд░рддреЗ рд╣реИрдВ (SA рдкрд░ рдПрдХ рдЯреЛрдХрди-рдирд┐рд░реНрдорд╛рддрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ)ред рджреЛ-рддрд░рдлрд╛ рдЕрдиреБрджрд╛рди рдпрд╛рдж рд░рдЦреЗрдВред
- рд╕реНрдкрд╖реНрдЯ
Denyрд╕реНрдЯреЗрдЯрдореЗрдВрдЯ -> IAM deny policy - рдПрдХ рдЕрд▓рдЧ рдСрдмреНрдЬреЗрдХреНрдЯ, рдЕрдиреБрдорддрд┐рдпреЛрдВ рд╕реЗ рдкрд╣рд▓реЗ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред - IRSA (IAM Roles for Service Accounts) -> Workload Identity (GKE) / Workload Identity Federation (рдмрд╛рд╣рд░реА CI) - рд╡рд╣реА OIDC рд╡рд┐рдЪрд╛рд░, рдХреАрд▓реЗрд╕ред
- "рд╕реЗрд╡рд╛ рдмрд╕ рдЙрдкрд▓рдмреНрдз рд╣реИ" -> рдкрд╣рд▓реЗ рдкреНрд░рддрд┐ project рдЗрд╕рдХреА API рд╕рдХреНрд╖рдо рдХрд░реЗрдВ (
google_project_service)ред рдХреЛрдИ AWS рд╕рдордХрдХреНрд╖ рдирд╣реАрдВред - рд▓реЙрдЧ рдореЗрдВ ARN -> рд╕рдВрд╕рд╛рдзрди рдирд╛рдо (
projects/<id>/...); project рд╕рдВрджрд░реНрдн рд╕рдВрд░рдЪрд┐рдд рд╣реИ, рдирд╛рдо-рдПрдиреНрдХреЛрдбреЗрдб рдирд╣реАрдВред
Terraform рд╕реНрдЯреЗрдЯ рдХреЛ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдХрд░рдирд╛, рдЕрдиреБрд╡рд╛рджрд┐рдд
рдпрд╣ рдПрдХ рдРрд╕реА рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдБ рдЖрдкрдХреА AWS рд░рдирдмреБрдХ рд▓рдЧрднрдЧ рдХрд╛рдо рдХрд░рддреА рд╣реИ, рдлрд┐рд░ рд╢реВрдиреНрдп рдХрджрдо рдкрд░ рдЯреВрдЯ рдЬрд╛рддреА рд╣реИред
рдЖрдк рдЬрд┐рд╕ AWS рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдХреЛ рдЬрд╛рдирддреЗ рд╣реИрдВ: рдкреНрд░рдмрдВрдзрди account рдореЗрдВ рдПрдХ state backend рдХреЛ рдХреЛрд▓реНрдб-рд╕реНрдЯрд╛рд░реНрдЯ рдХрд░реЗрдВ (рд╕реНрдерд╛рдиреАрдп state, рдлрд┐рд░ backend рдХреЛ рд╕реНрд╡рдпрдВ рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░реЗрдВ), рдкреНрд░рддрд┐-OU backends рдХреА state рдХреЛ рдЙрд╕ рд░реВрдЯ backend рдореЗрдВ рд░рдЦреЗрдВ, рдФрд░ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ backends рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рджрд╕реНрдп accounts рдмрдирд╛рдПрдВред рд╡рд╣ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдЬреЛ рдЗрд╕реЗ рд╕рд╛рдл рдмрдирд╛рддрд╛ рд╣реИ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдЖрдк рд╣рдореЗрд╢рд╛ рдкреНрд░рдмрдВрдзрди account рд╕реЗ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╣рдореЗрд╢рд╛ рдореМрдЬреВрдж рд░рд╣рддрд╛ рд╣реИ рдФрд░ рдПрдХ S3 рдмрдХреЗрдЯ рд░рдЦ рд╕рдХрддрд╛ рд╣реИред
GCP рдЙрд╕ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдХреЛ рдЙрддреНрдкрддреНрддрд┐ рдкрд░ рдЙрд╕реА рддрд░рд╣ рддреЛрдбрд╝рддрд╛ рд╣реИ рдЬреИрд╕реЗ Azure рдХрд░рддрд╛ рд╣реИ: рд╣рдореЗрд╢рд╛ рдореМрдЬреВрдж рд░рд╣рдиреЗ рд╡рд╛рд▓рд╛ рдСрдмреНрдЬреЗрдХреНрдЯ organization рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ org рдиреЛрдб рд╕рдВрд╕рд╛рдзрди рдирд╣реАрдВ рд░рдЦ рд╕рдХрддрд╛ред рдПрдХ GCS рдмрдХреЗрдЯ рдПрдХ project рдореЗрдВ рд░рд╣рддрд╛ рд╣реИ, рдФрд░ рдПрдХ project рдХреЛ рдПрдХ рдкреИрд░реЗрдВрдЯ рдФрд░ (рдХреБрдЫ рднреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП) рдПрдХ рдмрд┐рд▓рд┐рдВрдЧ рд▓рд┐рдВрдХ рдФрд░ рд╕рдХреНрд╖рдо APIs рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рддреЛ GCP рдХрд╛ "рд░реВрдЯ account" рдПрдХ рд╕реАрдб project рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рдЬрд╛рдирдмреВрдЭрдХрд░ рддрд╛рдЬ рдкрд╣рдирд╛рддреЗ рд╣реИрдВ - рдореБрд╣рд╛рд╡рд░реЗрджрд╛рд░ рдирд╛рдо prj-bootstrap рдпрд╛ рдПрдХ Cloud Foundation Toolkit рд╕реАрдб project рдЬреИрд╕рд╛ рдХреБрдЫ рд╣реИред
рдЕрдиреБрд╡рд╛рджрд┐рдд рдкреНрд░рд╡рд╛рд╣, рдЬрдм org рдФрд░ рдПрдХ billing account рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рд╣реЛрдВ (рд╕рд╛рдорд╛рдиреНрдп рдорд╛рдорд▓рд╛):
- рдПрдХ рдХреЛрд▓реНрдб-рд╕реНрдЯрд╛рд░реНрдЯ, рд╣рдореЗрд╢рд╛ рдХреЗ рд▓рд┐рдП: рд╕реАрдб project рдХреЛ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдмрдирд╛рдПрдВ (
gcloud projects create), рдЙрд╕ рдкрд░ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк APIs рд╕рдХреНрд╖рдо рдХрд░реЗрдВ (cloudresourcemanager,cloudbilling,serviceusage,iam,storage), рдмрд┐рд▓рд┐рдВрдЧ рд▓рд┐рдВрдХ рдХрд░реЗрдВ, рдФрд░ рд╕реНрдерд╛рдиреАрдп Terraform state рдХреЗ рд╕рд╛рде GCS state рдмрдХреЗрдЯ рдмрдирд╛рдПрдВ - рдлрд┐рд░init -migrate-stateрдХреЛ рдЙрд╕ рдмрдХреЗрдЯ рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░реЗрдВред - org-рд╕реНрддрд░ рдХреА рднреВрдорд┐рдХрд╛рдУрдВ рд╡рд╛рд▓рд╛ рдПрдХ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк service account: рдЗрд╕реЗ
resourcemanager.projectCreator,billing.user, рдФрд░ рдЖрдкрдХреА org-рдиреАрддрд┐/IAM рдПрдбрдорд┐рди рднреВрдорд┐рдХрд╛рдПрдБ organization рдиреЛрдб рдкрд░ рдкреНрд░рджрд╛рди рдХрд░реЗрдВ, рддрд╛рдХрд┐ рдпрд╣ рд╣рд░ рдбрд╛рдЙрдирд╕реНрдЯреНрд░реАрдо project рдХреЛ рдмрдирд╛ рдФрд░ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░ рд╕рдХреЗред - рдмрд╛рдХреА рд╕рдм рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдЕрдкреНрд▓рд╛рдИ рд╣реИ: рдЕрддрд┐рд░рд┐рдХреНрдд projects, folders, рдФрд░ рдЙрдирдХреЗ рд╕рдВрд╕рд╛рдзрди Terraform рджреНрд╡рд╛рд░рд╛ рдЙрд╕ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк SA рдХрд╛ рдкреНрд░рддрд┐рд░реВрдкрдг рдХрд░рдХреЗ рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдкреНрд░рддреНрдпреЗрдХ project рдХреА state рдПрдХ GCS backend рдореЗрдВ рдПрдХ
prefixрдХреЗ рддрд╣рдд рд░рд╣рддреА рд╣реИред
рдмрд┐рд▓реНрдХреБрд▓ рдЦрд░реЛрдВрдЪ рд╕реЗ, рдХреНрд░рдо рдордЬрдмреВрд░ рд╣реИ - рдкрд╣рд▓реЗ рд╕реАрдб project, рджреВрд╕рд░рд╛ state рдмрдХреЗрдЯ - рдХреНрдпреЛрдВрдХрд┐ рдПрдХ backend рдПрдХ GCS рдмрдХреЗрдЯ рд╣реИ рдФрд░ рдПрдХ рдмрдХреЗрдЯ рдХреЛ рд░рд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ project рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдФрд░ Azure рдХреА рддрд░рд╣ рдПрдХ рдЫреЛрдЯреА рд╕реА рдЪрд┐рдХрди-рдПрдВрдб-рдПрдЧ рд╕рдорд╕реНрдпрд╛ рд╣реИ: google рдкреНрд░реЛрд╡рд╛рдЗрдбрд░ рдХреЛ рдХреБрдЫ рднреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ project рдФрд░ рд╕рдХреНрд╖рдо APIs рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдк рд╡рд╣ рдкрд╣рд▓рд╛ project рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдПрдХ рдЕрдирд┐рд╡рд╛рд░реНрдп gcloud рдХреЙрд▓ рдХреЗ рд╕рд╛рде рдЙрд╕рдХреА APIs рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рддреЗ рд╣реИрдВ, рдлрд┐рд░ рдмрд╛рдж рдореЗрдВ рдЗрд╕реЗ Terraform рдореЗрдВ рдЕрдкрдирд╛рддреЗ рд╣реИрдВред ( terraform-google-modules/bootstrap рдореЙрдбреНрдпреВрд▓ рдареАрдХ рдЗрд╕реА рд╕реАрдб-project-рдкреНрд▓рд╕-SA рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдкреИрдХреЗрдЬ рдХрд░рддрд╛ рд╣реИред)
рдФрд░ рдпрд╣реАрдВ рдкрд░ GCP рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ AWS рдорд╛рдВрд╕рдкреЗрд╢реА рд╕реНрдореГрддрд┐ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╕рд░рд▓ рд╣реИ: рд╕реАрдб-project рдореЗрдВ backend рдкреНрд▓рд╕ рд╕рджрд╕реНрдп рдореЗрдВ рд╕рдВрд╕рд╛рдзрди рдХреЛ AWS рд╣рдм-рдПрдВрдб-рд╕реНрдкреЛрдХ рдЯреНрд░рд╕реНрдЯ рдорд╢реАрдирд░реА рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ - рдХреЛрдИ backend role_arn рдирд╣реАрдВ, рдХреЛрдИ рдкреНрд░реЛрд╡рд╛рдЗрдбрд░ assume_role рдирд╣реАрдВ, рдХреЛрдИ рджреЛ-рддрд░рдлрд╛ рдЯреНрд░рд╕реНрдЯ рдиреАрддрд┐рдпрд╛рдВ рдирд╣реАрдВред рд╕рд╣реА рднреВрдорд┐рдХрд╛рдУрдВ рд╡рд╛рд▓рд╛ рдПрдХ org-рд╕реНрддрд░ рдХрд╛ service account org-рд╡реНрдпрд╛рдкреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ IAM рдиреАрдЪреЗ рдХреА рдУрд░ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рддрд╛ рд╣реИ; рдкреНрд░реЛрд╡рд╛рдЗрдбрд░ project рд╕реЗрдЯ рдХрд░рдХреЗ projects рдХреЗ рдмреАрдЪ "рд╣реЙрдк" рдХрд░рддрд╛ рд╣реИ; рдФрд░ рдпрд╣ impersonate_service_account рд╕реЗрдЯ рдХрд░рдХреЗ рдбрд┐рдкреНрд▓реЙрдпрд░ рдкрд╣рдЪрд╛рди рдмрди рдЬрд╛рддрд╛ рд╣реИред рдХреНрд░реЙрд╕-project рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИ, рди рдХрд┐ рдПрдХ рдЯреНрд░рд╕реНрдЯ рд╡рд╛рд░реНрддрд╛ред (рдЖрдк рдЗрд╕реЗ рдмрд╛рдж рдореЗрдВ рдХрд╕реНрдЯрдо рднреВрдорд┐рдХрд╛рдУрдВ, рдкреНрд░рддрд┐-project SAs, рдФрд░ рд╕рдорд░реНрдкрд┐рдд CI рдкрд╣рдЪрд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╕реЗрдВрдЧреЗ - рд▓реЗрдХрд┐рди рддрдм рднреА рдпрд╣ рд╕реНрдХреЛрдк рдкрд░ рднреВрдорд┐рдХрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рд╣реИ, рдХрднреА рднреА рдЯреНрд░рд╕реНрдЯ-рдиреАрддрд┐ рд╣реИрдВрдбрд╢реЗрдХ рдирд╣реАрдВред) рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рднреА рдкрдХреНрд╖ рдХреЛ рдХреЛрдбрд┐рдлрд╛рдИ рдХрд░рдиреЗ рдореЗрдВ рдЧрд╣рд░рд╛рдИ рд╕реЗ рдЬрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ HashiCorp Terraform Authoring & Operations Pro рдкрд░реАрдХреНрд╖рд╛ рдареАрдХ рдЗрдиреНрд╣реАрдВ рд╕реНрдЯреЗрдЯ рдФрд░ рдкреНрд░реЛрд╡рд╛рдЗрдбрд░ рдкреИрдЯрд░реНрди рдХреЗ рдЗрд░реНрдж-рдЧрд┐рд░реНрдж рдмрдиреА рд╣реИред
рд╡реЗ рдЪрд╛рд░ рд╕реНрдерд╛рди рдЬрд╣рд╛рдБ рдЖрдкрдХреЗ AWS рдХреЗ рд╕рд╣рдЬ рдЬреНрдЮрд╛рди рдЖрдкрдХреЛ рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рдЧреБрдорд░рд╛рд╣ рдХрд░реЗрдВрдЧреЗ
рдпрджрд┐ рдЖрдк рдмрд╛рдХреА рд╕рдм рдХреБрдЫ рднреВрд▓ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдЗрдиреНрд╣реЗрдВ рдпрд╛рдж рд░рдЦреЗрдВ:
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкрд░ рдХреЛрдИ рдиреАрддрд┐ рдирд╣реАрдВ рд╣реИред рдкрд╣рдЪрд╛рди рд╕реЗ рдЬреБрдбрд╝реЗ JSON рдХреА рддрд▓рд╛рд╢ рдмрдВрдж рдХрд░реЗрдВред рдЕрдиреБрдорддрд┐рдпрд╛рдБ org, folder, project, рдпрд╛ resource рдкрд░
(member, role)рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рд╣реИрдВ, рдФрд░ рд╡реЗ рдиреАрдЪреЗ рдХреА рдУрд░ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рддреА рд╣реИрдВред рдЖрдкрдХреЛ рдЬрд┐рд╕ рдЕрдиреБрджрд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рд╡рд╣ рддреАрди рд╕реНрддрд░ рдКрдкрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред - рдЬрдм рддрдХ рдЖрдк API рд╕рдХреНрд╖рдо рдирд╣реАрдВ рдХрд░рддреЗ, рддрдм рддрдХ рдХреБрдЫ рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ред рдПрдХ рдирдП project рдкрд░ рдЖрдкрдХреА рдкрд╣рд▓реА 403 рдЖрдорддреМрд░ рдкрд░
API not enabledрд╣реЛрддреА рд╣реИ, рди рдХрд┐ рдПрдХ рдЧреБрдо рднреВрдорд┐рдХрд╛ред рд╣рд░ рд╕реЗрд╡рд╛ рдмрдВрдж рд╣реЛрддреА рд╣реИ рдЬрдм рддрдХ рдЖрдк рдЙрд╕реЗ рдкреНрд░рддрд┐ project рдЪрд╛рд▓реВ рдирд╣реАрдВ рдХрд░рддреЗред - рдЖрдк service accounts рдХрд╛ рдкреНрд░рддрд┐рд░реВрдкрдг рдХрд░рддреЗ рд╣реИрдВ, рдЖрдк рднреВрдорд┐рдХрд╛рдПрдБ рдирд╣реАрдВ рдорд╛рдирддреЗред рдФрд░ SA рдЕрдкрдиреА рд╕реНрд╡рдпрдВ рдХреА рдПрдХреНрд╕реЗрд╕ рдиреАрддрд┐ рд╡рд╛рд▓рд╛ рдПрдХ рд╕рдВрд╕рд╛рдзрди рд╣реИ - рдЖрдкрдХреЗ рдкреНрд░рд┐рдВрд╕рд┐рдкрд▓ рдХреЛ рд╡реНрдпрд╛рдкрдХ project рдЕрдзрд┐рдХрд╛рд░ рджреЗрдирд╛ рдмреЗрдХрд╛рд░ рд╣реИ рдпрджрд┐ SA рдкрд░ рдПрдХ рдЯреЛрдХрди-рдирд┐рд░реНрдорд╛рддрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдирд╣реАрдВ рд╣реИред
- рдмрд┐рд▓рд┐рдВрдЧ рдПрдХ рдЕрд▓рдЧ рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИред "рдореИрдВ рдХреБрдЫ рднреА рдбрд┐рдкреНрд▓реЙрдп рдХрд░ рд╕рдХрддрд╛ рд╣реВрдБ" рдХрд╛ рдорддрд▓рдм "рдореИрдВ рдПрдХ рд╢реБрд▓реНрдХ рдпреЛрдЧреНрдп project рдмрдирд╛ рд╕рдХрддрд╛ рд╣реВрдБ рдпрд╛ рдПрдХ billing account рд▓рд┐рдВрдХ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдБ" рд╕реЗ рдХреБрдЫ рдирд╣реАрдВ рд╣реИред рдЕрд▓рдЧ рд╕рдВрд╕рд╛рдзрди, рдЕрд▓рдЧ рднреВрдорд┐рдХрд╛рдПрдБ - billing account рдкрд░
billing.user, project рдПрдбрдорд┐рди рдирд╣реАрдВред
рдХреМрди рд╕реЗ рдкреНрд░рдорд╛рдгрди рдкреНрд░рддреНрдпреЗрдХ рдкрдХреНрд╖ рдХреЛ рдбреНрд░рд┐рд▓ рдХрд░рддреЗ рд╣реИрдВ
рдХреНрд▓рд╛рдЙрдб рдЧрд╡рд░реНрдиреЗрдВрд╕ - рдкрджрд╛рдиреБрдХреНрд░рдо, рдкрд╣рдЪрд╛рди, рдЧрд╛рд░реНрдбрд░реЗрд▓ рдФрд░ рд╕реНрдЯреЗрдЯ - рджреЛрдиреЛрдВ рдХреНрд▓рд╛рдЙрдб рдкрд░ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдФрд░ рдкреНрд░рд╢рд╛рд╕рди рдкрд░реАрдХреНрд╖рд╛рдУрдВ рдХреА рд░реАрдврд╝ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЙрдирдХреЗ рд▓рд┐рдП рдЕрдзреНрдпрдпрди рдХрд░рдирд╛ рдЙрдкрд░реЛрдХреНрдд рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ рд╕рдордЭрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рддреЗрдЬрд╝ рддрд░реАрдХрд╛ рднреА рд╣реИред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА AWS рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рд╣реИ, рддреЛ рдЙрд╕реА рдкрдВрдХреНрддрд┐ рдореЗрдВ Google Cloud рд╡рд╛рд▓рд╛ рдЖрдкрдХрд╛ рдЕрдЧрд▓рд╛ рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рдХрджрдо рд╣реИред
AWS рдкрдХреНрд╖ рдкрд░ (рд╡рд╣ рдЬреНрдЮрд╛рди рдЬрд┐рд╕рд╕реЗ рдЖрдк рдЕрдиреБрд╡рд╛рдж рдХрд░ рд░рд╣реЗ рд╣реИрдВ):
- AWS Certified Cloud Practitioner (CLF-C02) - accounts, IAM, рдФрд░ Organizations рдХреА рдиреАрдВрд╡ред
- AWS Certified Solutions Architect - Associate (SAA-C03) - IAM, рдорд▓реНрдЯреА-рдЕрдХрд╛рдЙрдВрдЯ рд╕рдВрд░рдЪрдирд╛, рдФрд░ рдХреЛрд░ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ред
- AWS Certified Solutions Architect - Professional (SAP-C02) - рдорд▓реНрдЯреА-рдЕрдХрд╛рдЙрдВрдЯ Organizations, SCPs, рдФрд░ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдХреНрд░реЙрд╕-рдЕрдХрд╛рдЙрдВрдЯ рдПрдХреНрд╕реЗрд╕ред
- AWS Certified Security - Specialty (SCS-C03) - IAM рдЧрд╣рд░рд╛рдИ, SCPs, рдФрд░ рдХреБрдВрдЬреА рдкреНрд░рдмрдВрдзрдиред
Google Cloud рдкрдХреНрд╖ рдкрд░ (рд╡рд╣ рдЬреНрдЮрд╛рди рдЬрд┐рд╕рдореЗрдВ рдЖрдк рдЕрдиреБрд╡рд╛рдж рдХрд░ рд░рд╣реЗ рд╣реИрдВ):
- Google Cloud Digital Leader - foundational рд╕реНрддрд░ рдкрд░ organizations, projects, IAM, рдФрд░ billingред
- Google Cloud Associate Cloud Engineer - рджрд┐рди-рдкреНрд░рддрд┐рджрд┐рди рдХрд╛ рдкреНрд▓реЗрди: projects, IAM рдмрд╛рдЗрдВрдбрд┐рдВрдЧ, service accounts, рдФрд░
gcloudред - Google Cloud Professional Cloud Architect - org/folder/project рдкрджрд╛рдиреБрдХреНрд░рдо, рд▓реИрдВрдбрд┐рдВрдЧ-рдЬреЛрди рдбрд┐рдЬрд╝рд╛рдЗрди, рдФрд░ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдЧрд╡рд░реНрдиреЗрдВрд╕ред
- Google Cloud Professional Cloud Security Engineer - IAM рдЧрд╣рд░рд╛рдИ, org рдиреАрддрд┐, service-account рд╕реБрд░рдХреНрд╖рд╛, рдФрд░ рдХреБрдВрдЬреА рдкреНрд░рдмрдВрдзрдиред
рдпрджрд┐ рдЖрдк рдЖрдЬ AWS-рдкреНрд░рдорд╛рдгрд┐рдд рд╣реИрдВ рддреЛ рдПрдХ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдорд╛рд░реНрдЧ: рд╢рдмреНрджрд╛рд╡рд▓реА рдХреЛ рдореИрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Cloud Digital Leader рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ, рдлрд┐рд░ Associate Cloud Engineer рдкрд░ рдЬрд╛рдПрдВ (рдЬреЛ project-рдФрд░-IAM рдкреНрд▓реЗрди рдореЗрдВ рд░рд╣рддрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЖрдк рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ), рдФрд░ Professional Cloud Architect рдпрд╛ Professional Cloud Security Engineer рдЬреЛрдбрд╝реЗрдВ, рдпрд╣ рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХрд╛ рдХрд╛рдо рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдпрд╛ рд╕реБрд░рдХреНрд╖рд╛ рдХреА рдУрд░ рдЭреБрдХрддрд╛ рд╣реИред
рдирд┐рд╖реНрдХрд░реНрд╖
GCP AWS рд╕реЗ рдХрдард┐рди рдирд╣реАрдВ рд╣реИ - рдпрд╣ рдЕрд▓рдЧ рддрд░рд╣ рд╕реЗ рдлреИрдХреНрдЯрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред AWS рдЕрдиреБрдорддрд┐рдпреЛрдВ рдХреЛ рдкрд╣рдЪрд╛рдиреЛрдВ рд╕реЗ рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рдЖрдкрдХреЛ рд╕рдм рдХреБрдЫ рдЪрд╛рд▓реВ рдХреЗ рд╕рд╛рде рдПрдХ рднрд╛рд░реА account рджреЗрддрд╛ рд╣реИ, рдФрд░ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЕрдзрд┐рдХрд╛рд░ рдХреЛ IAM рдореЗрдВ рд╕рдореЗрдЯрддрд╛ рд╣реИред GCP рдЕрдиреБрдорддрд┐рдпреЛрдВ рдХреЛ рдПрдХ рд╕рдВрд╕рд╛рдзрди рдЯреНрд░реА рдкрд░ рд▓рдЯрдХрд╛рддрд╛ рд╣реИ рдЬреЛ рдиреАрдЪреЗ рдХреА рдУрд░ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рддрд╛ рд╣реИ, рдЖрдкрдХреЛ рд╕рд╕реНрддреЗ рдбрд┐рд╕реНрдкреЛрдЬреЗрдмрд▓ projects рджреЗрддрд╛ рд╣реИ рдЬреЛ рдЦрд╛рд▓реА рд╕реНрд▓реЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд╢реБрд░реВ рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рднреВрдорд┐рдХрд╛рдПрдБ рдорд╛рдирдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЖрдкрдХреЛ service accounts рдХрд╛ рдкреНрд░рддрд┐рд░реВрдкрдг рдХрд░рд╛рддрд╛ рд╣реИред рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХрд╛ рдПрдХ рдмрд╛рд░ рдЕрдиреБрд╡рд╛рдж рдХрд░реЗрдВ - рдиреАрддрд┐рдпрд╛рдВ рдкрд╣рдЪрд╛рдиреЛрдВ рд╕реЗ рдЯреНрд░реА рдкрд░ рдЬрд╛рддреА рд╣реИрдВ, accounts рдЕрдкрдиреА APIs рдмрдВрдж рд╣реЛрдиреЗ рдХреЗ рд╕рд╛рде projects рдмрди рдЬрд╛рддреЗ рд╣реИрдВ, рднреВрдорд┐рдХрд╛рдПрдБ service accounts рдмрди рдЬрд╛рддреА рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдЖрдк рдкреНрд░рддрд┐рд░реВрдкрдг рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдмрд┐рд▓рд┐рдВрдЧ рдПрдХ рдЕрд▓рдЧ рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рд▓рд┐рдВрдХ рдХрд░рддреЗ рд╣реИрдВ - рдФрд░ рдмрд╛рдХреА рд╢рдмреНрджрд╛рд╡рд▓реА рд╣реИред рдЗрд╕реЗ рдКрдкрд░ рджрд┐рдП рдЧрдП рдкреНрд░рдорд╛рдгрдкрддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ, рдФрд░ рд╡реЗ рд╣рд┐рд╕реНрд╕реЗ рдЬреЛ рдордирдорд╛рдиреА рдЕрд╕реНрд╡реАрдХреГрддрд┐рдпреЛрдВ рдЬреИрд╕реЗ рд▓рдЧрддреЗ рдереЗ, рдПрдХ рд╕реБрд╕рдВрдЧрдд, рдЬрд╛рдирдмреВрдЭрдХрд░ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рд░реВрдк рдореЗрдВ рдкрдврд╝рдиреЗ рд▓рдЧреЗрдВрдЧреЗред