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

Тут можно читать онлайн Симон Робинсон - C# для профессионалов. Том II - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство Лори, год 2003. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    C# для профессионалов. Том II
  • Автор:
  • Жанр:
  • Издательство:
    Лори
  • Год:
    2003
  • Город:
    Москва
  • ISBN:
    5-85582-187-0
  • Рейтинг:
    4.88/5. Голосов: 81
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

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

C# для профессионалов. Том II - описание и краткое содержание, автор Симон Робинсон, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
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

C# для профессионалов. Том II - читать онлайн бесплатно полную версию (весь текст целиком)

C# для профессионалов. Том II - читать книгу онлайн бесплатно, автор Симон Робинсон
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Для работы с группами кода и полномочиями на уровнях пользователя или предприятия с помощью 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к группе кода, это полномочие должно быть присвоено группе кода на каждом из трех уровней политики.

При выполнении caspol.exeадминистратором по умолчанию используется уровень машины, но если выйти из системы и зарегистрироваться как пользователь, который не принадлежит группе пользователей Administrator, caspol.exeвыберет по умолчанию уровень пользователя. Кроме того, caspol.exeне позволит изменить политику безопасности таким образом, чтобы сделать саму утилиту caspol.exeнеработоспособной.

Теперь мы получили общее представление об архитектуре безопасности в .NET и можем перейти к обсуждению, как получить доступ к ее свойствам программным путем.

Поддержка безопасности в .NET

Чтобы система безопасности .NET работала, программистам необходимо доверить CLR обеспечение политики безопасности. Как это сделать? Когда вызывается метод, требующий специальных полномочий (например, доступ к файлу на локальном диске), CLR будет просматривать стек с целью гарантии того, что участник цепочки вызовов имеет требуемые права.

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

Для справки, наиболее применимыми в этой главе частями библиотеки .NET Framework являются:

System.Security.Permissions

System.Security.Policy

System.Security.Principal

Отметим, что система безопасности доступа к коду на основе свидетельства работает в паре с системой безопасности регистрации в Windows. Если вы захотите выполнить приложение для настольного компьютера .NET, то ему должны быть предоставлены соответствующие полномочия системы безопасности доступа к коду .NET, но регистрирующийся пользователь должен также работать под учетной записью Windows, которая имеет соответствующие права для выполнения кода. В применении к настольным приложениям это означает, что текущему пользователю должны быть предоставлены соответствующие права для доступа к соответствующим файлам сборки на диске. Для приложений Интернета учетная запись, с которой работает Информационный сервер Интернет, должна иметь доступ к файлам сборки.

Требуемые полномочия

Создадим приложение Windows Forms с кнопкой, которая при нажатии будет выполнять действие, обращающееся к диску. Предположим, что если приложение не имеет подходящего полномочия для доступа к локальному диску ( FileIOPermission), кнопка будет помечаться как недоступная (серым цветом).

В следующем коде представлен конструктор формы, который создает объект FileIOPermission, вызывает его метод Demand()и затем обрабатывают результат:

using System;

using System.Drawing;

using System.Collections;

using System.ComponentModel;

using System.Windows.Forms;

using System.Data;

using System.Security;

using System.Security.Permissions;

namespace SecurityApp4 {

public class Form1 : System.Windows.Forms.Form {

private System.Windows.Forms.Button button1;

private System.ComponentModel.Container components;

public Form1() {

InitializeComponent();

try {

FileIOPermission fileioperm = new

FileIOPermission(FileIOPermissionAccess.AllAccess, @"C:\");

fileioperm.Demand();

} catch {

button1.Enabled = false;

}

}

public override void Dispose() {

base.Dispose();

if(component != null) components.Dispose();

}

#region Windows Form Designer generated code

///



/// Требуемый метод для поддержки конструктора — не изменяйте

/// содержимое этого метода с помощью редактора кода.

///

private void InitializeComponent() {

this.button1 = new System.Windows.Forms.Button();

this.SuspendLayout();

//

// button1

//

this.button1.Location = new System.Drawing.Point(48, 104);

this.button1.Name = "button1";

this.button1.Size = new System.Drawing.Size(192, 23);

this.button1.TabIndex = 0;

this.button1.Text = "Button Requires FileIOPermission";

//

// Form1

//

this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);

this.ClientSize = new System.Drawing.Size(292, 273);

this.Controls.AddRange(new System.Windows.Forms.Control[] {this.button1});

this.Name = "Form1";

this.Text = "Form1";

this.ResumeLayout(false);

}

#endregion

///



/// Основная точка входа для приложения.

///

[STAThread]

static void Main() {

Application.Run(new Form1());

}

}

}

Можно заметить, что FileIOPermissionсодержится в пространстве имен System.Security.Permissions, которое имеет все множество полномочий, а также предоставляет классы для декларативных атрибутов полномочий и перечисления параметров, используемых при создании объектов прав (например, при создании FileIOPermission, определяющего, нужен нам полный доступ или только для чтения).

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

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Симон Робинсон читать все книги автора по порядку

Симон Робинсон - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




C# для профессионалов. Том II отзывы


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


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

Напишите свой комментарий
x