Administración de notificaciones y autorización con el modelo de identidadManaging Claims and Authorization with the Identity Model

La autorización es el proceso de determinar qué entidades tienen permiso para cambiar, ver o tener acceso a un recurso informático.Authorization is the process of determining which entities have permission to change, view, or otherwise access a computer resource. Por ejemplo, en una empresa, solo se puede permitir a los administradores el acceso a los archivos de sus empleados.For example, in a business, only managers may be allowed to access the files of their employees. Windows Communication Foundation (WCF) admite dos mecanismos para realizar el procesamiento de la autorización.Windows Communication Foundation (WCF) supports two mechanisms for performing authorization processing. El primer mecanismo le permite controlar la autorización utilizando construcciones de Common Language Runtime (CLR).The first mechanism enables you to control authorization using existing common language runtime (CLR) constructs. El segundo es un modelo basado en notificaciones conocido como modelo de identidad.The second is a claims-based model known as the Identity Model. WCF usa el modelo de identidad para crear notificaciones de mensajes entrantes; Las clases del modelo de identidad se pueden extender para admitir nuevos tipos de notificaciones para esquemas de autorización personalizados.WCF uses the Identity Model to create claims from incoming messages; Identity Model classes can be extended to support new claim types for custom authorization schemes. En este tema se presenta información general de los conceptos de programación principales de la característica Modelo de identidad, así como una lista de las clases más importantes que la característica utiliza.This topic presents an overview of the major programming concepts of the Identity Model feature, as well as a listing of the most important classes the feature uses.

Escenarios del modelo de identidadIdentity Model Scenarios

Los escenarios siguientes representan el uso del modelo de identidad.The following scenarios represent Identity Model use.

Escenario 1: admisión de notificaciones de identidad, función y grupoScenario 1: Supporting Identity, Role, and Group Claims

Los usuarios envían mensajes a un servicio web.Users send messages to a Web service. Los requisitos de control de acceso del servicio web utilizan la identidad, las funciones o los grupos.The access control requirements of the Web service use identity, roles, or groups. El remitente del mensaje está asignado a un conjunto de funciones o grupos.The message sender is mapped to a set of roles or groups. Se utiliza la información de grupo o función para realizar las comprobaciones de acceso.Role or group information is used to perform access checks.

Escenario 2: admisión de notificaciones enriquecidasScenario 2: Supporting Rich Claims

Los usuarios envían mensajes a un servicio web.Users send messages to a Web service. Los requisitos de control de acceso del servicio web requieren un modelo más enriquecido que la identidad, las funciones o los grupos.The access control requirements of the Web service require a richer model than identity, roles, or groups. El servicio web determina si un usuario determinado tiene acceso a un recurso protegido determinado que utilice un modelo basado en notificaciones enriquecidas.The Web service determines whether a given user has access to a particular protected resource using the rich claims-based model. Por ejemplo, un usuario puede ser capaz de leer información determinada, como información sobre el sueldo, a la que otros usuarios no tienen acceso.For example, one user may be able to read particular information, such as salary information, that other users do not have access to.

Escenario 3: asignación de notificaciones disparesScenario 3: Mapping Disparate Claims

Un usuario envía un mensaje a un servicio web.A user sends a message to a Web service. El usuario puede especificar sus credenciales de varias maneras diferentes: certificado X.509, token del nombre de usuario o token de Kerberos.The user may specify their credentials in a number of different ways: X.509 certificate, user name token, or Kerberos token. Es necesario que el servicio web realice las comprobaciones de control de acceso de la misma manera, sin tener en cuenta el tipo de credencial del usuario.The Web service is required to perform access control checks in the same way, regardless of the user credential type. Si se admiten tipos de credenciales adicionales con el tiempo, el sistema debería evolucionar de la misma manera.If additional credential types are supported over time, the system should evolve accordingly.

Escenario 4: determinar el acceso a varios recursosScenario 4: Determining Access to Multiple Resources

