Чтение онлайн

на главную

Жанры

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

Ватсон Карли

Шрифт:

Затем задается ряд вопросов о способе выполнения подписи, включая это окно, которое просит определить алгоритм шифрования:

После этого мы определяем имя приложения и URL страницы Web, которая дает о нем дополнительную информацию.

Это по сути окончание

процесса, последнее окно подтверждает данные сертификата и тот факт, что сборка была успешно подписана.

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

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

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

setreg.exe 1 true

Проверим нашу сборку и ее уровень надежности с помощью утилиты

chktrust.exe
:

chktrust.exe securityapp11.exe
 

Эта команда выведет окно:

Отметим, что

chktrust.exe
успешно подтвердила достоверность издателя программного обеспечения, используя сертификат, но напоминает, что, хотя сертификат был проверен, он является тестовым сертификатом.

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

secutil.exe
:

secutil.exe -hex -х securityapp11.exe

Эта команда выведет что-то подобное:

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

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

X.509 Certificate =

0x3082017B30820125A0030201020210D69BE8D88D8FF9B54A9C689A71BB7E33300D06092A864886F7

0001010405003016311430120603550403130B526F6F74204167656E6379301E170D30313035323831

38333133305A170D3339313233313233353935395A301A311830160603550403130F41424320436F72

706F726174696F6E305C300D06092A864886F70D0101010500034B003048024100ECBEFB348C1364B0

A3AE14FA9805F893AD180C7B2E57ADABBBE7EF94694A1E92BC5B4B59EF76FBDAC8D04D3DF2140B7616

550FE2D5AE5F15E03CBB54932F5CBB0203010001A34B304930470603551D010440303E801012E4092D

061D1D4F008D6121DC166463A1183016311430120603550403130B526F6F74204167656E6379821006

376C00AA00648A11CFB8D4AA5C35F4300D06092A864886F70D010104050003410011D1B5F6FBB0C4C0E

85A9BB5FDA5FEC1B8D9C229BB0FBBA7CBE3340A527A5B25EAA2A70205DD71571607291272DA581981C

73028AB849FF273465FAEF2F4C7174

Success

Создадим

новую группу кода и применим полномочие
FullTrust
к сборкам, опубликованным ABC Corporation, с помощью следующей команды (достаточно длинной):

caspol -addgroup 1.
– pub -hex

3082017B30820125A0030201020210D69BE8D88D8FF9B54A9C689A71BB7E33300D06092A864886F70D

01010405003016311430120603550403130B526F6F742041678656E6379301E170D3031303532383138

333133305A170D3339313233313233353935395A301A311830160603550403130F41424320436F7270

6F726174696F6E305C300D06092A864886F70D0101010500034B003048024100ECBEFB348C1364BOA3

AE14FA9805F893AD180C7B2E57ADABBBE7EF94694A1E92BC5B4B59EF76FBDAC8D04D3DF2140B761655

0FE2D5AE5F15E03CBB54932F5CBB0203010001A34B304930470603551D010440303E801012E4092D06

1D1D4F008D6121DC166463A1183016311430120603550403130B526F6F74204167656E637982100637

6C00AA00648A11CFB8D4AA5C35F4300D06092A86

4886F70D01010405000341001D1B5F6FBB0C4C0E85A9BB5FDA5FEC1B8D9C229BB0FB8A7CBE3340A527

A5B25EAA2A70205DD71571607291272D5A81981C73028AB849FF273465FAEF2F4C7174 FullTrust

Параметры определяют, что группа кода должна добавляться к верхнему уровню (1.), условие членства в группе кода имеет тип

Publisher
, а последний параметр определяет множество полномочий для предоставления (
FullTrust
). Команда будет требовать подтверждения:

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

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

The operation you are performing will alter security policy.

Are you sure you want to perform this operations? (yes/no) у

Added union code group with "-pub" membership condition to the Machine level.

Success

Машина теперь сконфигурирована при наличии полного доверия всем сборкам, которые были подписаны с помощью сертификата ABC Corporation. Чтобы подтвердить это, выполним команду

caspol.exe -lg
, которая выводит новую группу доступа к коду (1.8):

Security is ON

Execution checking is ON

Policy change prompt is ON

Level = Machine

Code Groups:

1. All code: Nothing

 1.1. Zone - MyComputer: Full Trust

1.1.1. Zone — Intranet: LocalIntranet

1.2.1. All code: Same site Socket and Web.

1.2.2. All code: Same directory FileIO - Read, PathDiscovery

Поделиться:
Популярные книги

Измена. За что ты так со мной

Дали Мила
1. Измены
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. За что ты так со мной

Неудержимый. Книга II

Боярский Андрей
2. Неудержимый
Фантастика:
городское фэнтези
попаданцы
5.00
рейтинг книги
Неудержимый. Книга II

Большие дела

Ромов Дмитрий
7. Цеховик
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Большие дела

Эксклюзив

Юнина Наталья
Любовные романы:
современные любовные романы
7.00
рейтинг книги
Эксклюзив

И только смерть разлучит нас

Зика Натаэль
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
И только смерть разлучит нас

Черкес. Дебют двойного агента в Стамбуле

Greko
1. Черкес
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Черкес. Дебют двойного агента в Стамбуле

Один на миллион. Трилогия

Земляной Андрей Борисович
Один на миллион
Фантастика:
боевая фантастика
8.95
рейтинг книги
Один на миллион. Трилогия

Ваше Сиятельство 8

Моури Эрли
8. Ваше Сиятельство
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Ваше Сиятельство 8

Третье правило дворянина

Герда Александр
3. Истинный дворянин
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Третье правило дворянина

Ваантан

Кораблев Родион
10. Другая сторона
Фантастика:
боевая фантастика
рпг
5.00
рейтинг книги
Ваантан

Невеста

Вудворт Франциска
Любовные романы:
любовно-фантастические романы
эро литература
8.54
рейтинг книги
Невеста

Романов. Том 1 и Том 2

Кощеев Владимир
1. Романов
Фантастика:
фэнтези
попаданцы
альтернативная история
5.25
рейтинг книги
Романов. Том 1 и Том 2

Кодекс Крови. Книга ХII

Борзых М.
12. РОС: Кодекс Крови
Фантастика:
боевая фантастика
попаданцы
5.00
рейтинг книги
Кодекс Крови. Книга ХII

Бальмануг. (Не) Любовница 2

Лашина Полина
4. Мир Десяти
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Бальмануг. (Не) Любовница 2