» » » Симон Робинсон - C# для профессионалов. Том II


Авторские права

Симон Робинсон - C# для профессионалов. Том II

Здесь можно скачать бесплатно "Симон Робинсон - C# для профессионалов. Том II" в формате fb2, epub, txt, doc, pdf. Жанр: Программирование, издательство Лори, год 2003. Так же Вы можете читать книгу онлайн без регистрации и SMS на сайте LibFox.Ru (ЛибФокс) или прочесть описание и ознакомиться с отзывами.
Симон Робинсон - C# для профессионалов. Том II
Рейтинг:
Название:
C# для профессионалов. Том II
Издательство:
Лори
Год:
2003
ISBN:
5-85582-187-0
Скачать:

99Пожалуйста дождитесь своей очереди, идёт подготовка вашей ссылки для скачивания...

Скачивание начинается... Если скачивание не началось автоматически, пожалуйста нажмите на эту ссылку.

Вы автор?
Жалоба
Все книги на сайте размещаются его пользователями. Приносим свои глубочайшие извинения, если Ваша книга была опубликована без Вашего на то согласия.
Напишите нам, и мы в срочном порядке примем меры.

Как получить книгу?
Оплатили, но не знаете что делать дальше? Инструкция.

Описание книги "C# для профессионалов. Том II"

Описание и краткое содержание "C# для профессионалов. Том II" читать бесплатно онлайн.



C# для профессионалов

Платформа .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






□ FullTrust — никаких ограничений на полномочия.

□ Execution — возможность выполнения, но без доступа к каким-либо защищенным ресурсам.

□ Nothing — никаких полномочий и невозможность выполнения.

□ LocalIntranet — политика по умолчанию для локальной интранет, подмножество полного множества полномочий. Можно изменять это множество полномочий.

□ Internet — политика по умолчанию для кода неизвестного происхождения. Администратор может управлять полномочиями в этом множестве полномочий.

□ Everything — все стандартные полномочия, за исключением полномочия пропускать проверку кода. Администратор может изменить чье-либо право в этом множестве полномочий. Это полезно там, где политика по умолчанию должна быть строже.

Отметим, что из этих именованных множеств можно изменять определения только трех последних, а первые три являются фиксированными и не могут изменяться.

Полномочия идентичности не могут включаться в множества полномочий, так как CLR является единственным уполномоченным, который может предоставить коду права идентичности. Например, если фрагмент кода принадлежит определенному издателю, то мало смысла со стороны администратора предоставлять ему полномочия идентичности, связанные с другим издателем. CLR дает права, если необходимо, а мы может затем при желании их использовать.

Просмотр полномочий сборки

Предположим, что используется приложение, написанное компанией Microsoft, и мы пытаемся использовать свойство, которое раньше не использовалось. Приложение не имеет копии кода, хранящейся локально, поэтому оно запрашивает ее, и код загружается в глобальный кэш сборок. При таком сценарии для кода из Интернета, опубликованного указанной организацией, подписавшей сборку с помощью сертификата, мы обнаружим, что членство группы кода сборки выглядит примерно так:

Согласно политике в этом примере, группы кода All Code и Internet предоставляют только ограниченные полномочия, а членство группы кода в правом нижнем углу предоставляет сборке полномочие FullTrust. Права всех групп кода объединяются в создании общего эффективного полномочия самого высокого уровня. Таким образом, каждая группа кода, к которой принадлежит сборка, вносит дополнительные полномочия.

Кроме групп кода, к которым принадлежит сборка, мы можем наблюдать полномочия, присвоенные группам кода, а также полномочия идентичности кода, которые дают нам доступ к свидетельству, представленному кодом во время выполнения. Чтобы увидеть полномочия для групп кода сборки, используется команда:

caspol.exe -resolveperm assembly.dll

Проверим это на сборке и визуально оценим предоставленные ей полномочия идентичности и доступа к коду, когда мы получаем к ней доступ через локальную интранет. Если мы введем следующую команду, то увидим полномочия доступа к коду и затем в конце три полномочия идентичности:

caspol.exe -resolveperm http://intranet/assembly.dll


Microsoft (R) .NET Framework CasPol 1.0.xxxx.x

Copyright (c) Microsoft Corp 1999-2001. All rights reserved.


Resolving permissions for level = Enterprise

Resolving permissions for level = Machine

Resolving permissions for level = User


Grant =