Un servicio web intenta tener acceso a varios recursos.A Web service attempts to access multiple resources. El servicio determina a qué recursos protegidos el usuario tiene acceso comparando las notificaciones asociadas con el usuario con las necesarias para tener acceso al recurso.The service determines which protected resources a given user has access to by comparing the claims associated with the user with the claims required to access the resource.

Condiciones del modelo de identidadIdentity Model Terms

La lista siguiente define los términos clave utilizados para describir los conceptos del modelo de identidad.The following list defines key terms used to describe Identity Model concepts.

Directiva de autorizaciónAuthorization policy
Conjunto de reglas para la asignación de un conjunto de notificaciones de entrada a un conjunto de notificaciones de salida.A set of rules for mapping a set of input claims to a set of output claims. La evaluación de los resultados de la directiva de autorización da como resultado la adición de conjuntos de notificaciones a un contexto de evaluación y posteriormente un contexto de autorización.Evaluating authorization policy results in claim sets being added to an evaluation context and subsequently an authorization context.

Contexto de autorizaciónAuthorization context
Un conjunto de conjuntos de notificaciones y cero o más propiedades.A set of claim sets and zero or more properties. El resultado de evaluar una o varias directivas de autorización.The result of evaluating one or more authorization policies.

NotificaciónClaim
Una combinación de un tipo de notificación, un derecho y un valor.A combination of a claim type, right, and a value.

Conjunto de notificacionesClaim set
Un conjunto de notificaciones emitido por un emisor determinado.A set of claims issued by a particular issuer.

Tipo de notificaciónClaim type
Un tipo de notificación.A kind of claim. Las notificaciones definidas por la API del modelo de identidad son propiedades de la clase ClaimType.Claims defined by the Identity Model API are properties of the ClaimType class. Los ejemplos de tipos de notificación proporcionados por el sistema son Dns, Email, Hash, Name, Rsa, Sid, Spn, System, Thumbprint, Uri y X500DistinguishedName.Examples of system-provided claim types are Dns, Email, Hash, Name, Rsa, Sid, Spn, System, Thumbprint, Uri, and X500DistinguishedName.

Contexto de evaluaciónEvaluation context
Un contexto en el que se evalúa una directiva de autorización.A context in which an authorization policy is evaluated. Contiene propiedades y conjuntos de notificaciones.Contains properties and claim sets. Se convierte en la base de un contexto de autorización una vez que la evaluación ha finalizado.Becomes the basis of an authorization context once evaluation is complete.

Notificación de identidadIdentity claim
Una notificación cuyo derecho es la identidad.A claim whose right is identity.

EmisorIssuer
Un conjunto de notificaciones que contiene por lo menos una notificación de identidad y se considera que ha emitido otro conjunto de notificaciones.A claim set that contains at least one identity claim and is considered to have issued another claim set.

PropiedadesProperties
Un conjunto de información asociado a un contexto de evaluación o contexto de autorización.A set of information associated with an evaluation context or authorization context.

Recurso protegidoProtected resource
Algo en el sistema que solo se puede utilizar, obtener acceso o manipularse si se cumplen ciertos requisitos primero.Something in the system that can only be used, accessed, or otherwise manipulated if certain requirements are first met.

RightRight
Capacidad sobre un recurso.A capability over a resource. Los derechos definidos por la API del modelo de identidad son propiedades de la clase Rights.Rights defined by the Identity Model API are properties of the Rights class. Los ejemplos de derechos proporcionados por el sistema son Identity y PossessProperty.Examples of system-provided rights are Identity and PossessProperty.

ValorValue
Algo sobre lo que se reclama un derecho.Something over which a right is claimed.

NotificacionesClaims

