SiteIdentityPermission Classe

Definição

Cuidado

Code Access Security is not supported or honored by the runtime.

Define a permissão de identidade para o site do qual se origina o código.Defines the identity permission for the Web site from which the code originates. Essa classe não pode ser herdada.This class cannot be inherited.

public ref class SiteIdentityPermission sealed : System::Security::CodeAccessPermission
public sealed class SiteIdentityPermission : System.Security.CodeAccessPermission
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public sealed class SiteIdentityPermission : System.Security.CodeAccessPermission
[System.Serializable]
public sealed class SiteIdentityPermission : System.Security.CodeAccessPermission
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class SiteIdentityPermission : System.Security.CodeAccessPermission
type SiteIdentityPermission = class
    inherit CodeAccessPermission
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type SiteIdentityPermission = class
    inherit CodeAccessPermission
[<System.Serializable>]
type SiteIdentityPermission = class
    inherit CodeAccessPermission
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type SiteIdentityPermission = class
    inherit CodeAccessPermission
Public NotInheritable Class SiteIdentityPermission
Inherits CodeAccessPermission
Herança
SiteIdentityPermission
Atributos

Comentários

Usando essa classe, é possível garantir que os chamadores sejam de um site específico.Using this class, it is possible to ensure that callers are from a specific Web site. A identidade do site só é definida para o código de URLs com protocolos de HTTP, HTTPS e FTP.Site identity is only defined for code from URLs with the protocols of HTTP, HTTPS, and FTP. Um site é a cadeia de caracteres entre "//" após o protocolo de uma URL e o seguinte "/", se presente, por exemplo, www.fourthcoffee.com na URL http://www.fourthcoffee.com/process/grind.htm .A site is the string between the "//" after the protocol of a URL and the following "/", if present, for example, www.fourthcoffee.com in the URL http://www.fourthcoffee.com/process/grind.htm. Isso exclui os números de porta.This excludes port numbers. Se uma determinada URL for http://www.fourthcoffee.com:8000/ , o site será www.fourthcoffee.com , não www.fourthcoffee.com:8000 .If a given URL is http://www.fourthcoffee.com:8000/, the site is www.fourthcoffee.com, not www.fourthcoffee.com:8000.

Os sites podem corresponder exatamente ou por um prefixo (" * ") curinga no delimitador de ponto.Sites can be matched exactly, or by a wildcard ("*") prefix at the dot delimiter. Por exemplo, a cadeia de caracteres nome do site *.fourthcoffee.com corresponde, fourthcoffee.com bem como www.fourthcoffee.com .For example, the site name string *.fourthcoffee.com matches fourthcoffee.com as well as www.fourthcoffee.com. Sem um curinga, o nome do site deve ser uma correspondência precisa.Without a wildcard, the site name must be a precise match. A cadeia de caracteres de nome de site * corresponderá a qualquer site, mas não corresponderá a código que não tenha evidências de site.The site name string * will match any site, but will not match code that has no site evidence.

Importante

A partir do .NET Framework 4.NET Framework 4 , as permissões de identidade não são usadas.Starting with the .NET Framework 4.NET Framework 4, identity permissions are not used.

Nas versões 1,0 e 1,1 do .NET Framework, as demandas das permissões de identidade são efetivas, mesmo quando o assembly de chamada é totalmente confiável.In the .NET Framework versions 1.0 and 1.1, demands on the identity permissions are effective, even when the calling assembly is fully trusted. Ou seja, embora o assembly de chamada tenha confiança total, uma demanda por uma permissão de identidade falhará se o assembly não atender aos critérios exigidos.That is, although the calling assembly has full trust, a demand for an identity permission fails if the assembly does not meet the demanded criteria. A partir do .NET Framework versão 2,0, as solicitações de permissões de identidade serão ineficazes se o assembly de chamada tiver confiança total.Starting with the .NET Framework version 2.0, demands for identity permissions are ineffective if the calling assembly has full trust. Isso garante a consistência de todas as permissões, eliminando o tratamento de permissões de identidade como um caso especial.This assures consistency for all permissions, eliminating the treatment of identity permissions as a special case.

Observação

Em versões do .NET Framework antes do .NET Framework 4.NET Framework 4 , você poderia usar o CodeAccessPermission.Deny método para impedir o acesso inadvertido aos recursos do sistema por código confiável.In versions of the .NET Framework before the .NET Framework 4.NET Framework 4, you could use the CodeAccessPermission.Deny method to prevent inadvertent access to system resources by trusted code. Deny Agora é obsoleto, e o acesso aos recursos agora é determinado exclusivamente pelo conjunto de permissões concedidas para um assembly.Deny is now obsolete, and access to resources is now determined solely by the granted permission set for an assembly. Para limitar o acesso a arquivos, você deve executar código parcialmente confiável em uma área restrita e atribuir permissões a ele somente a recursos que o código tem permissão para acessar.To limit access to files, you must run partially trusted code in a sandbox and assign it permissions only to resources that the code is allowed to access. Para obter informações sobre como executar um aplicativo em uma área restrita, consulte como: executar código parcialmente confiável em uma área restrita.For information about running an application in a sandbox, see How to: Run Partially Trusted Code in a Sandbox.

Observação

No .NET Framework versões 1,0 e 1,1, as permissões de identidade não podem ter um Unrestricted valor de estado de permissão.In the .NET Framework versions 1.0 and 1.1, identity permissions cannot have an Unrestricted permission state value. A partir do .NET Framework versão 2,0, as permissões de identidade podem ter qualquer valor de estado de permissão.Starting with the .NET Framework version 2.0, identity permissions can have any permission state value. Isso significa que, em 2,0 e versões posteriores, as permissões de identidade têm o mesmo comportamento de permissões que implementam a IUnrestrictedPermission interface.This means that in 2.0 and later versions, identity permissions have the same behavior as permissions that implement the IUnrestrictedPermission interface.