<PermissionSet class="System.Security.PermissionSet" version="1">

 <IPermission class="System.Security.Permissions.EnvironmentPermission, mscorlib, Version=1.0.xxxx.x, Culture=neutral, PublicKeyToken=b77a5c561934e089"

  version="1"

  Read="USERNAME;TEMP;TMP" />

 <IPermission class ="System.Security.Permissions.FileDialogPermission, mscorlib, Version=1.0.xxxx.x, Culture=neutral, PublicKeyToken=b77a5c561934e089"

  version="1"

  Unrestricted="true" />

 <IPermission class="System.Security.Permissions.IsolatedStorageFilePermission, mscorlib Version=1.0.xxxx.x, Culture=neutral, PublicKeyToken=b77a5c561934e089"

  version="1"

  Allowed="AssemblyIsolationByUser"

  UserQuota="9223372036854775807"

  Expiry = "9223372036854775807"

  Permanent="True" />

 <IPermission class="System.Security.Permissions.ReflectionPermission, mscorlib, Version=1.0.xxxx.x, Culture=neutral, PublicKeyToken=b77a5c561934e089"

  version="1"

  Flags="ReflectionEmit" />

 <IPermission class="System.Security.Permissions.SecurityPermission, mscorlib, Version=1.0.xxxx.x, Culture=neutral, PublicKeyToken=b77a5c561934e089"

  version="1"

  Flags="Assertion, Execution, RemotingConfiguration" />

 <IPermission class="System.Security.Permissions.UIPermission, mscorlib, Version=1.0.xxxx.x, Culture=neutral, PublicKeyToken=b77a5c561934e089"

  version="1"

  Unrestricted="true" />

 <IPermission class="System.Net.WebPermission, System, Version=1.0.xxxx.x, Culture=neutral, PublicKeyToken=b77a5c561934e089"

  version="1">

  <ConnectAccess>

   <URI uri="(https|http)://intranet/.*"/>

  </ConnectAccess>

 </IPermission>

 <IPermission class="System.Net.DnsPermission, System, Version=1.0.xxxx.x, Culture=neutral, PublicKeyToken=b77a5c561934e089"

  version="1"

  Unrestricted="true"/>

 <IPermission class="System.Drawing.Printing.PrintingPermission, System.Drawing, Version=1.0.xxxx.x, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"

  version="1"

  Level="DefaultPrinting" />

 <IPermission сlass="System.Diagnostics.EventLogPermission, System, Version=1.0.xxxx.x, Culture=neutral, PublicKeyToken=b77a5c561934e089"

  version="1">

  <Machine name="." access="Instrument" />

 </IPermission>

 <IPermission class="System.Security.Permissions.SiteIdentityPermission, mscorlib, Version=1.0.xxxx.x, Culture=neutral, PublicKeyToken=b77a5c561934e089"

  version="1"

  Site="intranet" />

 <IPermission class="System.Security.Permissions.UrlIdentityPermission, mscorlib, Version=1.0.xxxx.x, Culture=neutral, PublicKeyToken=b77a5c561934e089"

  version="1"

  Url="http://intranet/assembly.dll" />

 <IPermission сlass="System.Security.Permissions.ZoneIdentityPermission, mscorlib, Version=1.0.xxxx.x, Culture=neutral, PublicKeyToken=b77a5c561934e089"

  version="1"

  Zone="Intranet" />

</PermissionSet>


Success

Этот вывод показывает каждое из полномочий в виде кода XML, включая определяющий полномочие класс, содержащую класс сборку, версию полномочия и признак шифрования. Вывод предполагает, что можно создать свои собственные полномочия, больше об этом будет сказано позже. Можно также видеть, что каждое из полномочий идентичности содержит более подробную информацию, скажем, о классе UrlIdentityPermission, предоставляющем доступ к URL кода.

Отметим, что в начале вывода caspol.exe разрешает полномочия на уровнях Enterprise, Machine и User и затем перечисляет действующие представленные права. Теперь перейдем к этому вопросу.

Уровни политики: машина, пользователь и предприятие

До сих пор безопасность рассматривалась в контексте одной машины. Часто необходимо определить политику системы безопасности для определенных пользователей или для всей организации, и именно поэтому .NET предоставляет не один, а три уровня групп кода:

□ Machine (Машина)

□ Enterprise (Предприятие)

□ User (Пользователь)

Уровни групп кода управляются независимо и существуют параллельно:

Если существует три вида политики безопасности, как узнать, какая применяется? Действующим полномочием является пересечение полномочий трех уровней. Каждый из трех уровней имеет возможность запретить права, предоставленные другими,— это хорошая весть для администраторов, так как их настройки будут переопределять настройки пользователя.

Для работы с группами кода и полномочиями на уровнях пользователя или предприятия с помощью caspol.exe добавьте либо аргумент enterprise, либо аргумент user, чтобы изменить режим команды, caspol.exe работает по умолчанию на уровне Machine; таким образом эта утилита до сих пор и использовалась. Просмотрим группы кода, перечисленные на уровне User:

caspol.exe -user -listgroups

Так выглядит вывод команды при установке по умолчанию:

Security is ON

Execution checking is ON

Policy change prompt is ON


Level = User

Code Groups:


1. All code: FullTrust

Success

Теперь выполним ту же самую команду, но в этот раз, чтобы увидеть группы кода на уровне Enterprise:

caspol.exe -enterprise -listgroups

Вывод команды выглядит так:

Security is ON

Execution checking is ON

Policy change prompt is ON


Level = Enterprise

Code Groups:


1. All code: FullTrust

Success

Как можно видеть, по умолчанию оба уровня, User и Enterprise, конфигурируются с предоставлением FullTrust для единственной группы кода All Code. В результате этого настройка по умолчанию для системы безопасности .NET не налагает никаких ограничений на уровне пользователя или предприятия, и реализованная политика диктуется исключительно политикой уровня машины. Например, если требуется применить более строгое полномочие или множество полномочий к уровню пользователя или предприятия, эти ограничения будут налагаться на все полномочия и, возможно, переопределять права на уровне машины. Действующие полномочия являются пересечением, поэтому, например, если необходимо применить FullTrust к группе кода, это полномочие должно быть присвоено группе кода на каждом из трех уровней политики.


На Facebook В Твиттере В Instagram В Одноклассниках Мы Вконтакте
Подписывайтесь на наши страницы в социальных сетях.
Будьте в курсе последних книжных новинок, комментируйте, обсуждайте. Мы ждём Вас!

Похожие книги на "C# для профессионалов. Том II"

Книги похожие на "C# для профессионалов. Том II" читать онлайн или скачать бесплатно полные версии.


Понравилась книга? Оставьте Ваш комментарий, поделитесь впечатлениями или расскажите друзьям

Все книги автора Симон Робинсон

Симон Робинсон - все книги автора в одном месте на сайте онлайн библиотеки LibFox.

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Отзывы о "Симон Робинсон - C# для профессионалов. Том II"

Отзывы читателей о книге "C# для профессионалов. Том II", комментарии и мнения людей о произведении.

А что Вы думаете о книге? Оставьте Ваш отзыв.