El modelo de identidad es un sistema basado en notificaciones.The Identity Model is a claims-based system. Las notificaciones describen las funciones asociadas con alguna identidad en el sistema, a menudo un usuario de ese sistema.Claims describe the capabilities associated with some entity in the system, often a user of that system. El conjunto de notificaciones asociado a una entidad determinada puede pensarse como clave.The set of claims associated with a given entity can be thought of as a key. Las notificaciones determinadas definen la forma de esa clave, similar a una llave física utilizada para abrir una cerradura de una puerta.The particular claims define the shape of that key, similar to a physical key used to open a lock in a door. Las notificaciones se utilizan para obtener acceso a los recursos.Claims are used to gain access to resources. El acceso a un recurso protegido determinado se determina comparando las notificaciones necesarias para tener acceso a ese recurso con las notificaciones asociadas con la entidad que intenta tener acceso.Access to a given protected resource is determined by comparing the claims needed to access that resource with the claims associated with the entity attempting access.

Una notificación es la expresión de un derecho con respecto a un valor en concreto.A claim is the expression of a right with respect to a particular value. Un derecho podría ser algo como "Lectura", "Escritura" o "Ejecutar".A right could be something like "Read", "Write", or "Execute." Un valor podría ser una base de datos, un archivo, un buzón o una propiedad.A value could be a database, a file, a mailbox, or a property. Las notificaciones también tienen un tipo de notificación.Claims also have a claim type. La combinación del tipo de notificación y el derecho proporciona el mecanismo para especificar las funciones con respecto al valor.The combination of claim type and right provides the mechanism for specifying capabilities with respect to the value. Por ejemplo, una demanda de tipo "archivo", con derecho de "lectura" sobre el valor "Biography.doc", indica que la entidad a la que está asociada dicha demanda tiene acceso de lectura al archivo Biography.doc. Una demanda de tipo "Name", con el derecho "PossessProperty" sobre el valor "Martin", indica que la entidad con la que está asociada dicha demanda posee una propiedad Name con el valor "Martin".For example, a claim of type "File", with right "Read" over the value "Biography.doc", indicates that the entity with which such a claim is associated has read access to the file Biography.doc. A claim of type "Name", with right "PossessProperty" over the value "Martin", indicates that the entity with which such a claim is associated possesses a Name property with the value "Martin".

Aunque se definen varios tipos de notificación y derechos como parte del modelo de identidad, el sistema es ampliable, lo que permite a los distintos sistemas, que se crean en la parte superior de la infraestructura del modelo de identidad, definir tipos de notificación y derechos adicionales según sea necesario.Although various claim types and rights are defined as part of the Identity Model, the system is extensible, allowing the various systems, building on top of the Identity Model infrastructure, to define additional claim types and rights as required.

Notificaciones de identidadIdentity Claims

Un derecho determinado sería el de la identidad.One particular right is that of identity. Las notificaciones que lo poseen realizan una instrucción sobre la identidad de la entidad.Claims that possess this right make a statement about the identity of the entity. Por ejemplo, una demanda de tipo "nombre principal de usuario" (UPN) con un valor de " someone@example.com " y un derecho de identidad indica una identidad determinada en un dominio determinado.For example, a claim of type "user principal name" (UPN) with a value of "someone@example.com" and a right of Identity indicates a particular identity in a particular domain.

Notificación de la identidad del sistemaSystem Identity Claim

El modelo de identidad define una notificación de identidad: sistema.The Identity Model defines one identity claim: System. La notificación de la identidad del sistema indica que una entidad es la aplicación o sistema actual.The System identity claim indicates that an entity is the current application or system.

Conjuntos de notificacionesSets of Claims

El modelo de notificaciones que representan la identidad es importante porque las notificaciones siempre las emiten alguna entidad en el sistema, aun cuando esa entidad es en última instancia un concepto de "self".The model of claims that represent identity is important because claims are always issued by some entity in the system, even if that entity is ultimately some concept of "self". Las notificaciones se agrupan en un conjunto y cada conjunto tiene un emisor.Claims are grouped together as a set and each set has an issuer. Un emisor es, simplemente, un conjunto de notificaciones.An issuer is just a set of claims. Este tipo de relación recursiva debe finalizar en el futuro y cualquier conjunto de notificaciones puede ser su propio emisor.Such a recursive relationship must eventually end and any claim set can be its own issuer.

