Шлях 03Урок 2 / 6

Абмяжоўвайце паўнамоцтвы агента

Вызначайце дазволеныя дзеянні, рэсурсы і ўмовы. Правярайце дазволы па-за мадэллю і аддзяляйце рэалізацыю ад выпуску.

Практыка9 хвПраверана

Выдавец Як мы пішам

Праверце сваё разуменнеВы даручаеце агенту рэдагаваць адну галіну, але яго токен можа выконваць push у асноўную галіну. Якая мяжа дзейнічае фактычна?Выканайце практыкаванне
Вы даручаеце агенту рэдагаваць адну галіну, але яго токен можа выконваць push у асноўную галіну. Якая мяжа дзейнічае фактычна?

Чаму вы навучыцеся

  • Апісваць дазвол праз дзеянне, рэсурс і ўмову.
  • Аддзяляць ухваленне задачы ад дазволу на выкананне.
  • Тэставаць, што забароненае дзеянне адхіляецца.

Апішыце задачу перад наданнем доступу

Агенту, які чытае код, патрэбныя іншыя паўнамоцтвы, чым агенту, які разгортвае сэрвіс. Не давайце абодва наборы дазволаў толькі таму, што адзін прадукт падтрымлівае абодва дзеянні.

Вызначайце паўнамоцтвы праз тры часткі: дзеянне, рэсурс і ўмову. Для выдуманага выпраўлення справаздачы агент можа запісваць у адну галіну распрацоўкі функцыі, пакуль задача актыўная. Ён можа чытаць ухваленыя файлы рэпазіторыя. Ён не можа змяняць даныя production або правілы абароны рэпазіторыя.

Патрэбная аперацыяПрыклад мяжы
Вывучыць кодЧытаць выбраны рэпазіторый
Запусціць праверкіВыкарыстоўваць ізаляванае асяроддзе з выдуманымі тэставымі данымі
Падрыхтаваць зменуЗапісваць у галіну задачы
Запытаць праверкуАдкрыць PR без яго merge
Выпусціць праграмуВыкарыстоўваць асобны абаронены працэс разгортвання

Дакладны спосаб забеспячэння межаў залежыць ад інструмента. Калі токен не можа задаць абмежаванне галіны, выкарыстоўвайце дадатковыя сродкі кантролю рэпазіторыя або сэрвіс выканання. Сумленна дакументуйце астатнія паўнамоцтвы.

Забяспечвайце абмежаванне па-за мадэллю

Запыт да мадэлі не з’яўляецца сістэмай кантролю доступу. Кампанент выканання павінен звяраць запытанае дзеянне і мэтавы рэсурс з бягучымі дазволамі. Ён не павінен прымаць сцверджанне мадэлі, што ўхваленне ўжо існуе.

AWS рэкамендуе абмежаваныя дазволы і часовыя ўліковыя даныя для адпаведных рабочых нагрузак. OWASP ужывае падобны прынцып найменшых прывілеяў да агентаў і іх інструментаў. Гэтыя прынцыпы патрабуюць рэалізацыі ў фактычных сістэмах ідэнтычнасцей і выканання. Рэкамендацыі AWS IAM, рэкамендацыі OWASP для агентаў.

Выкарыстоўвайце кароткачасовыя ўліковыя даныя там, дзе гэта падтрымліваецца. Не трымайце ў асяроддзі не звязаныя з задачай сакрэты. Задача толькі для чытання рэпазіторыя не павінна атрымліваць у спадчыну пароль базы даных production з каманднай абалонкі распрацоўшчыка.

Прывязвайце ўхваленне да фактычнага дзеяння

Ухваленне падрыхтоўкі змены не азначае ўхвалення яе разгортвання. Рашэнне аб разгортванні павінна вызначаць артэфакт, мэтавае асяроддзе і адпаведныя ўмовы. Калі яны змяняюцца, папярэдняе рашэнне можа ўжо не дзейнічаць.

Разгледзім агента, які прапануе бяспечнае чытанне базы даных, а пасля ўхвалення выконвае іншы запыт. Карысны механізм ухвалення правярае аперацыю, якая сапраўды запускаецца. Агульнае паведамленне «працягвай» без вызначанага мэтавага рэсурсу можа схаваць гэтую розніцу.

Таксама аддзяляйце ідэнтычнасць ад магчымасцей. Запісвайце, які чалавек або рабочая нагрузка ініцыявалі запуск. Правярайце, што ідэнтычнасць ініцыятара ўсё яшчэ мае дазвол у момант дзеяння. Адкліканне доступу чалавека павінна мець выразна вызначаны ўплыў на працу ў чарзе.

Пратэстуйце адмову і перапыненне

Правярайце не толькі паспяховы сцэнарый. У ізаляваным тэставым асяроддзі паспрабуйце дзеянне па-за межамі дазволенага рэсурсу. Пацвердзіце, што сістэма выканання адхіляе яго. Вывучыце аўдытную падзею, не запісваючы ўліковых даных.

Затым пратэстуйце скасаванне або заканчэнне тэрміну дзеяння ўліковых даных. Вызначце, якая праца спыняецца адразу і якая аперацыя можа завяршыцца. Кнопка спынення не абавязкова адмяняе дзеянне, якое ўжо дасягнула іншай сістэмы.

Захоўвайце невялікі запіс дазволаў разам з задачай. Уключыце адказнага, ухвалены абсяг, фактычныя сродкі кантролю, тэст адмовы і тэрмін дзеяння. Гэта робіць пазнейшы перагляд дастаткова канкрэтным для паляпшэння працоўнага працэсу.

Выканайце практыкаванне

Вызначце дазволы для агента, які выпраўляе фільтр справаздачы. Пералічыце тры дазволеныя і тры забароненыя дзеянні. Уключыце рэпазіторый, галіну, асяроддзе і тэрмін дзеяння. Апішыце, як праверыць кожную адмову без змянення production.

Спампаваць працоўны ліст (Markdown)
Праверце сваё разуменне ↑

Працягнуць навучанне

Крыніцы і дадатковыя матэрыялы

Звязаныя матэрыялы Taiga

Папярэдні ўрок: Вызначце, куды могуць трапляць вашы даныя