Asegurar las conexiones de Internet a los servicios
Cuando crea un servicio, el acceso Web se habilita automáticamente. Esto significa que otros usuarios pueden usar el servicio cuando realizan una conexión de Internet de ArcGIS Server a su servidor. Puede elegir desactivar por completo el acceso Web o restringir el acceso a un determinado grupo de usuarios. También puede limitar el tipo de operaciones que se pueden realizar con el servicio a través de la Web. En este tema se desarrollan las siguientes operaciones:
- Desactivar el acceso Web
- Requerir HTTPS para carpetas y servicios
- Limitar los usuarios que pueden acceder a un servicio
- Limitar lo que pueden hacer los usuarios con un servicio
Los grupos agsadmin y agsusers no se utilizan para las conexiones de Internet, se usan para proteger conexiones locales. La seguridad de las conexiones locales y a Internet debe ser parte de la estrategia general de seguridad. Para obtener más información, consulte Asegurar conexiones locales a los servicios.
Desactivar el acceso Web
Si no desea que los clientes en Internet puedan acceder a un servicio, debe deshabilitar el acceso Web en forma explícita.
Desactivar el acceso Web en el Administrador
Para deshabilitar el acceso Web para un servicio en el Administrador, siga los pasos que se detallan a continuación. Se debe detener el servicio cuando realiza estos pasos.
- Haga clic en la pestaña Servicios en el Administrador.
- En la lista de servicios, busque el servicio para el que desea deshabilitar el acceso Web y haga clic en el vínculo Editar.
- Haga clic en la pestaña Capacidades.
- Desmarque Habilitar acceso Web.
- Haga clic en Guardar y reiniciar.
Desactivar el acceso Web en ArcCatalog
Para deshabilitar el acceso Web para un servicio en ArcCatalog, siga los pasos que se detallan a continuación. Se debe detener el servicio cuando realiza estos pasos.
- Realice una conexión administrativa al servidor. Consulte Realizar una conexión administrativa a ArcGIS Server en ArcCatalog para obtener instrucciones.
- Busque el servicio para el que desea deshabilitar el acceso Web.
- Si el servicio está iniciado, haga clic con el botón derecho del ratón en el servicio y haga clic en Detener.
- Haga clic con el botón derecho del ratón en el servicio y haga clic en Deshabilitar acceso Web.
- Haga clic con el botón derecho en el servicio y, a continuación, haga clic en Iniciar.
Para los servicios de mapas, los pasos que se muestran arriba sólo deshabilitan el acceso Web para la capacidad de representación cartográfica. Puede deshabilitar el acceso Web para otras capacidades en la pestaña Capacidades del cuadro de diálogo Propiedades del servicio.
Requerir HTTPS para carpetas y servicios
Puede requerir que los clientes que se conecten a los servicios de ArcGIS Server utilicen HTTPS para la conexión. Esto cifra todas las comunicaciones entre el cliente y el servidor, de manera que, si alguien intercepta la comunicación durante la transmisión, los datos se cifran contra la lectura. Si también desea restringir el acceso al servicio a ciertos usuarios, consulte la sección "Limitar los usuarios que pueden acceder a un servicio" que aparece debajo.
El requisito de HTTPS se establece a nivel de la carpeta en lugar de establecerse para servicios individuales. Si sólo desea requerir HTTPS para un servicio individual y no para todo el servidor o carpeta, cree una nueva carpeta y agregue el servicio allí.
Tenga en cuenta que debe instalar un certificado SSL en el servicio Web para que los clientes puedan solicitar recursos con HTTPS. Para obtener más detalles, consulte Configurar SSL.
Para utilizar el Administrador a fin de requerir HTTPS para una carpeta, siga estos pasos:
- Inicie sesión en el Administrador de ArcGIS Server y haga clic en Servicios.
- En el cuadro desplegable de las carpetas del servidor (denominada Servicios en:), elija la carpeta dónde desea requerir HTTPS. Para requerir HTTPS para todo el servidor, elija el servidor (raíz).
- Haga clic en Administrar carpetas y, en la lista desplegable, haga clic en Propiedades.
- En el cuadro de diálogo Propiedades de la carpeta que se abre, marque Requiere acceso Web cifrado y haga clic en Aceptar.
También puede requerir HTTPS para una carpeta a través de ArcCatalog:
- Inicie ArcCatalog, expanda Servidores SIG y después haga doble clic en la conexión administrativa al servidor. Si es necesario, agregue una conexión administrativa haciendo doble clic en Agregar ArcGIS Server, después en Administrar servicios SIG y finalmente introduciendo el nombre y la URL del servidor (por ejemplo, http://myserver.example.com/arcgis/services).
- Expanda la conexión al servidor, si es necesario, y busque la carpeta para la que desea requerir HTTPS.
- Haga clic con el botón derecho del ratón en la carpeta y elija Propiedades (o para requerir SSL para todos los servicios, haga clic con el botón derecho del ratón en el servidor y haga clic en Propiedades de carpeta raíz).
- En el cuadro de diálogo Propiedades de la carpeta, marque Requiere acceso Web cifrado y haga clic en Aceptar.
Tenga en cuenta que después de requerir HTTPS para una carpeta, toda aplicación de cliente debe usar una URL con https:// para usar los servicios en esa carpeta. Si el usuario se conecta al servidor con ArcCatalog y no usa https en la URL, no se visualizará la carpeta aunque el usuario tenga permiso para acceder a la carpeta.
Limitar los usuarios que pueden acceder a un servicio
Puede utilizar el Administrador de ArcGIS Server para limitar los usuarios que pueden acceder a un servicio a través de las conexiones de Internet. Para lograrlo, defina un conjunto de usuarios y roles y designe qué roles deberían tener acceso a los servicios de Internet específicos. Lea la información en el tema Información general sobre la configuración de usuarios y roles para aprender a crear usuarios y roles. Debe agregar al menos un usuario y un rol con un usuario antes de configurar la seguridad para los servicios. También debe habilitar la seguridad para los servicios antes de que los permisos asignados tengan efecto.
Estos son los pasos para implementar la seguridad para los servicios SIG:
- Configure la ubicación para almacenar los usuarios y roles, y agregue los usuarios y roles. Consulte Información general sobre la configuración de usuarios y roles.
- Agregue permisos para las carpetas o los servicios. Consulte Establecer permisos para un servicio o carpeta debajo.
- Habilite la seguridad para los servicios. Consulte Habilitar seguridad para los servicios. Hasta que no realice este paso, no se aplica ninguna restricción al acceso Web a los servicios.
Puede establecer permisos en carpetas y servicios. Los servicios que están dentro de una carpeta heredan los permisos establecidos para la carpeta. Si establece permisos a nivel de la raíz, todos los servicios heredan esos permisos. Puede invalidar los permisos heredados quitando los roles heredados para un servicio o carpeta.
Hasta que no complete el paso 3 para habilitar la seguridad para los servicios, cualquier usuario puede conectarse a los servicios que tienen habilitado el acceso Web. Es importante destacar que, después de habilitar la seguridad, ningún usuario puede acceder a ningún servicio a menos que (1) agregue permisos para los roles al servicio o carpeta y (2) el usuario inicie sesión con una cuenta en un rol permitido para el servicio. Por lo tanto, antes de habilitar la seguridad, debe establecer los permisos para los servicios. Puede haber un rol Anónimo disponible para que cualquier usuario pueda acceder a los servicios o carpetas, según dónde estén almacenadas las cuentas de usuario.
Una opción para configurar la seguridad es asignar permisos generales a la raíz de un servidor y después restringir los permisos en las carpetas y servicios. Otra manera es mantener los permisos limitados en la raíz y permitir el acceso de roles designados a carpetas o servicios específicos.
Si un usuario es miembro de varios roles y alguno de los roles está permitido para el servicio, el usuario tiene acceso. El Administrador no tiene la capacidad de denegar el acceso a los roles o usuarios de manera explícita. Por lo tanto, debe designar los roles cuidadosamente para que coincidan con el acceso que desea permitir para los servicios y carpetas.
Establecer permisos para un servicio o carpeta
Para establecer los permisos para los usuarios que podrán acceder a un servicio o carpeta, siga estos pasos:
- En el Administrador, haga clic en la pestaña Servicios para ver la lista de los servicios en el servidor. Si desea establecer permisos en una carpeta o un servicio dentro de una carpeta, utilice la lista Servicios en para cambiar la vista a la carpeta.
- Abra el cuadro de diálogo Permisos para el servicio o carpeta:
- Para permisos de carpetas, haga clic en Administrar carpetas y haga clic en Permisos en la lista que se abre.
- Para permisos de servicios, haga clic en el icono de permisos (candado) para el servicio.
- Se abre el cuadro de diálogo Permisos. La lista de la izquierda muestra los roles disponibles, y el cuadro de la derecha enumera los roles que tienen permitido el acceso.
- Para permitir a un rol el acceso al servicio o servicios dentro de la carpeta, haga clic en el rol en la lista de roles disponibles y haga clic en el botón Agregar para moverlo a la lista de roles permitidos.
Para quitar el acceso a un rol, haga clic en la lista de roles permitidos para seleccionarlo y después haga clic en Quitar. El rol se mueve a la lista de roles disponibles.
Nota:Si el rol fue eliminado o no está en el almacenamiento de rol, no se muestra cuando se vuelve a abrir el cuadro de diálogo Permisos.
- Una vez configurados los permisos, haga clic en Guardar para guardar los cambios y aplicarlos al servicio. Haga clic en Cancelar para cancelar los cambios realizados en el servicio.
Si se agregaron los roles Todos, Usuarios autenticados y Anónimo al almacenamiento de usuario, puede agregar cualquiera de estos roles a un servicio o carpeta, o quitarlos si fueron heredados de una carpeta principal. Cuando está habilitado el rol Todos, cualquier usuario puede acceder al servicio (o servicios dentro de la carpeta) independientemente de que introduzca un nombre de usuario o no. Si Todos está habilitado, no es necesario agregar otros roles a la lista de roles permitidos. Si habilita Usuarios autenticados, cualquier usuario en el almacenamiento de usuario puede acceder. Para obtener más información sobre estos roles especiales, consulte el tema "Configurar usuarios y roles" del proveedor de roles (SQL Server o Proveedor personalizado). Estos roles no están disponibles cuando los roles son grupos de Windows, debido a que la pertenencia al grupo debe determinarse desde el sistema operativo.
Si recibe el siguiente mensaje en el cuadro de diálogo Permisos, la seguridad para los servicios no está habilitada aún:
"Advertencia: No se habilitó la seguridad para los servicios SIG. Consulte "Configuración de seguridad para habilitar la seguridad de los servicios".
Los permisos que configuró no tienen efecto hasta que habilita la seguridad. Consulte Habilitar seguridad para los servicios para aprender cómo se habilita la seguridad.
ArcGIS Server almacena internamente las reglas de permiso para los servicios. Las reglas no están almacenadas en la aplicación Web de los servicios ArcGIS. Los permisos se guardan como archivos .sec en la carpeta <ubicación de instalación de ArcGIS>\server\user\cfg. Cuando los permisos se establecieron para una carpeta, la carpeta contiene el archivo Folder.sec. Cuando los permisos se establecieron para un servicio, la carpeta contiene un archivo con un nombre que coincide con el archivo .cfg del servicio, pero con la extensión .sec. Si no se establecieron los permisos para una carpeta o servicio, no habrá ningún archivo .sec para esa carpeta o servicio. Para obtener más información sobre los archivos .sec, consulte Archivos de configuración de seguridad.
Las reglas de acceso no deben configurarse en forma manual en la aplicación Web de los servicios ArcGIS. En muchas aplicaciones Web ASP.NET, el acceso se controla agregando reglas de autorización al archivo web.config para la aplicación Web. ArcGIS Server almacena las reglas de permiso internamente en lugar de almacenarlas en el archivo web.config. Si se agregan reglas al archivo web.config para la aplicación Servicios, se puede provocar un error en la configuración de seguridad del Administrador.
Para obtener más detalles sobre cómo funcionan los permisos, consulte estos temas:
Habilitar seguridad para los servicios
Cuando se habilita la seguridad, se aplican las reglas de permiso que estableció a las conexiones de Internet de los servicios. Hasta que no habilite la seguridad, los servicios están abiertos para todos los usuarios, aun si ya estableció las reglas de permiso.
Antes de habilitar la seguridad para los servicios, debe establecer las reglas de permiso que desea aplicar a los servicios. Si habilita la seguridad antes de asignar las reglas de permiso para los servicios, nadie podrá realizar una conexión de Internet a ninguno de los servicios.
Una vez que se habilita la seguridad, no se puede deshabilitar en el Administrador. Esto es para no comprometer la seguridad de los servicios involuntariamente. Consulte la próxima sección para obtener más información.
Estos pasos sólo se aplican a la seguridad para los servicios SIG. La seguridad para las aplicaciones Web se aplica en forma individual a cada aplicación. Consulte Asegurar las aplicaciones Web para obtener más detalles.
Para habilitar la seguridad para los servicios, siga estos pasos:
- Establezca las reglas de permiso para los servicios SIG según sus necesidades. Consulte la sección anterior, "Establecer permisos para un servicio o carpeta", para obtener más detalles. Puede utilizar el rol Todos, si lo desea, para que los usuarios puedan acceder a uno o más servicios.
- En el Administrador, haga clic en Seguridad > Configuración. En Seguridad para los servicios SIG, haga clic en el botón Habilitar. Aparece un cuadro de diálogo con información sobre la configuración de seguridad para los servicios. Lea la información para conocer las implicaciones de habilitar la seguridad. Si está seguro sobre habilitar la seguridad, haga clic en el botón Habilitar seguridad para los servicios. De lo contrario, haga clic en Cancelar.
- Si eligió almacenar los usuarios como usuarios de Windows, debe deshabilitar el acceso anónimo a la aplicación Servicios. Consulte Deshabilitar el acceso anónimo a los servicios Web de ArcGIS en Internet Information Services para obtener instrucciones sobre cómo deshabilitar el acceso anónimo.
- Verifique los servicios para asegurarse de que los usuarios en los roles permitidos tienen acceso a los servicios. De ser necesario, modifique los permisos como se describe en Establecer permisos para un servicio o carpeta.
Deshabilitar seguridad para los servicios
Una vez que se habilita la seguridad para los servicios SIG, no se puede deshabilitar con el Administrador. Esto es para no deshabilitar la seguridad accidentalmente y exponer el acceso a los servicios. Si más adelante decide deshabilitar la seguridad, siga estos pasos.
Si realiza estos pasos, cualquier usuario puede conectarse a cualquier servicio SIG utilizando una conexión de Internet sin introducir un nombre de usuario.
- Abra la consola de administración Servicios haciendo clic en Panel de control > Herramientas administrativas > Servicios.
- Haga clic con el botón derecho del ratón en el servicio del Administrador de objetos de servidor ArcGIS Server y haga clic en Detener.Precaución:
Si realiza los cambios que aparecen debajo antes de detener ArcGIS Server, los cambios se sobrescribirán cuando ArcGIS Server se detenga.
- Utilice un editor de texto (como el Bloc de notas) o un editor de XML para abrir el archivo Server.dat en el equipo administrador de objetos de servidor (SOM). Este archivo se encuentra en la instalación de ArcGIS Server en <ubicación de instalación de ArcGIS>\server\system.
- Cambie el siguiente elemento, ubicado dentro del elemento <Server>, de
<SecurityEnabled>true</SecurityEnabled>
a<SecurityEnabled>false</SecurityEnabled>
y guarde el archivo. - Utilice un editor de texto o de XML para abrir el archivo web.config en C:\Inetpub\wwwroot\ArcGIS\Services (modifique la ruta si instaló los servicios Web de ArcGIS en una ubicación diferente).
- Busque la siguiente línea dentro de la sección <appSettings>:
<add key="RequireToken" value="True" />
y cámbiela por<add key="RequireToken" value="False" />
. Guarde el archivo. - Repita los dos pasos anteriores para los archivos web.config en la carpeta REST y la carpeta Tokens en el directorio C:\Inetpub\wwwroot\ArcGIS.
- Si configuró la seguridad para usuarios de Windows, vuelva a habilitar el acceso anónimo a las carpetas Servicios y REST en la instancia Web de ArcGIS Server en IIS. Consulte las instrucciones en la sección Deshabilitar el acceso anónimo a los servicios Web de ArcGIS en Internet Information Services, excepto en el paso 3 de las instrucciones, habilite el acceso anónimo. Realice este procedimiento para los directorios Servicios y REST.
- Vuelva a la consola de administración Servicios, haga clic con el botón derecho del ratón en el servicio de Administrador de objetos de servidor ArcGIS Server y haga clic en Iniciar.
- Haga clic con el botón derecho del ratón en el Servicio de publicación World Wide Web y haga clic en Reiniciar.
Para volver a habilitar la seguridad, siga los pasos de Habilitar seguridad para los servicios.
Limitar lo que pueden hacer los usuarios con un servicio
Para facilitar la manera de controlar los servicios Web, cada tipo de servicio tiene un conjunto de operaciones permitidas que determina qué métodos pueden utilizar los usuarios. Puede habilitar todas las operaciones si desea que los usuarios tengan un uso total del servicio, o puede deshabilitar ciertas operaciones para evitar que los usuarios realicen ciertas acciones, como consultar datos en el mapa o extraer datos de una geodatabase.
Puede establecer las operaciones permitidas en la pestaña Capacidades del cuadro de diálogo Propiedades del servicio. Para obtener la documentación sobre los métodos que están incluidos en cada operación, consulte Ajustar y configurar los servicios.