La ilustración siguiente muestra un ejemplo de tres conjuntos de notificaciones donde un conjunto de notificaciones tiene, como su emisor, otro conjunto de notificaciones, que, a su vez, tiene el conjunto de notificaciones de sistema como su emisor.The following figure shows an example of three sets of claims where one set of claims has, as its issuer, another set of claims, which in turn has the System claim set as its issuer. Por consiguiente, los conjuntos de notificaciones forman una jerarquía que puede ser profunda de manera arbitraria.Therefore, sets of claims form a hierarchy that may be arbitrarily deep.

Conjuntos de notificaciones dentro de la jerarquía.

Varios conjuntos de notificaciones pueden tener el mismo conjunto de notificaciones de emisión, como se muestra en la ilustración siguiente:Multiple sets of claims may have the same issuing claim set, as illustrated in the following figure:

Varios conjuntos de notificaciones con el mismo conjunto de notificaciones de emisión.

Con la excepción de un conjunto de notificaciones que sea su propio emisor, el modelo de identidad no ofrece ninguna compatibilidad a los conjuntos de notificaciones para formar un bucle.With the exception of a claim set that is its own issuer, the Identity Model does not provide any support for claim sets to form a loop. Por tanto, una situación donde el conjunto de notificaciones A está emitido por el conjunto de notificaciones B, que a su vez está emitido por el conjunto A, nunca podrá darse.Thus a situation where claim set A is issued by claim set B, which is itself issued by claim set A, can never arise. Asimismo, el modelo de identidad no proporciona ninguna compatibilidad para que los conjuntos de notificaciones tengan varios emisores.Also, the Identity Model does not provide any support for claim sets to have multiple issuers. Si dos o más emisores deben emitir un conjunto determinado de notificaciones, a continuación, deberá utilizar varios conjuntos de notificaciones, cada uno con las mismas notificaciones, pero con distintos emisores.If two or more issuers must issue a given set of claims, then you must use multiple claim sets, each containing the same claims, but having different issuers.

El origen de las notificacionesThe Origin of Claims

Las notificaciones pueden provenir de una gran variedad de orígenes.Claims can come from a variety of sources. Un origen común de notificaciones son las credenciales presentadas por un usuario, por ejemplo, como parte de un mensaje enviado a un servicio web.One common source of claims is credentials presented by a user, for example as part of a message sent to a Web service. El sistema valida tales notificaciones y se vuelven parte de un conjunto de notificaciones asociado con el usuario.The system validates such claims, and they become part of a set of claims associated with the user. Otros componentes del sistema también pueden ser orígenes de notificaciones, incluidos, aunque no limitados a ellos, el sistema operativo, la pila de red, el entorno de tiempo de ejecución o la aplicación.Other system components may also be sources of claims, including, but not limited to, the operating system, the network stack, the run-time environment, or the application. Además, los servicios remotos también pueden ser un origen de notificaciones.In addition, remote services may also be a source of claims.

Directivas de autorizaciónAuthorization Policies

En el modelo de identidad, las notificaciones se generan como parte del proceso de evaluación de la directiva de autorización.In the Identity Model, claims are generated as part of the process of evaluating the authorization policy. Una directiva de autorización examina el (posiblemente vacío) conjunto de notificaciones existentes y puede optar por agregar notificaciones adicionales según las notificaciones ya presentes y la información adicional a su disposición.An authorization policy examines the (possibly empty) set of existing claims and may choose to add additional claims based on the claims already present and additional information at its disposal. Esto proporciona la base de la asignación entre notificaciones.This provides the basis of mapping between claims. La presencia o ausencia de notificaciones en el sistema influye en el comportamiento de una directiva de autorización con respecto a si agrega notificaciones adicionales.The presence or absence of claims in the system influences the behavior of an authorization policy with respect to whether it adds additional claims.

