Симон Робинсон - C# для профессионалов. Том II
- Название:C# для профессионалов. Том II
- Автор:
- Жанр:
- Издательство:Лори
- Год:2003
- Город:Москва
- ISBN:5-85582-187-0
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Симон Робинсон - C# для профессионалов. Том II краткое содержание
Платформа .NET предлагает новую среду, в которой можно разрабатывать практически любое приложение, действующее под управлением Windows, а язык C# — новый язык программирования, созданный специально для работы с .NET.
В этой книге представлены все основные концепции языка C# и платформы .NET. Полностью описывается синтаксис C#, приводятся примеры построения различных типов приложений с использованием C# — создание приложений и служб Windows, приложений и служб WWW при помощи ASP.NET, а также элементов управления Windows и WWW Рассматриваются общие библиотеки классов .NET, в частности, доступ к данным с помощью ADO.NET и доступ к службе Active Directory с применением классов DirectoryServices.
Для кого предназначена эта книгаЭта книга предназначена для опытных разработчиков, возможно, имеющих опыт программирования на VB, C++ или Java, но не использовавших ранее в своей работе язык C# и платформу .NET. Программистам, применяющим современные технологии, книга даст полное представление о том, как писать программы на C# для платформы .NET.
Основные темы книги• Все особенности языка C#
• C# и объектно-ориентированное программирование
• Приложения и службы Windows
• Создание web-страниц и web-служб с помощью ASP NET
• Сборки .NET
• Доступ к данным при помощи ADO NET
• Создание распределённых приложений с помощью NET Remoting
• Интеграция с COM, COM+ и службой Active Directory
C# для профессионалов. Том II - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Каждая группа кода имеет одно и только одно условие членства. Здесь представлены типы условий членства в группах кода, доступные в .NET:
□ Zone(Зона) — регион, из которого происходит код.
□ Site(Сайт) — сайт Web, из которого происходит код.
□ Strong name(Строгое имя) — уникальное, проверяемое имя кода. Часто называется 'общим именем'.
□ Publisher(Издатель) — издатель кода.
□ URL— определенное расположение, из которого происходит код.
□ Hash value(хэш-значение) — хэш-значение сборки.
□ Skip verification(Контроль пропуска) — код, который запрашивает сборку, обходит проверки контроля кода.
□ Application directory(Каталог приложения) — расположение сборки в приложении.
□ All code(Весь код) — весь код удовлетворяет этому условию.
□ Custom(Специальный) — определяемое пользователем условие.
Первым типом условия членства в списке является условие Zone, оно наиболее часто используется. В зоне определяется регион происхождения фрагмента кода: MyComputer, Intranet, Trustedи Untrusted. Эти регионы управляются с помощью Security Options в Internet Explorer, об этом мы узнаем больше в последующем при рассмотрении управления политиками системы безопасности. Хотя настройки управляются с помощью Internet Explorer, они применимы ко всей машине. Ясно, что эти конфигурационные параметры недоступны в браузерах других компаний и, фактически, внутристраничные элементы управления, написанные с помощью .NET Framework, не будут работать в браузерах, отличных от Internet Explorer.
Группы кодов организуются в иерархию с условием членства All Code в корне.

