Share via


Límites de seguridad

La seguridad solo se comprueba en los límites de la aplicación. Es decir, para dos componentes de la misma aplicación, cuando un componente llama al otro, no se realizará ninguna comprobación de seguridad. Sin embargo, si dos aplicaciones comparten el mismo proceso y un componente en uno llama a un componente en el otro, se realiza una comprobación de seguridad porque se cruza un límite de aplicación. Del mismo modo, si dos aplicaciones residen en procesos de servidor diferentes y un componente de la primera aplicación llama a un componente de la segunda aplicación, se realiza una comprobación de seguridad.

Por lo tanto, si tiene dos componentes y desea que se realicen comprobaciones de seguridad cuando una llama a la otra, debe colocar los componentes en aplicaciones COM+ independientes.

Dado que las aplicaciones de biblioteca COM+ se hospedan en otros procesos, hay un límite de seguridad entre la aplicación de biblioteca y el proceso de hospedaje. Además, la aplicación de biblioteca no controla la seguridad de nivel de proceso, lo que afecta a cómo es necesario configurar la seguridad para ella. Para obtener más información, vea Seguridad de aplicaciones de biblioteca.

Determinar si se debe realizar una comprobación de seguridad en una llamada a un componente se basa en la propiedad de seguridad del contexto de objeto creado cuando se crea una instancia del componente configurado. Para obtener más información, vea Security Context Property.

comprobaciones de acceso de Component-Level

Para una aplicación de servidor COM+, tiene la opción de aplicar comprobaciones de acceso en el nivel de componente o en el nivel de proceso.

Al seleccionar la comprobación de acceso de nivel de componente, se habilitan las asignaciones de roles específicas. Puede asignar roles a componentes, interfaces y métodos y lograr una directiva de autorización articulada. Esta será la configuración estándar para las aplicaciones que usan la seguridad basada en roles.

En el caso de las aplicaciones de biblioteca COM+, debe seleccionar la seguridad de nivel de componente si desea usar roles. Las aplicaciones de biblioteca no pueden usar la seguridad de nivel de proceso.

Debe seleccionar la comprobación de acceso de nivel de componente si usa la seguridad basada en roles mediante programación. La información de contexto de llamada de seguridad solo está disponible cuando la seguridad de nivel de componente está habilitada. Para obtener más información, consulte Información de contexto de llamada de seguridad.

Además, al seleccionar la comprobación de acceso de nivel de componente, la propiedad de seguridad se incluirá en el contexto del objeto. Esto significa que la configuración de seguridad puede desempeñar un papel en la forma en que se activa el objeto. Para obtener más información, vea Security Context Property.

comprobaciones de acceso de Process-Level

Las comprobaciones de nivel de proceso solo se aplican al límite de la aplicación. Es decir, los roles que ha definido para toda la aplicación COM+ determinarán quién tiene acceso a cualquier recurso dentro de la aplicación. No se aplican asignaciones de roles más específicas. Básicamente, los roles se usan para crear un descriptor de seguridad en el que se valida cualquier llamada a los componentes de la aplicación. En este caso, no desea crear una directiva de autorización detallada con varios roles. La aplicación usará un único descriptor de seguridad.

En el caso de las aplicaciones de biblioteca COM+, no seleccionaría comprobaciones de acceso de nivel de proceso. La aplicación de biblioteca se ejecutará hospedada en el proceso del cliente y, por tanto, no controlará la seguridad de nivel de proceso. Para obtener más información, vea Seguridad de aplicaciones de biblioteca.

Con las comprobaciones de acceso de nivel de proceso habilitadas, la información de contexto de llamada de seguridad no está disponible. Esto significa que no se puede realizar la seguridad mediante programación al usar solo la seguridad de nivel de proceso. Para obtener más información, consulte Información de contexto de llamada de seguridad.

Además, la propiedad de seguridad no se incluirá en el contexto del objeto. Esto significa que, al usar solo comprobaciones de acceso de nivel de proceso, la configuración de seguridad nunca desempeñará un papel en la forma en que se activa el objeto. Para obtener más información, vea Security Context Property.

Diseñar roles de forma eficaz

Información de contexto de llamada de seguridad

Security Context (propiedad)

Uso de roles para la autorización de cliente