Por ejemplo, la directiva de autorización tiene acceso a una base de datos que incluye las fechas de nacimiento de las distintas entidades que utilizan el sistema.For example, the authorization policy has access to a database that includes the birthdates of the various entities using the system. La directiva de autorización utiliza esa información para agregar una notificación de "Over18" al contexto.The authorization policy uses that information to add an "Over18" claim to the context. Tenga en cuenta que la notificación Over18 no divulga ninguna información sobre la entidad que no sea el hecho de que tenga más de 18 años.Note that this Over18 claim does not disclose any information about the entity other than the fact that it is over 18 years of age. Tenga en cuenta que la interpretación de la notificación 'Over18' depende de comprender la semántica de esa notificación.Note that interpretation of the 'Over18' claim depends on understanding the semantics of that claim. La directiva de autorización que agregó la notificación comprende esa semántica en cierta medida.The authorization policy that added the claim understands those semantics at some level. También se informará de esas semánticas al código que examina posteriormente las notificaciones que resultan de la evaluación de directivas.Code that subsequently examines the claims that result from policy evaluation also be informed of those semantics.

Una directiva de autorización determinada puede requerir que se evalúe varias veces porque cuando otras directivas de autorización agregan notificaciones, esa directiva de autorización podría agregar aún más notificaciones.A given authorization policy may require that it be evaluated multiple times because, as other authorization policies add claims, that authorization policy might add yet more claims. El modelo de identidad está diseñado para continuar la evaluación hasta que no se añada ninguna notificación más al contexto por parte de las directivas de autorización en vigor.Identity Model is designed to continue evaluation until no more claims are added to the context by any of the authorization policies in force. Esta evaluación continua de las directivas de autorización impide al requisito aplicar cualquier orden de evaluación concreta con respecto a las directivas de autorización. Podrían evaluarse en cualquier orden.This continued evaluation of authorization policies prevents the requirement to enforce any specific evaluation order with respect to authorization policies; they can be evaluated in any order. Por ejemplo, si la directiva X solo agrega la notificación Z si la directiva A ha añadido la notificación B, entonces si se evalúa X primero, no añade inicialmente la notificación Z. Posteriormente, se evalúa A y se añade la notificación B. X se evaluará una segunda vez y, en esta ocasión, añadirá la notificación Z.For example, if policy X only adds Claim Z if policy A has added Claim B, then if X is evaluated first, it initially does not add the Claim Z. Subsequently, A is evaluated and adds Claim B. X is then evaluated a second time, and this time it adds Claim Z.

Un sistema determinado puede tener muchas directivas de autorización en vigor.A given system may have many authorization policies in force.

Una máquina que crea clavesA Key-Making Machine

Evaluar un grupo de directivas de autorización asociadas es como usar una máquina que crea claves.Evaluating a group of associated authorization policies is like using a machine that makes keys. Las directivas de autorización se evalúan una a una y se generan conjuntos de notificaciones, creando la forma de la clave.The authorization policies are each evaluated and sets of claims are generated, building up the shape of the key. Una vez completada la forma de la clave, se puede utilizar para intentar abrir algunos bloqueos.Once the shape of the key is completed, it can be used to try to open some locks. La forma de la clave está almacenada en un "contexto de autorización", que crea un administrador de autorizaciones.The shape of the key is stored in an "authorization context," which is created by an authorization manager.

Contexto de autorizaciónAuthorization Context

Un administrador de autorizaciones evalúa las distintas directivas de autorización tal y como se ha descrito. El resultado es un contexto de autorización (un conjunto de conjuntos de notificaciones y algunas propiedades asociadas).An authorization manager evaluates the various authorization policies as described, and the result is an authorization context (a set of claim sets and some associated properties). Se puede examinar el contexto de autorización para determinar qué notificaciones están presentes en ese contexto, las relaciones entre las distintas notificaciones (por ejemplo, el conjunto de notificaciones que emite) y compararlas en última instancia con algunos requisitos que deben cumplir para tener acceso a un recurso.The authorization context can be examined to determine what claims are present in that context, the relationships between those various claims (for example, the issuing claim set), and ultimately compare them against some requirements they must meet to access a resource.

BloqueosLocks

