Shanraq.org Shanraq.org
Кімге не рұқсат: ең аз құқық қағидасы
Қоғам

Информатика: өз цифрлық көмекшімізді жасаймыз 57-сабақ (барлығы 72)

Кімге не рұқсат: ең аз құқық қағидасы

Кітапхана оқырманға кітап береді, ал қызметкерге каталогты өзгертуге рұқсат етеді.

Картадағы орнымыз

72 сабақтың 57-сі. «Цифрлық қауіпсіздік» блогы (55–62). Үш ойдан алынған тапсырмасы бар жергілікті көмекшіні жалғастырамыз. Әр шараның шегі нақты: оқу нұсқасы дайын ашық сервиске айналмайды.

Кімге не рұқсат: ең аз құқық қағидасы

Жағдай және сұрақ

Кітапхана оқырманға кітап береді, ал қызметкерге каталогты өзгертуге рұқсат етеді. Оқырманға қызметкер құқығын берсек, бір батырма жазбаны бүлдіруі мүмкін. Көмекшіде де оқу мен жазуды бөлеміз.

Жаңа сөздерді анық түсінейік

Аутентификация «кім келді?» дегенге, авторизация «оған не рұқсат?» дегенге жауап береді. Рөл рұқсаттарды біріктіреді. Ең аз құқық қағидасы тек қажет әрекетті қажет уақытқа береді. Тек оқу — осы байланыс арқылы өзгертпеу; ол файлдың абсолют қорғанысы емес.

Сабақтың тірек сигналы

Сұлбаның үш ұяшығын солдан оңға оқып, үшіншісін жабыңыз. Әр ұяшықтың кірісі мен әрекетін айтыңыз; жолдың немен аяқталатынын және қандай байқалатын фактіні тексеретініңізді болжаңыз. Суретті жоба файлымен не бақылау мысалымен салыстырыңыз. Сұлбадағы сан деректен шықпаса, әдемі сурет үшін деректі емес, сұлбаны түзетіңіз.

Қадамдап талдаймыз

data_store.py ашыңыз: connect_readonly SQLite mode=ro қолданады, бет тапсырманы сол арқылы оқиды. init командасы бөлек жаңа дерекқор жасайды, қайталанса бұрынғысын алмастырмайды. Матрица құрыңыз: бет — оқу; көшірме — дереккөзді оқу және жаңа файл жасау; қалпына келтіру — жаңа тағайындалған файл жасау. Ешбір әрекет жұмыс базасын үнсіз қайта жазбауы керек. Веб-беттегі POST сұрауының қабылданбайтынын тексеріңіз.

Болжаңыз және тексеріңіз

Кодты қоспай тұрып күтілетін нәтижені жазыңыз. Оны step-06 не step-07 бумасында орындап, таңба бойынша салыстырыңыз және әр жолды түсіндіріңіз. Кейін бір қауіпсіз ойдан алынған кірісті өзгертіп, «болжау — іске қосу — өзгерту — түсіндіру — тексеру» айналымын қайталаңыз. Шағын жиындағы бақылауды нақты адамдарға берілген уәдеге айналдырмаңыз.

from pathlib import Path
text = Path("data_store.py").read_text()
print("mode=ro" in text, "destination.exists()" in text)

Күтілетін нәтиже

True True

Қатені табыңыз

Операциялық жүйеде файлды жазуға құқығы бар басқа үдерісті беттің read-only байланысы тоқтатпайды. Оқу серверін аккаунт жүйесі деп атамаңыз: онда кіру, пайдаланушы рөлдері және қорғалған қашықтан қолжетімділік жоқ.

Жобаға енгізілетін өзгеріс

1.3 жобасында бұрынғы үш тапсырма, төрт сабақ және еске салу ережесі сақталады. Жаңа әрекеттер security_assistant.py ішіне бөлінді: тексеру, бөлек көшірме жасау және тек жаңа файлға қалпына келтіру. Өзгеріс қай қатерге көмектесетінін және қайсына көмектеспейтінін жазыңыз; оқу дерегі ойдан алынған күйде.

Тапсырма және дәлел

«Әрекет × рұқсат» матрицасын салыңыз. Есепті оқу құқығы неге дерекқорды өшіру құқығын бермейтінін түсіндіріңіз. init қайталанса бас тартатынын тексеріңіз.

Жаңа жағдайға көшіру

Мектеп чатына редактор мен оқырман қажет. Әрқайсына қандай әрекет керек және ортақ құпиясөзсіз құқықты қалай тоқтатамыз?

1, 7 және 30 күннен кейін қайталау

1 күннен кейін сұлбаны жатқа салып, қолданудың бір шегін табыңыз. 7 күннен кейін оны мәтінсіз досыңызға түсіндіріп, блоктың он сұрағының жетеуін шешіңіз; қате жауапты нақты кіріспен талдаңыз. 30 күннен кейін жобаның жаңа көшірмесін ашып, тексеруді қайталап, қағиданы жаңа мысалға көшіріңіз. Кіріс, күтілетін және нақты нәтижесі бар хаттаманы сақтаңыз.

Тексеруге арналған бастапқы құжат

Ресми құжат

Келесі сабақ

Фишинг, қысым және дипфейк

Мәтінде қате не теру қатесі кездессе, бізге айтыңыз

Жоба дәлелін тексеру

Бақылауды, түсіндіруді, қатені түзетуді және жобаңыздағы өзгерісті жазыңыз. Модель алғашқы шатасқан немесе дәлелденбеген байланысты көрсетеді, бірақ дайын жауапты бермейді.

Тексеру үшін кіру керек. Кіру

Пікірлер (0)

Әзірге пікір жоқ. Бірінші болыңыз.