Configuración de la seguridad para aplicaciones de biblioteca

Hay consideraciones especiales en la configuración de la seguridad basada en roles y la autenticación para las aplicaciones de biblioteca.

Habilitación o deshabilitación de la autenticación

Uno de los factores que se deben tener en cuenta es si los autores de llamadas de la aplicación de biblioteca deben estar sujetos a las comprobaciones de seguridad de nivel de proceso del proceso de hospedaje, es decir, si se debe habilitar o deshabilitar la autenticación.

Por ejemplo, si una aplicación de biblioteca se hospedará en un explorador, es posible que tenga que recibir devoluciones de llamada no autenticadas. Para solucionar esta necesidad, puede deshabilitar la autenticación para que el proceso de hospedaje no realice comprobaciones de seguridad para los autores de llamadas de la aplicación de biblioteca. Al deshabilitar la autenticación, la aplicación de biblioteca deja de autenticarse de forma eficaz; todas las llamadas a ella se realizarán correctamente. Los autores de llamadas de la aplicación de biblioteca no están sujetos a las comprobaciones de seguridad del proceso de hospedaje. Básicamente, la aplicación de biblioteca se etiqueta como "sin autenticar" y las comprobaciones de seguridad se omiten para las llamadas a la aplicación de biblioteca.

Para obtener información sobre cómo habilitar o deshabilitar la autenticación, consulte Habilitación de la autenticación para una aplicación de biblioteca.

Aplicación de comprobaciones de roles

Otra decisión que debe tomar es si la aplicación de biblioteca debe usar la seguridad basada en roles. Si se usa la seguridad basada en roles, debe usar la seguridad de nivel de componente para que se realicen comprobaciones de acceso. Los roles asignados a la aplicación de biblioteca no se reflejan en el descriptor de seguridad del proceso. La única autorización que la aplicación de biblioteca puede controlar es en el nivel de componente. Para obtener más información sobre la seguridad de nivel de componente, vea Límites de seguridad.

Para ver cómo establecer la seguridad de nivel de componente, consulte Establecimiento de un nivel de seguridad para comprobaciones de acceso.

Escenarios de configuración

Para comprender mejor las implicaciones de decidir si la aplicación de biblioteca debe usar la seguridad basada en roles y si la aplicación de biblioteca debe no autenticarse, tenga en cuenta los siguientes escenarios:

  • La autenticación está habilitada y se usa la seguridad basada en roles. En este escenario, el proceso de hospedaje realiza comprobaciones de seguridad y se deniega el acceso a algunos autores de llamadas en el nivel de proceso. Además, la comprobación de roles se realiza en el nivel de aplicación de biblioteca para que algunos autores de llamadas que lo realicen a través de la comprobación de seguridad de nivel de proceso se denieguen el acceso a la aplicación de biblioteca cuando se comprueba la pertenencia a roles. Este es el escenario habitual para una aplicación de biblioteca COM+ que usa la seguridad basada en roles.

    En la ilustración siguiente se muestra el escenario en el que se habilita la autenticación y se usa la comprobación de roles.

    Diagrama que muestra la autenticación que tiene lugar dentro de un proceso de host.

  • La autenticación está habilitada y no se usa la seguridad basada en roles. En este escenario, las comprobaciones de seguridad se realizan en el nivel de proceso, pero la pertenencia a roles no se comprueba en el nivel de aplicación de biblioteca. Por lo tanto, a cualquier autor de llamada de la aplicación de biblioteca que la realice a través de la comprobación de seguridad de nivel de proceso se le dará acceso a la aplicación de biblioteca porque no se está comprobando la pertenencia a roles. Esta situación existiría cuando una aplicación COM que no usa la seguridad basada en roles se migra a una aplicación de biblioteca COM+.

    En la ilustración siguiente se muestra el escenario en el que la autenticación está habilitada y la comprobación de roles no se está usando.

    Diagrama que muestra la autenticación de nivel de proceso para una aplicación de biblioteca dentro del proceso host.

  • La autenticación está deshabilitada y se usa la seguridad basada en roles. En este escenario, las comprobaciones de seguridad se realizan en el nivel de proceso, pero los autores de llamadas a la aplicación de biblioteca no están autenticados. En efecto, los autores de llamadas de la aplicación de biblioteca están exentos de la comprobación de seguridad de nivel de proceso. Dado que la comprobación de roles está habilitada, la pertenencia a roles solo determina quién tiene acceso a la aplicación de biblioteca. Este escenario podría ser adecuado cuando la comprobación de seguridad que realizaría el proceso de hospedaje es demasiado restrictiva, pero debe tener alguna restricción de acceso en la aplicación de biblioteca o en interfaces o métodos específicos. Este escenario le permite desactivar eficazmente la seguridad del proceso y seguir teniendo una comprobación de acceso de nivel adecuada mediante la seguridad basada en roles.

    El escenario en el que se deshabilita la autenticación y se usa la comprobación de roles se muestra en la ilustración siguiente.

    Diagrama que muestra

  • La autenticación está deshabilitada y no se usa la seguridad basada en roles. En este escenario, las comprobaciones de seguridad se siguen realizando en el nivel de proceso, pero, como en el escenario anterior, los autores de llamadas de la aplicación de biblioteca siempre pasan esta comprobación de seguridad. Dado que la comprobación de roles también está deshabilitada, la pertenencia a roles no se comprueba en el nivel de aplicación de biblioteca. Básicamente, cualquier persona puede llamar a la aplicación de biblioteca. Este escenario debe elegirse cuando el objeto COM necesite recibir devoluciones de llamada no autenticadas, como podría ser el caso de un control ActiveX hospedado por Internet Explorer y con un complemento de Microsoft Management Console. Por supuesto, este objeto COM debe ser de confianza para comportarse correctamente al recibir llamadas no autenticadas. Por ejemplo, no debe tener acceso a archivos arbitrarios en nombre de sus autores de llamadas.

    El escenario en el que la autenticación está deshabilitada y la comprobación de roles no se usa se muestra en la ilustración siguiente.

    Diagrama que muestra las llamadas a una aplicación de biblioteca que no están autenticadas dentro del proceso de host.

Una vez que haya decidido si habilitar o deshabilitar la autenticación para la aplicación de biblioteca COM+, consulte Habilitación de la autenticación para una aplicación de biblioteca para un procedimiento paso a paso que explica cómo deshabilitar (o habilitar) la autenticación mediante la herramienta administrativa Servicios de componentes. Si la aplicación de biblioteca usará la seguridad basada en roles, consulte Configuración de Role-Based Seguridad.

Seguridad de aplicaciones de biblioteca