Si un contexto de autorización (un conjunto de notificaciones) es una clave, los requisitos que se deben satisfacer para conceder el acceso a un recurso protegido determinado constituyen el bloqueo que la clave debe ajustar.If an authorization context (a set of claims) is a key, then the requirements that must be satisfied to grant access to a particular protected resource constitute the lock that the key must fit. El modelo de identidad no formaliza cómo se expresan tales requisitos pero sí que, dada la naturaleza basada en notificaciones del sistema, supone la comparación de las notificaciones en el contexto de autorización contra algún conjunto de notificaciones necesarias.Identity Model does not formalize how such requirements are expressed but they do, given the claim-based nature of the system, involve comparing the claims in the authorization context against some set of required claims.

ResumenA Recap

El modelo de identidad se basa en el concepto de notificaciones.Identity Model is based around the concept of claims. Las notificaciones se agrupan en conjuntos y se agregan en un contexto de autorización.Claims are grouped into sets and aggregated in an authorization context. Un contexto de autorización contiene un conjunto de notificaciones y es el resultado de evaluar una o varias directivas asociadas con un administrador de autorizaciones.An authorization context contains a set of claims and is the result of evaluating one or more authorization policies associated with an authorization manager. Se pueden examinar estos conjuntos de notificaciones para determinar si se han cumplido los requisitos de acceso.These claim sets can be examined to determine if access requirements have been met. La siguiente ilustración muestra las relaciones entre estos distintos conceptos del modelo de identidad.The following figure shows the relationships between these various Identity Model concepts.

Administración de las notificaciones y la autorizaciónManaging claims and authorization

WCF y el modelo de identidadWCF and Identity Model

WCF usa la infraestructura del modelo de identidad como base para realizar la autorización.WCF uses the Identity Model infrastructure as the basis for performing authorization. En WCF, la ServiceAuthorizationBehavior clase le permite especificar directivas de autorización como parte de un servicio.In WCF, the ServiceAuthorizationBehavior class allows you to specify authorization policies as part of a service. Estas directivas de autorización se conocen como directivas de autorización externas y pueden realizar el procesamiento de notificaciones en función de la directiva local o mediante la interacción con un servicio remoto.Such authorization policies are known as external authorization policies, and they can perform claim processing based on local policy or by interaction with a remote service. El administrador de autorización, representado por la ServiceAuthorizationManager clase, evalúa las directivas de autorización externas junto con las directivas de autorización que reconocen los distintos tipos de credenciales (tokens) y rellena lo que se denomina contexto de autorización con las notificaciones adecuadas para un mensaje entrante.The authorization manager, represented by the ServiceAuthorizationManager class evaluates external authorization policies together with authorization policies that recognize the various credential types (tokens) and populates what is called an authorization context with the claims appropriate to an incoming message. El contexto de autorización está representando por la clase AuthorizationContext.The authorization context is represented by the AuthorizationContext class.

Programación del modelo de identidadIdentity Model Programming

La tabla siguiente describe el modelo de objetos utilizado para programar las extensiones del modelo de identidad.The following table describes the object model used to program Identity Model extensions. Estas clases existen todas en los espacios de nombre System.IdentityModel.Policy o System.IdentityModel.Claims.These classes all exist in either the System.IdentityModel.Policy or the System.IdentityModel.Claims namespaces.

