<trustInfo> — Element (Aplikacja ClickOnce)
Opisuje uprawnienia zabezpieczeń minimalne wymagane dla aplikacji na komputerze klienta.
<trustInfo>
<security>
<applicationRequestMinimum>
<PermissionSet
ID
Unrestricted>
<IPermission
class
version
Unrestricted
/>
</PermissionSet>
<defaultAssemblyRequest
permissionSetReference
/>
<assemblyRequest
name
permissionSetReference
/>
</applicationRequestMinimum>
<requestedPrivileges>
<requestedExecutionLevel
level
uiAccess
/>
</requestedPrivileges>
</security>
</trustInfo>
Elementy i atrybuty
trustInfo Element jest wymagany i jest w asm.v2 obszaru nazw.Ma bez atrybutów i zawiera następujące elementy.
zabezpieczenia
Wymagane.Ten element jest elementem podrzędnym trustInfo element.Zawiera on applicationRequestMinimum element i posiada żadnych atrybutów.
applicationRequestMinimum
Wymagane.Ten element jest elementem podrzędnym security element i zawiera PermissionSet, assemblyRequest, i defaultAssemblyRequestelementy.Ten element nie posiada żadnych atrybutów.
PermissionSet
Wymagane.Ten element jest elementem podrzędnym applicationRequestMinimum element i zawiera IPermission element.Atrybuty tego elementu.
Atrybut |
Opis |
---|---|
ID |
Wymagane.Identyfikuje zestaw uprawnień.Ten atrybut może być dowolną wartością.Identyfikator odwołuje się w defaultAssemblyRequest i assemblyRequest atrybuty. |
version |
Wymagane.Identyfikuje wersję uprawnienie.Zazwyczaj ta wartość jest 1. |
Interfejsu IPermission
Opcjonalne.Ten element jest elementem podrzędnym PermissionSet element.IPermission Element pełni identyfikuje klasy uprawnień w .NET Framework.IPermission Element ma następujące atrybuty, ale mogą mieć dodatkowe atrybuty, które odpowiadają właściwości klasy uprawnień.Aby sprawdzić składnię dla szczególnych uprawnień, zobacz przykłady, wymienione w pliku Security.config.
Atrybut |
Opis |
---|---|
class |
Wymagane.Identyfikuje klasy uprawnień przy użyciu silnej nazwy.Na przykład, poniższy kod identyfikuje FileDialogPermission typu. System.Security.Permissions.FileDialogPermission, mscorlib, Version=1.2.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 |
version |
Wymagane.Identyfikuje wersję uprawnienie.Zazwyczaj ta wartość jest 1. |
Unrestricted |
Wymagane.Określa, czy aplikacja potrzebuje nieograniczony przyznanie tego uprawnienia.Jeśli true, przyznanie uprawnień jest bezwarunkowe.Jeśli false, lub jeśli ten atrybut jest niezdefiniowana, jest uzależniony od atrybutów specyficznych uprawnień zdefiniowanych w IPermission tag.Mieć następujące uprawnienia:
W tym przykładzie deklaracji dla EnvironmentPermission ogranicza aplikację do odczytu tylko zmienną środowiskową USERNAME, należy w deklaracji FileDialogPermission daje wykorzystania aplikacji bez ograniczeń wszystkich FileDialog klasy. |
defaultAssemblyRequest
Opcjonalne.Identyfikuje zestaw uprawnień do wszystkich zestawów.Ten element jest elementem podrzędnym applicationRequestMinimum element i ma następujące atrybuty.
Atrybut |
Opis |
---|---|
permissionSetReference |
Wymagane.Identyfikuje identyfikator zestawu uprawnień, który jest domyślnym uprawnieniem.Zestaw uprawnień jest zadeklarowany w PermissionSet element. |
assemblyRequest
Opcjonalne.Identyfikuje uprawnień dla określonego zestawu.Ten element jest elementem podrzędnym applicationRequestMinimum element i ma następujące atrybuty.
Atrybut |
Opis |
---|---|
Name |
Wymagane.Identyfikuje nazwę zestawu. |
permissionSetReference |
Wymagane.Identyfikuje identyfikator zestawu uprawnień, która wymaga tego zestawu.Zestaw uprawnień jest zadeklarowany w PermissionSet element. |
requestedPrivileges
Opcjonalne.Ten element jest elementem podrzędnym security element i zawiera requestedExecutionLevel element.Ten element nie posiada żadnych atrybutów.
requestedExecutionLevel
Opcjonalne.Określa poziom zabezpieczeń, w którym aplikacja żąda mają być wykonane.Ten element nie ma elementów podrzędnych i ma następujące atrybuty.
Atrybut |
Opis |
---|---|
Level |
Wymagane.Wskazuje, że żądanie jest poziom zabezpieczeń aplikacji.Możliwe wartości to: asInvoker, żądając nie dodatkowych uprawnień.Ten poziom nie wymaga żadnych dodatkowych zaufania monituje. highestAvailable, żądając najwyższy uprawnienia dostępne dla procesu nadrzędnego. requireAdministrator, żądając uprawnienia pełnego dostępu administratora. ClickOnceaplikacje będą instalowane tylko z wartością asInvoker.Instalowanie z inną wartość zakończy się niepowodzeniem. |
uiAccess |
Opcjonalne.Wskazuje, czy aplikacja wymaga dostępu do elementów interfejsu użytkownika chronionych.Wartości są albo true lub false, a wartość domyślna to false.Tylko podpisanych aplikacje powinny mieć wartość true. |
Uwagi
Jeśli ClickOnce aplikacji zwraca się na więcej uprawnień niż komputer kliencki będzie udzielić domyślnie wspólnego języka Menedżera zaufania w czasie wykonywania poprosi użytkownik chce udzielić aplikacji tym podniesionymi poziom zaufania.Jeśli nie mówi, aplikacja nie zostanie uruchomiona; w przeciwnym razie będzie uruchamiane z żądanego uprawnienia.
Wszystkie uprawnienia wymagane przy użyciu defaultAssemblyRequest i assemblyRequest będą przyznawane bez monitowania użytkownika, jeżeli manifest wdrażania ma ważną licencję zaufania.
Aby uzyskać więcej informacji o podniesienie uprawnień, zobacz Zabezpieczanie aplikacji ClickOnce.Aby uzyskać więcej informacji dotyczących wdrażania zasad, zobacz Przegląd wdrażania zaufanych aplikacji.
Przykłady
Następujący kod trzy przykłady ilustrują trustInfo elementy domyślne, o nazwie strefy zabezpieczeń — Internet, LocalIntranet i FullTrust — do użytku w ClickOnce wdrożenia manifest aplikacji.
W pierwszym przykładzie zilustrowano trustInfo element uprawnienia domyślne dostępne w strefie zabezpieczeń Internet.
<trustInfo>
<security>
<applicationRequestMinimum>
<PermissionSet ID="Internet">
<IPermission
class="System.Security.Permissions.FileDialogPermission, mscorlib, Version=1.2.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
version="1"
Access="Open" />
<IPermission
class="System.Security.Permissions.IsolatedStorageFilePermission, mscorlib, Version=1.2.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
version="1"
Allowed="DomainIsolationByUser"
UserQuota="10240" />
<IPermission
class="System.Security.Permissions.SecurityPermission, mscorlib, Version=1.2.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
version="1"
Flags="Execution" />
<IPermission
class="System.Security.Permissions.UIPermission, mscorlib, Version=1.2.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
version="1"
Window="SafeTopLevelWindows"
Clipboard="OwnClipboard" />
<IPermission
class="System.Drawing.Printing.PrintingPermission, System.Drawing, Version=1.2.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
version="1"
Level="SafePrinting" />
</PermissionSet>
<defaultAssemblyRequest permissionSetReference="Internet" />
</applicationRequestMinimum>
</security>
</trustInfo>
W drugim przykładzie zilustrowano trustInfo element uprawnienia domyślne dostępne w strefie zabezpieczeń LocalIntranet.
<trustInfo>
<security>
<applicationRequestMinimum>
<PermissionSet ID="LocalIntranet">
<IPermission
class="System.Security.Permissions.EnvironmentPermission, mscorlib, Version=1.2.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
version="1"
Read="USERNAME" />
<IPermission
class="System.Security.Permissions.FileDialogPermission, mscorlib, Version=1.2.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
version="1"
Unrestricted="true" />
<IPermission
class="System.Security.Permissions.IsolatedStorageFilePermission, mscorlib, Version=1.2.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
version="1"
Allowed="AssemblyIsolationByUser"
UserQuota="9223372036854775807"
Expiry="9223372036854775807"
Permanent="True" />
<IPermission
class="System.Security.Permissions.ReflectionPermission, mscorlib, Version=1.2.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
version="1"
Flags="ReflectionEmit" />
<IPermission
class="System.Security.Permissions.SecurityPermission, mscorlib, Version=1.2.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
version="1"
Flags="Assertion, Execution" />
<IPermission
class="System.Security.Permissions.UIPermission, mscorlib, Version=1.2.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
version="1"
Unrestricted="true" />
<IPermission
class="System.Net.DnsPermission, System, Version=1.2.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
version="1"
Unrestricted="true" />
<IPermission
class="System.Drawing.Printing.PrintingPermission, System.Drawing, Version=1.2.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
version="1"
Level="DefaultPrinting" />
<IPermission
class="System.Diagnostics.EventLogPermission, System, Version=1.2.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
version="1" />
</PermissionSet>
<defaultAssemblyRequest permissionSetReference="LocalIntranet" />
</applicationRequestMinimum>
</security>
</trustInfo>
W trzecim przykładzie zilustrowano trustInfo element uprawnienia domyślne dostępne w strefie zabezpieczeń FullTrust.
<trustInfo>
<security>
<applicationRequestMinimum>
<PermissionSet ID="FullTrust" Unrestricted="true" />
<defaultAssemblyRequest permissionSetReference="FullTrust" />
</applicationRequestMinimum>
</security>
</trustInfo>