Construtores

SiteIdentityPermission(PermissionState)

Inicializa uma nova instância da classe SiteIdentityPermission com o PermissionState especificado.Initializes a new instance of the SiteIdentityPermission class with the specified PermissionState.

SiteIdentityPermission(String)

Inicializa uma nova instância da classe SiteIdentityPermission para representar a identidade do site especificada.Initializes a new instance of the SiteIdentityPermission class to represent the specified site identity.

Propriedades

Site

Obtém ou define o site atual.Gets or sets the current site.

Métodos

Assert()

Declara que o código de chamada pode acessar o recurso protegido por uma demanda de permissão através do código que chama este método, mesmo que os chamadores na pilha não tenham recebido permissão para acessar o recurso.Declares that the calling code can access the resource protected by a permission demand through the code that calls this method, even if callers higher in the stack have not been granted permission to access the resource. Usar Assert() pode criar problemas de segurança.Using Assert() can create security issues.

(Herdado de CodeAccessPermission)
Copy()

Cria e retorna uma cópia idêntica da permissão atual.Creates and returns an identical copy of the current permission.

Demand()

Força um SecurityException no tempo de execução se todos os chamadores no topo da pilha de chamadas não receberam as permissões especificadas pela instância atual.Forces a SecurityException at run time if all callers higher in the call stack have not been granted the permission specified by the current instance.

(Herdado de CodeAccessPermission)
Deny()
Obsoleto.
Obsoleto.

Impede que os chamadores no nível superior da pilha de chamadas usem o código que chama esse método para acessar o recurso especificado pela instância atual.Prevents callers higher in the call stack from using the code that calls this method to access the resource specified by the current instance.

(Herdado de CodeAccessPermission)
Equals(Object)

Determina se o objeto CodeAccessPermission especificado é igual ao CodeAccessPermission atual.Determines whether the specified CodeAccessPermission object is equal to the current CodeAccessPermission.

(Herdado de CodeAccessPermission)
FromXml(SecurityElement)

Reconstrói um a permissão com um estado especificado de uma codificação XML.Reconstructs a permission with a specified state from an XML encoding.

GetHashCode()

Obtém um código hash para o objeto CodeAccessPermission atual, adequado para algoritmos de hash e estruturas de dados, tais como uma tabela de hash.Gets a hash code for the CodeAccessPermission object that is suitable for use in hashing algorithms and data structures such as a hash table.

(Herdado de CodeAccessPermission)
GetType()

Obtém o Type da instância atual.Gets the Type of the current instance.

(Herdado de Object)
Intersect(IPermission)

Cria e retorna uma permissão que é a interseção de permissão atual e da permissão especificada.Creates and returns a permission that is the intersection of the current permission and the specified permission.

IsSubsetOf(IPermission)

Determina se a permissão atual é um subconjunto da permissão especificada.Determines whether the current permission is a subset of the specified permission.

MemberwiseClone()

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

(Herdado de Object)
PermitOnly()

Impede que os chamadores no topo da pilha de chamadas usem o código que chama esse método para acessar todos os recursos, com exceção do recurso especificado pela instância atual.Prevents callers higher in the call stack from using the code that calls this method to access all resources except for the resource specified by the current instance.

(Herdado de CodeAccessPermission)
ToString()

Cria e retorna uma representação de cadeia de caracteres do objeto de permissão atual.Creates and returns a string representation of the current permission object.

(Herdado de CodeAccessPermission)
ToXml()

Cria uma codificação XML da permissão e de seu estado atual.Creates an XML encoding of the permission and its current state.

Union(IPermission)

Cria uma permissão que é a união entre a permissão atual e a permissão especificada.Creates a permission that is the union of the current permission and the specified permission.

Implantações explícitas de interface

IPermission.Demand()

Gera um SecurityException em tempo de execução se o requisito de segurança não é atendido.Throws a SecurityException at run time if the security requirement is not met.

(Herdado de CodeAccessPermission)
IStackWalk.Assert()

Declara que código de chamada pode acessar o recurso identificado pelo objeto de permissão atual, mesmo que os chamadores na pilha não tenham recebido permissão para acessar o recurso.Asserts that the calling code can access the resource identified by the current permission object, even if callers higher in the stack have not been granted permission to access the resource.

(Herdado de CodeAccessPermission)
IStackWalk.Demand()

Determina em tempo de execução se a permissão especificada pelo objeto de permissão atual foi ou não concedida a todos os chamadores na pilha de chamadas.Determines at run time whether all callers in the call stack have been granted the permission specified by the current permission object.

(Herdado de CodeAccessPermission)
IStackWalk.Deny()

Faz com que cada Demand() para o objeto atual que passa pelo código de chamada falhe.Causes every Demand() for the current object that passes through the calling code to fail.

(Herdado de CodeAccessPermission)
IStackWalk.PermitOnly()

Causa a falha de cada Demand() de todos os objetos que passam pelo código de chamada, exceto o atual, mesmo que o código superior na pilha de chamadas tenha recebido permissão para acessar outros recursos.Causes every Demand() for all objects except the current one that pass through the calling code to fail, even if code higher in the call stack has been granted permission to access other resources.

(Herdado de CodeAccessPermission)

Aplica-se a

Confira também