ClaseClass DescripciónDescription
Componente de autorizaciónAuthorization Component Una clase del modelo de identidad que implementa la interfaz IAuthorizationComponent.An Identity Model class that implements the IAuthorizationComponent interface.
IAuthorizationComponent Una interfaz que proporciona una única propiedad de cadena de solo lectura: ID. El valor de esta propiedad es único para cada instancia del sistema que implementa esta interfaz.An interface that provides a single read-only string property: Id. The value of this property is unique for each instance in the system that implements this interface.
AuthorizationContext Componente de autorización que contiene un conjunto de ClaimSet instancias con cero o más propiedades; el resultado de evaluar una o varias directivas de autorización.An authorization component that contains a set of ClaimSet instances with zero or more properties; the result of evaluating one or more Authorization Policies.
Claim Una combinación de un tipo de notificación, derecho y un valor.A combination of a claim type, right, and value. El tipo de notificación restringe el derecho y las partes del valor.The right and value parts are constrained by the claim type.
ClaimSet Una clase base abstracta.An abstract base class. Colección de instancias de Claim.A collection of Claim instances.
DefaultClaimSet Una clase sellada.A sealed class. Una implementación de la clase ClaimSet.An implementation of the ClaimSet class.
EvaluationContext Una clase base abstracta.An abstract base class. Se pasa a una directiva de autorización durante la evaluación de la directiva.Passed to an authorization policy during policy evaluation.
IAuthorizationPolicy Una interfaz derivada de IAuthorizationComponent e implementada por las clases de directiva de autorización.An interface derived from IAuthorizationComponent and implemented by authorization policy classes.
Rights Una clase estática que contiene los valores de derecho predefinidos.A static class that contains predefined right values.

Las clases siguientes también se utilizan para la programación del modelo de identidad pero no se encuentran en los espacios de nombres System.IdentityModel.Policy ni System.IdentityModel.Claims.The following classes are also used for Identity Model programming, but are not found in the System.IdentityModel.Policy or System.IdentityModel.Claims namespaces.

ClaseClass DescripciónDescription
ServiceAuthorizationManager Una clase que proporciona un método, CheckAccessCore, para realizar las comprobaciones de autorización basadas en notificaciones para cada operación en un servicio.A class that provides a method— CheckAccessCore—to perform claim-based authorization checks for each operation in a service. Debe derivar de la clase e invalidar el método.You must derive from the class and override the method.
ServiceAuthorizationBehavior Una clase sellada que proporciona varias propiedades relacionadas con el comportamiento de un servicio ya que pertenece a la autorización.A sealed class that provides various properties related to the behavior of a service as it pertains to authorization.
ServiceSecurityContext Una clase que proporciona el contexto de seguridad, incluido el contexto de autorización, para la operación actualmente en ejecución (o que va a ejecutarse).A class that provides security context, including authorization context, for the currently running (or about to be run) operation. Una instancia de esta clase es parte de OperationContext.An instance of this class is part of the OperationContext.

Miembros significativosSignificant Members

Los miembros siguientes se utilizan normalmente para crear nuevos tipos de notificación.The following members are commonly used to create new claim types.

MiembroMember DescripciónDescription
CheckAccessCore Las clases derivadas implementan este método para realizar las comprobaciones de acceso basadas en notificaciones antes de ejecutar operaciones en un servicio.Derived classes implement this method to perform claim-based access checks prior to running operations in a service. Se puede examinar cualquier información o toda ella en el OperationContext proporcionado, o en cualquier parte, cuando se realice la decisión de comprobación de acceso.Any and all information in the supplied OperationContext, or elsewhere, can be examined when making the access check decision. Si CheckAccessCore devuelve true, después se obtiene el acceso y se permite que se ejecute la operación.If CheckAccessCore returns true, then access is granted and the operation is allowed to run. Si CheckAccessCore devuelve false, después se deniega el acceso y la operación no se ejecuta.If CheckAccessCore returns false, then access is denied and the operation does not run. Para obtener un ejemplo, consulte Cómo: crear un administrador de autorización personalizado para un servicio.For an example, see How to: Create a Custom Authorization Manager for a Service.
ServiceAuthorizationManager Devuelve ServiceAuthorizationManager para el servicio.Returns the ServiceAuthorizationManager for the service. ServiceAuthorizationManager es responsable de tomar decisiones de autorización.The ServiceAuthorizationManager is responsible for making authorization decisions.
ExternalAuthorizationPolicies La colección de directivas de autorización personalizadas especificada para el servicio.The collection of custom authorization policies specified for the service. Se evalúan estas directivas además de esas directivas asociadas con las credenciales en mensajes entrantes.These policies are evaluated in addition to those policies associated with credentials in incoming messages.

Vea tambiénSee also