Можно видеть, что каждая группа кода имеет одно условие членства и обладает полномочиями, которые должны быть предоставлены группе кода. Мы рассмотрим полномочия более подробно позже. Отметим, что если сборка не соответствует условию членства в группе кода, CLR не пытается сопоставить ее с нижерасположенными группами кода.
Caspol.exe — утилита политики системы безопасности доступа к коду
К утилите командной строки политики системы безопасности доступа к коду мы часто прибегаем в этой главе. Она позволяет просматривать и управлять политикой безопасности. Чтобы получить список ее параметров, введите следующую команду:
caspol.exe
.NET содержит также подключаемый модуль (snap-in) для управляющей консоли Microsoft, обеспечивающий регулирование системы безопасности доступа к коду. Однако ограничимся утилитой командной строки, в этом случае будет легче следовать приведенным примерам и можно создавать сценарии для изменения политики системы безопасности, очень полезные применительно к большому числу машин .
Рассмотрим группы кода на машине с помощью утилиты caspol.exe. Вывод команды перечисляет иерархическую структуру групп кода, дающую описание каждой группы кода. Введите следующую команду:
caspol.exe -listdescription
Microsoft (R) .NET Framework CasPol 1.0.xxxx.xx
Copyright (c) Microsoft Corp 1999-2001. All rights reserved.
Security is ON
Execution checking is ON
Policy change prompt is ON
Level = Machine
Full Trust Assemblies:
1. All_Code: This code group grants no permissions and forms the root of the code group tree.
1.1. My_Computer_Zone: This code group grants full trust to all code originating on the local machine.
1.2. Local.Intranet_Zone: This code group grants the intranet permission set to code from the intranet zone. This permission set grants intranet code the right to use isolated storage, full UI access, some capability to do reflection and limited access to environment variables.
1.2.1. Intranet_Same_Site_Access: All intranet Code gets the right to connect back to the site of its origine.
1.2.2. Intranet_Same_Directory_Access: All intranet code gets the right to read from its install directory.
1.3. Internet_Zone: This code group grants code from the Internet zone the Internet permission set. This permission set grants Internet code the right the use isolated storage an a limited UI access.
1.3.1. Internet_Same_Site_Access: All Internet Code gets the right to connect back to the site of its origin.
1.4. Restricted_Zone: Code coming from a restricted zone does not receive any permissions.
1.5. Trusted_Zone: Code from a trusted zone is granted the Internet permission set. This permission set grants the right the use isolated storage and limited UI access.
1.5.1. Trusted_Same_Site_Access: All Trusted Code gets the right to connect back to the site of its origin.
1.6. Microsoft_Strong_Name: This code group grants code signed with the Microsoft strong name full trust.
1.7. Standards_Strong_Name: This code group grants code signed with the Standards strong name full trust.
Success
Подсистема безопасности .NET следит, чтобы коду из каждой группы разрешалось делать только определенные вещи. Например, код из зоны Интернета будет, по умолчанию, иметь значительно более строгие ограничения, чем код с локального диска. Коду с локального диска обычно предоставляется доступ к данным на локальном диске, но сборкам из Интернета по умолчанию это полномочие не предоставляется.
Используя утилиту caspol и ее эквивалент в панели управления Microsoft, можно определить, какой уровень доверия мы имеем для каждой группы доступа к коду, а для группы управляющего кода рассмотреть полномочия более детальным образом.
Давайте еще раз взглянем на группы доступа к коду, но в более обобщенном виде. Зарегистрируйтесь в системе как локальный администратор, откройте командную строку и введите команду:
caspol.exe -listgroups
Появится вывод:
Microsoft (R) .NET Framework CasPol 1.0.xxxx.x
Copyright (c) Microsoft Corp 1999-2001. All rights reserved.
Security is ON
Execution checking is ON
Policy change prompt is ON
Level = Machine
Code Groups:
1. All code: Nothing
1.1. Zone - My Computer: FullTrust
1.2. Zone - Intranet: FullTrust
1.2.1. All code: Same site Socket and Web.
1.2.2. All code: Same directory FileIO — Read, PathDiscovery
1.3. Zone — Internet: Internet
1.3.1. All code: Same site Socket and Web.
1.4. Zone — Untrusted: Nothing
1.5. Zone — Trusted: Internet
1.5.1. All code: Same site Socket and Web.
1.6. Strong Name -
00240000048000009400000006020000002400005253413100040000010001000
7D1FA57C4AED9F0A32E84AA0FAEFD0DE9E8FD6AEC8F7FB03766C834C999
21EB23BE79AD9D5DCC1DD9AD236132102900B723CF980957FC4E177
108FC607774F29E8320E92EA05ECE4E821C0A5EFE8F1645C4C0C93C1AB9
9285D622CAA652C1DFAD63D745D6F2DE5F17E5EAF0FC4963D261C8A124
36518206DC093344D5AD293:
FullTrust
1.7. StrongName - 00000000000000000400000000000000: FullTrust
Success
Можно заметить в начале вывода Security is ON
. Позже в этой главе мы увидим, что это может быть выключено и снова включено.
Настройка ExecutionChecking
задается включенной по умолчанию, это означает, что всем сборкам должно быть предоставлено разрешение выполнения, прежде чем они смогут выполниться. Если проверка выполнения выключена с помощью caspol
( caspol.exe -execution on|off
), то сборки, которые не имеют полномочий на выполнение, смогут реализоваться, хотя они способны вызвать исключения системы безопасности, если попытаются действовать вопреки политике безопасности в ходе этого выполнения.
Параметр Policy change prompt
определяет, будет ли появляться предупреждающее сообщение " Are you sure
" при попытке изменить политику безопасности.
Интервал:
Закладка: