Содержание
- 2. Сигурност в .NET Framework Програмиране за .NET Framework http://www.nakov.com/dotnet/ Светлин Наков Национална академия по разработка на
- 3. Необходими знания Базови познания за .NET Framework Базови познания за езика C# Базови познания за работата
- 4. Съдържание Сигурността в .NET Framework Безопасност на типовете и защита на паметта Хващане на аритметични грешки
- 5. Съдържание (2) Role-Based Security Автентикация и авторизация Identity и Principal обекти Създаване на Identity и Principal
- 6. Сигурността в .NET Framework .NET Framework е проектиран с мисията да бъде сигурна и надеждна платформа
- 7. Безопасност на типовете Управляваният код е защитен от неправилна работа с типовете Не се използват указатели
- 8. Проблемът "Buffer overrun" В .NЕТ Framework масивите и символните низове не могат да се препълнят: private
- 9. Защита на паметта CLR автоматично управлява паметта Динамично-заделените обекти се разполагат в т. нар. Managed heap
- 10. Хващане на аритметични грешки При работа с аритметични операции са възможни препълвания на типовете При получаване
- 11. Хващане на аритметични грешки Ключови думи checked и unchecked Включват / изключват проверката за препълване за
- 12. Демонстрация #1 Безопасност на типовете и аритметичните операции
- 13. Application Domains Application Domains: Позволяват няколко .NET приложения да работят в един процес на ОС Application
- 14. Симетрично кодиране Симетричните кодиращи схеми: Кодират и декодират с един и същ ключ Работят бързо Могат
- 15. Асиметрично кодиране Криптографията с публични ключове (Public Key Cryptography): Използва асиметрични ключове Двойка съответни публичен /
- 16. Асиметрично кодиране Криптографията с публични ключове: Може да използва инфраструктурата на публичния ключ (PKI) T. нар.
- 17. Цифров подпис
- 18. Силно-именувани асемблита Силното име на асембли: Уникално идентифицира асемблито Съдържа цифров подпис и съответен на него
- 19. Силно-именувани асемблита Силно-именуваните асемблита: Не позволяват промяна / подправяне Потвърждават идентичността на производителя Позволяват няколко версии
- 20. Силно-именувани асемблита Силно-именуваните асемблита могат да се инсталират в Global Assembly Cache: Инсталиране и деинсталиране от
- 21. Демонстрация #2 Създаване на асембли със силно име и инсталиране в GAC
- 22. Технологията IsolatedStorage Технологията IsolatedStorage: Позволява приложение, което няма права за достъп до локалния твърд диск, да
- 23. Технологията IsolatedStorage Хранилищата за данни (IsolatedStorage) могат да имат обхват: IsolatedStorageScope.User – хранилището е за текущия
- 24. Технологията IsolatedStorage Отваряне на файл от IsolatedStorage: Местоположение на файловете: Операции с файлове и директории: GetDirectoryNames(),
- 25. Демонстрация #3 Работа с IsolatedStorage от потребителска контрола в IE
- 26. Сигурност на кода Концепцията "сигурност на кода" (Code Access Security) е фундаментален принцип при дизайна на
- 27. Сигурност на кода Code Access Security позволява CLR да изпълнява програмен код с ограничени права, по-ниски
- 28. Политиките за сигурност в .NET
- 29. Нива на политиките за сигурност Има няколко нива на политиките: Enterprise: политика за организацията (за Windows
- 30. .NET Security Policy Editor
- 31. Демонстрация #4 .NET Security Policy Editor – настройка на правата на дадено асембли по SHA1 хеш
- 32. Права (Permissions) Permission обектите представляват специфично право (разрешение) за достъп до ресурс или извършване на някаква
- 33. Стандартни .NET права .NET Framework дефинира стандартни класове за правата за достъп до ресурси:
- 34. Декларативно искане на права Искането на право (permission request) Използва се за да се укаже какви
- 35. Декларативно искане на права При декларативното искане на права се задава параметър SecurityAction: RequestMinimum – указва,
- 36. Демонстрация #5 Декларативно искане на права
- 37. Програмно искане на права Програмното искане на права Позволява даден код да поиска дадено право по
- 38. Какво е "Stack Walk"? Стек на извикванията Security System YourAssembly SomeAssembly .NET Framework Assembly Grant: Execute
- 39. Демонстрация #6 Програмно искане на права
- 40. Контрол над правата Правата за достъп до кода (code-access permissions) имат "Stack Walk" семантика За да
- 41. Контрол над правата При писане на компоненти се налага едно асембли да ползва временно някои от
- 42. Демонстрация #7 Контрол над "Stack Walk" процедурата чрез Assert()
- 43. Сигурност базирана на роли Сигурност, базирана на роли (Role-Based Security) Стандартно средство за контрол на достъпа
- 44. Автентикация и авторизация Автентикация (authentication) Процесът на проверка дали даден потребител е този, за който се
- 45. Identity и Principal обекти Identity (самоличност) – потребител Съдържа информация за потребителя, в контекста на който
- 46. Identity и Principal обекти В .NET Framework има два типа Identity и Principal обекти: WindowsIdentity и
- 47. WindowsPrincipal – пример Извличане на текущия Windows потребител и информация за него: WindowsIdentity winIdentity = WindowsIdentity.GetCurrent();
- 48. Демонстрация #8 Извличане на текущия Windows потребител и информация за него
- 49. Създаване на GenericPrincipal Стъпки при реализация на собствена автентикация и авторизация: Автентикиране на потребителя Създаване на
- 50. Декларативна проверка: Ако текущата нишка не отговаря на посочения потребител или роля, се хвърля SecurityException В
- 51. Програмна проверка: Авторизация по Principal if (principal.IsInRole("Administrators")) { // Perform some action } if (principal.Identity.Name ==
- 52. Демонстрация #9 Авторизация с потребители и роли
- 53. Криптография в .NET Framework .NET Framework има силна поддръжка на криптографски алгоритми и технологии В System.Security.Cryptography
- 54. Изчисляване на хеш стойност Премятане на SHA1 хеш стойност: using System.Security.Cryptography; using System.Text; … Console.Write("Enter some
- 55. Подписване на XML (XMLDSIG) Подписването на XML документи става по стандарта на W3C "XML-Signature Syntax and
- 56. Сигурност в .NET Framework Въпроси?
- 57. Упражнения Опишете ключовите характеристики на сигурността в .NET Framework – безопасност на типовете, защита на паметта,
- 58. Упражнения Напишете Windows Forms контрола за IE, която позволява създаване на албуми със снимки, които се
- 59. Упражнения Напишете Windows Forms приложение, което позволява създаване и записване на текстови бележки. Приложението трябва да
- 60. Упражнения С помощта на Role Based Security направете приложение, което управлява потребителите в дадена система. Потребителите,
- 61. Упражнения Реализирайте приложението от предходната задача, като съхранявате паролите на потребителите не като чист текст, а
- 63. Скачать презентацию