Publicación de aplicaciones con autenticación previa de AD FS

Se aplica a: Windows Server 2022, Windows Server 2019, Windows Server 2016

Este contenido es relevante para la versión local del Proxy de aplicación web. Para habilitar el acceso seguro a aplicaciones locales a través de la nube, consulte el contenido de Proxy de aplicación de Azure AD.

En este tema se describe cómo publicar aplicaciones a través de web Application Proxy mediante la autenticación previa de Servicios de federación de Active Directory (AD FS) (AD FS).

Para todos los tipos de aplicaciones que puede publicar mediante la autenticación previa de AD FS, debe agregar una relación de confianza para usuario autenticado de AD FS al servicio de federación.

El flujo de autenticación previa general de AD FS es el siguiente:

Nota

Este flujo de autenticación no es aplicable a los clientes que usan aplicaciones Microsoft Store.

  1. El dispositivo cliente intenta acceder a una aplicación web publicada en una dirección URL de recurso determinada; por ejemplo https://app1.contoso.com/, .

    La dirección URL del recurso es una dirección pública en la que web Application Proxy escucha las solicitudes HTTPS entrantes.

    Si está habilitado el redireccionamiento HTTP a HTTPS, web Application Proxy también escuchará las solicitudes HTTP entrantes.

  2. Web Application Proxy redirige la solicitud HTTPS al servidor de AD FS con parámetros con codificación URL, incluida la dirección URL del recurso y appRealm (un identificador de usuario de confianza).

    El usuario se autentica mediante el método de autenticación requerido por el servidor de AD FS; por ejemplo, el nombre de usuario y la contraseña, la autenticación en dos fases con una contraseña única, etc.

  3. Una vez autenticado el usuario, el servidor de AD FS emite un token de seguridad, el "token perimetral", que contiene la siguiente información y redirige la solicitud HTTPS al servidor web Application Proxy:

    • El identificador del recurso al cual el usuario ha intentado obtener acceso.

    • Identidad del usuario como nombre principal de usuario (UPN).

    • La expiración de la aprobación de concesión de acceso, es decir, se concede al usuario acceso por un periodo de tiempo limitado, tras el cual se le solicitará que se autentique de nuevo.

    • Firma de la información en el token perimetral.

  4. Web Application Proxy recibe la solicitud HTTPS redirigida del servidor de AD FS con el token perimetral y valida y usa el token de la siguiente manera:

    • Valida que la firma del token perimetral procede del servicio de federación configurado en la configuración de Application Proxy web.

    • Valida que el token haya sido emitido para la aplicación correcta.

    • Valida que el token no haya expirado.

    • Utiliza la identidad del usuario cuando sea necesario; por ejemplo para obtener un vale de Kerberos si el servidor back-end está configurado para utilizar la autenticación integrada de Windows.

  5. Si el token perimetral es válido, Web Application Proxy reenvía la solicitud HTTPS a la aplicación web publicada mediante HTTP o HTTPS.

  6. El cliente ahora tiene acceso a la aplicación web publicada; no obstante, la aplicación web puede configurarse para requerir al usuario que realice una autenticación adicional. Si, por ejemplo, la aplicación web publicada es un sitio de SharePoint y no requiere autenticación adicional, el usuario verá el sitio de SharePoint en el explorador.

  7. Web Application Proxy guarda una cookie en el dispositivo cliente. Web Application Proxy usa la cookie para identificar que esta sesión ya se ha autenticado previamente y que no se requiere ninguna otra autenticación previa.

Importante

Al configurar la dirección URL externa y la dirección URL del servidor back-end, procure especificar el nombre de dominio completo (FQDN), no una dirección IP.

Nota

Este tema incluye cmdlets de Windows PowerShell de ejemplo que puede usar para automatizar algunos de los procedimientos descritos. Para obtener más información, consulte Uso de Cmdlets.

Publicar una aplicación basada en notificaciones para los clientes de explorador web

Para publicar una aplicación que utiliza notificaciones para la autenticación, debe agregar una relación de confianza para usuario autenticado para la aplicación al Servicio de federación.

Al publicar aplicaciones basadas en notificaciones y obtener acceso a la aplicación desde un explorador, el flujo de autenticación general es el siguiente:

  1. El cliente intenta acceder a una aplicación basada en notificaciones mediante un explorador web; por ejemplo, https://appserver.contoso.com/claimapp/.

  2. El explorador web envía una solicitud HTTPS al servidor web Application Proxy que redirige la solicitud al servidor de AD FS.

  3. El servidor de AD FS autentica al usuario y al dispositivo y redirige la solicitud a web Application Proxy. La solicitud ya contiene el token perimetral. El servidor de AD FS agrega una cookie de inicio de sesión único (SSO) a la solicitud porque el usuario ya ha realizado la autenticación en el servidor de AD FS.

  4. Web Application Proxy valida el token, agrega su propia cookie y reenvía la solicitud al servidor back-end.

  5. El servidor back-end redirige la solicitud al servidor de AD FS para obtener el token de seguridad de la aplicación.

  6. El servidor de AD FS redirige la solicitud al servidor back-end. La solicitud ya contiene el token de aplicación y el token de SSO. El usuario tiene acceso concedido a la aplicación y no es necesario que escriba un nombre de usuario o una contraseña.

En este procedimiento se describe cómo publicar una aplicación basada en notificaciones (como, por ejemplo, un sitio de SharePoint) a la que vayan a tener acceso los clientes de explorador web. Antes de comenzar, asegúrese de que ha hecho lo siguiente:

  • Ha creado una relación de confianza para usuario autenticado para la aplicación en la consola de administración de AD FS.

  • Se ha comprobado que un certificado en el servidor web Application Proxy es adecuado para la aplicación que desea publicar.

Para publicar una aplicación basada en notificaciones

  1. En el servidor web Application Proxy, en la consola de administración de acceso remoto, en el panel Navegación, haga clic en Web Application Proxy y, a continuación, en el panel Tareas, haga clic en Publicar.

  2. En el Asistente para publicar nuevas aplicaciones, en el cuadro de diálogo Página principal, haga clic en Siguiente.

  3. En la página Autenticación previa, haga clic en Servicios de federación de Active Directory (AD FS) (AD FS) y, a continuación, haga clic en Siguiente.

  4. En la página Clientes admitidos, selecciona Web y MSOFBA, y después haz clic en Siguiente.

  5. En la lista de usuarios de confianza de la página Persona de confianza, seleccione el usuario de confianza de la aplicación que desea publicar y haga clic en Siguiente.

  6. En la página Configuración de publicación, haga lo siguiente y, a continuación, haga clic en Siguiente:

    • En el cuadro Nombre, escriba un nombre descriptivo para la aplicación.

      Este nombre se usa únicamente en la lista de aplicaciones publicadas de la Consola de administración de acceso remoto.

    • En el cuadro Dirección URL externa, indique la dirección URL externa de esta aplicación; por ejemplo, https://sp.contoso.com/app1/.

    • En la lista Certificado externo, seleccione un certificado cuyo sujeto abarque la dirección URL externa.

    • En el cuadro Dirección URL del servidor back-end, indique la dirección URL del servidor back-end. Tenga en cuenta que este valor se escribe automáticamente al escribir la dirección URL externa y debe cambiarlo solo si la dirección URL del servidor back-end es diferente; por ejemplo, https://sp/app1/.

      Nota

      Los Application Proxy web pueden traducir nombres de host en direcciones URL, pero no pueden traducir nombres de ruta de acceso. Por lo tanto, se pueden especificar otros nombres de host, pero el nombre de la ruta de acceso debe ser el mismo. Por ejemplo, puede escribir una dirección URL externa de https://apps.contoso.com/app1/ y una dirección URL del servidor back-end de . https://app-server/app1/. Sin embargo, no puede escribir una dirección URL externa de https://apps.contoso.com/app1/ y una dirección URL del servidor back-end de https://apps.contoso.com/internal-app1/.

  7. En la página Confirmación, revise la configuración y, a continuación, haga clic en Publicar. Puede copiar el comando de PowerShell para configurar más aplicaciones publicadas.

  8. En la página Resultados, asegúrese de que la aplicación se publicó correctamente y, a continuación, haga clic en Cerrar.

Comandos equivalentes de Windows PowerShell

Los siguientes cmdlets de Windows PowerShell realizan la misma función que el procedimiento anterior. Escriba cada cmdlet en una sola línea, aunque aquí pueden aparecer con saltos de línea entre varias líneas aquí debido a restricciones de formato.

Add-WebApplicationProxyApplication
    -BackendServerURL 'https://sp.contoso.com/app1/'
    -ExternalCertificateThumbprint '1a2b3c4d5e6f1a2b3c4d5e6f1a2b3c4d5e6f1a2b'
    -ExternalURL 'https://sp.contoso.com/app1/'
    -Name 'SP'
    -ExternalPreAuthentication ADFS
    -ADFSRelyingPartyName 'SP_Relying_Party'

Publicar una aplicación basada en la autenticación integrada de Windows para clientes de explorador web

Web Application Proxy se puede usar para publicar aplicaciones que usan autenticación de Windows integrados; es decir, web Application Proxy realiza la autenticación previa según sea necesario y, a continuación, puede realizar el inicio de sesión único en la aplicación publicada que usa Integrado. autenticación de Windows. Para publicar una aplicación que utiliza la autenticación integrada de Windows, debe agregar una relación de confianza para usuario autenticado no compatible con notificaciones para la aplicación al Servicio de federación.

Para permitir que Web Application Proxy realizar el inicio de sesión único (SSO) y realizar la delegación de credenciales mediante la delegación restringida de Kerberos, el servidor web Application Proxy debe estar unido a un dominio. Consulte Planeamiento de Active Directory.

Para permitir que los usuarios accedan a las aplicaciones que usan autenticación de Windows integrados, el servidor de Application Proxy web debe ser capaz de proporcionar delegación para los usuarios a la aplicación publicada. Puede hacerlo en el controlador de dominio para cualquier aplicación. También puede hacerlo en el servidor back-end si se ejecuta en Windows Server 2012 R2 o Windows Server 2012 . Para obtener más información, consulte Novedades de la autenticación Kerberos.

Para ver un tutorial sobre cómo configurar Application Proxy web para publicar una aplicación mediante autenticación de Windows integrada, consulte Configuración de un sitio para usar autenticación de Windows integrado.

Cuando se usa integrated autenticación de Windows en servidores back-end, la autenticación entre web Application Proxy y la aplicación publicada no se basa en notificaciones, sino que usa la delegación restringida de Kerberos para autenticar a los usuarios finales en la aplicación. El flujo general se describe a continuación:

  1. El cliente intenta acceder a una aplicación no basada en notificaciones mediante un explorador web; por ejemplo, https://appserver.contoso.com/nonclaimapp/.

  2. El explorador web envía una solicitud HTTPS al servidor web Application Proxy que redirige la solicitud al servidor de AD FS.

  3. El servidor de AD FS autentica al usuario y redirige la solicitud a web Application Proxy. La solicitud ya contiene el token perimetral.

  4. Web Application Proxy valida el token.

  5. Si el token es válido, Web Application Proxy obtiene un vale kerberos del controlador de dominio en nombre del usuario.

  6. Web Application Proxy agrega el vale kerberos a la solicitud como parte del token de mecanismo de negociación GSS-API simple y protegido (SPNEGO) y reenvía la solicitud al servidor back-end. La solicitud contiene el vale de Kerberos; por consiguiente, se concede al usuario acceso a la aplicación sin que sea necesaria ninguna autenticación adicional.

En este procedimiento se describe cómo publicar una aplicación que usa la autenticación integrada de Windows (como, por ejemplo, Outlook Web App) a la que vayan a tener acceso los clientes de explorador web. Antes de comenzar, asegúrese de que ha hecho lo siguiente:

  • Se ha creado una relación de confianza para usuario autenticado no compatible con notificaciones para la aplicación en la consola de administración de AD FS.

  • Ha configurado el servidor back-end para que admita la delegación limitada de Kerberos en el controlador de dominio usando el cmdlet Set-ADUser con el parámetro -PrincipalsAllowedToDelegateToAccount. Tenga en cuenta que si el servidor back-end se ejecuta en Windows Server 2012 R2 o Windows Server 2012 , también puede ejecutar este comando de PowerShell en el servidor back-end.

  • Asegúrese de que los servidores de web Application Proxy están configurados para la delegación a los nombres de entidad de seguridad de servicio de los servidores back-end.

  • Se ha comprobado que un certificado en el servidor web Application Proxy es adecuado para la aplicación que desea publicar.

Para publicar una aplicación que no esté basada en notificaciones

  1. En el servidor web Application Proxy, en la consola de administración de acceso remoto, en el panel Navegación, haga clic en Web Application Proxy y, a continuación, en el panel Tareas, haga clic en Publicar.

  2. En el Asistente para publicar nuevas aplicaciones, en el cuadro de diálogo Página principal, haga clic en Siguiente.

  3. En la página Autenticación previa, haga clic en Servicios de federación de Active Directory (AD FS) (AD FS) y, a continuación, haga clic en Siguiente.

  4. En la página Clientes admitidos, selecciona Web y MSOFBA, y después haz clic en Siguiente.

  5. En la lista de usuarios de confianza de la página Persona de confianza, seleccione el usuario de confianza de la aplicación que desea publicar y haga clic en Siguiente.

  6. En la página Configuración de publicación, haga lo siguiente y, a continuación, haga clic en Siguiente:

    • En el cuadro Nombre, escriba un nombre descriptivo para la aplicación.

      Este nombre se usa únicamente en la lista de aplicaciones publicadas de la Consola de administración de acceso remoto.

    • En el cuadro Dirección URL externa, indique la dirección URL externa de esta aplicación; por ejemplo, https://owa.contoso.com/.

    • En la lista Certificado externo, seleccione un certificado cuyo sujeto abarque la dirección URL externa.

    • En el cuadro Dirección URL del servidor back-end, indique la dirección URL del servidor back-end. Tenga en cuenta que este valor se escribe automáticamente al escribir la dirección URL externa y debe cambiarlo solo si la dirección URL del servidor back-end es diferente; por ejemplo, https://owa/.

      Nota

      Los Application Proxy web pueden traducir nombres de host en direcciones URL, pero no pueden traducir nombres de ruta de acceso. Por lo tanto, se pueden especificar otros nombres de host, pero el nombre de la ruta de acceso debe ser el mismo. Por ejemplo, puede escribir una dirección URL externa de https://apps.contoso.com/app1/ y una dirección URL del servidor back-end de . https://app-server/app1/. Sin embargo, no puede escribir una dirección URL externa de https://apps.contoso.com/app1/ y una dirección URL del servidor back-end de https://apps.contoso.com/internal-app1/.

    • En el cuadro SPN del servidor back-end, escriba el nombre de entidad de seguridad de servicio del servidor back-end (por ejemplo, HTTP/owa.contoso.com).

  7. En la página Confirmación, revise la configuración y, a continuación, haga clic en Publicar. Puede copiar el comando de PowerShell para configurar más aplicaciones publicadas.

  8. En la página Resultados, asegúrese de que la aplicación se publicó correctamente y, a continuación, haga clic en Cerrar.

Comandos equivalentes de Windows PowerShell

Los siguientes cmdlets de Windows PowerShell realizan la misma función que el procedimiento anterior. Escriba cada cmdlet en una sola línea, aunque aquí pueden aparecer con saltos de línea entre varias líneas aquí debido a restricciones de formato.

Add-WebApplicationProxyApplication
    -BackendServerAuthenticationSpn 'HTTP/owa.contoso.com'
    -BackendServerURL 'https://owa.contoso.com/'
    -ExternalCertificateThumbprint '1a2b3c4d5e6f1a2b3c4d5e6f1a2b3c4d5e6f1a2b'
    -ExternalURL 'https://owa.contoso.com/'
    -Name 'OWA'
    -ExternalPreAuthentication ADFS
    -ADFSRelyingPartyName 'Non-Claims_Relying_Party'

Publicación de una aplicación que usa MS-OFBA

Web Application Proxy admite el acceso desde clientes de Microsoft Office, como Microsoft Word que acceden a documentos y datos en servidores back-end. La única diferencia entre estas aplicaciones y un explorador estándar es que el redireccionamiento al STS no se realiza a través del redireccionamiento HTTP normal, sino con encabezados MS-OFBA especiales como se especifica en: https://msdn.microsoft.com/library/dd773463(v=office.12).aspx. La aplicación back-end pueden ser de notificaciones o IWA. Para publicar una aplicación para los clientes que usan MS-OFBA, debe agregar una relación de confianza para usuario autenticado para la aplicación al servicio de federación. En función de la aplicación, puede utilizar la autenticación basada en notificaciones o la autenticación integrada de Windows. Por lo tanto, debe agregar la relación de confianza para usuario autenticado relevante en función de la aplicación.

Para permitir que Web Application Proxy realizar el inicio de sesión único (SSO) y realizar la delegación de credenciales mediante la delegación restringida de Kerberos, el servidor web Application Proxy debe estar unido a un dominio. Consulte Planeamiento de Active Directory.

Si la aplicación usa la autenticación basada en notificaciones, no hay más pasos de planificación. Si la aplicación usó autenticación de Windows integrada, consulte Publicación de una aplicación integrada Windows basada en autenticación para clientes de explorador web.

A continuación se describe el flujo de autenticación para los clientes que usan el protocolo MS-OFBA mediante la autenticación basada en notificaciones. La autenticación para este escenario puede utilizar el token de aplicación en la URL o en el cuerpo.

  1. El usuario está trabajando en un programa de Office y, desde la lista de Documentos recientes, abre un archivo en sitio de SharePoint.

  2. El programa de Office muestra una ventana con un control de explorador que requiere que el usuario introduzca credenciales.

    Nota

    En algunos casos, es posible que la ventana no aparezca porque el cliente ya está autenticado.

  3. Web Application Proxy redirige la solicitud al servidor de AD FS, que realiza la autenticación.

  4. El servidor de AD FS redirige la solicitud a web Application Proxy. La solicitud ya contiene el token perimetral.

  5. El servidor de AD FS agrega una cookie de inicio de sesión único (SSO) a la solicitud porque el usuario ya ha realizado la autenticación en el servidor de AD FS.

  6. Web Application Proxy valida el token y reenvía la solicitud al servidor back-end.

  7. El servidor back-end redirige la solicitud al servidor de AD FS para obtener el token de seguridad de la aplicación.

  8. La solicitud se redirige al servidor back-end. La solicitud ya contiene el token de aplicación y el token de SSO. El usuario tiene acceso concedido al sitio de SharePoint y no es necesario que escriba un nombre de usuario o una contraseña para ver el archivo.

Los pasos para publicar una aplicación que usa MS-OFBA son idénticas a los pasos de una aplicación basada en notificaciones o una aplicación no basada en notificaciones. Para aplicaciones basadas en notificaciones, consulte Publicación de una aplicación basada en notificaciones para clientes de explorador web para aplicaciones no basadas en notificaciones, consulte Publicación de una aplicación integrada basada en Windows autenticada para clientes de explorador web. Web Application Proxy detecta automáticamente el cliente y autenticará al usuario según sea necesario.

Publicación de una aplicación que usa HTTP Basic

HTTP Basic es el protocolo de autorización que usan muchos protocolos para conectar clientes enriquecidos, incluidos los smartphones, con el buzón de Exchange. Para obtener más información sobre HTTP Basic, consulte RFC 2617. Web Application Proxy interactúa tradicionalmente con AD FS mediante redireccionamientos; la mayoría de los clientes enriquecidos no admiten cookies ni administración de estado. De esta manera, web Application Proxy permite que la aplicación HTTP reciba una relación de confianza para usuario autenticado que no sea de notificaciones para la aplicación en el servicio de federación. Consulte Planeamiento de Active Directory.

El flujo de autenticación para los clientes que usan HTTP Basic se describe a continuación y en este diagrama:

Authentication diagram for HTTP Basic

  1. El usuario intenta acceder a una aplicación web publicada un cliente telefónico.

  2. La aplicación envía una solicitud HTTPS a la dirección URL publicada por web Application Proxy.

  3. Si la solicitud no contiene credenciales, Web Application Proxy devuelve una respuesta HTTP 401 a la aplicación que contiene la dirección URL del servidor de AD FS autenticado.

  4. El usuario envía de nuevo la solicitud HTTPS a la aplicación con autorización establecida en Basic y user name (Nombre de usuario) y Base 64 encrypted password (Contraseña cifrada de Base 64) del usuario en el encabezado de solicitud www-authenticate.

  5. Dado que el dispositivo no se puede redirigir a AD FS, el Application Proxy web envía una solicitud de autenticación a AD FS con las credenciales que tiene, incluido el nombre de usuario y la contraseña. El token se adquiere en nombre del dispositivo.

  6. Para minimizar el número de solicitudes enviadas a AD FS, Web Application Proxy, valida las solicitudes de cliente posteriores mediante tokens almacenados en caché mientras el token sea válido. Web Application Proxy limpia periódicamente la memoria caché. Puede ver el tamaño de la memoria caché mediante el contador de rendimiento.

  7. Si el token es válido, Web Application Proxy reenvía la solicitud al servidor back-end y al usuario se le concede acceso a la aplicación web publicada.

En el procedimiento siguiente se explica cómo publicar aplicaciones básicas HTTP.

Para publicar una aplicación HTTP Basic

  1. En el servidor web Application Proxy, en la consola de administración de acceso remoto, en el panel Navegación, haga clic en Web Application Proxy y, a continuación, en el panel Tareas, haga clic en Publicar.

  2. En el Asistente para publicar nuevas aplicaciones, en el cuadro de diálogo Página principal, haga clic en Siguiente.

  3. En la página Autenticación previa, haga clic en Servicios de federación de Active Directory (AD FS) (AD FS) y, a continuación, haga clic en Siguiente.

  4. En la página Clientes admitidos , seleccione HTTP Basic y, a continuación, haga clic en Siguiente.

    Si desea habilitar el acceso a la Exchange solo desde dispositivos unidos al área de trabajo, seleccione el cuadro Habilitar acceso solo para dispositivos unidos al área de trabajo. Para obtener más información, consulte Unión al área de trabajo desde cualquier dispositivo para SSO y Autenticación de segundo factor de conexión directa entre aplicaciones de la empresa.

  5. En la lista de usuarios de confianza de la página Persona de confianza, seleccione el usuario de confianza de la aplicación que desea publicar y haga clic en Siguiente. Tenga en cuenta que esta lista solo contiene entidades de confianza de notificaciones.

  6. En la página Configuración de publicación, haga lo siguiente y, a continuación, haga clic en Siguiente:

    • En el cuadro Nombre, escriba un nombre descriptivo para la aplicación.

      Este nombre se usa únicamente en la lista de aplicaciones publicadas de la Consola de administración de acceso remoto.

    • En el cuadro Dirección URL externa , escriba la dirección URL externa de esta aplicación; por ejemplo, mail.contoso.com

    • En la lista Certificado externo, seleccione un certificado cuyo sujeto abarque la dirección URL externa.

    • En el cuadro Dirección URL del servidor back-end, indique la dirección URL del servidor back-end. Tenga en cuenta que este valor se escribe automáticamente al escribir la dirección URL externa y debe cambiarlo solo si la dirección URL del servidor back-end es diferente; por ejemplo, mail.contoso.com.

  7. En la página Confirmación, revise la configuración y, a continuación, haga clic en Publicar. Puede copiar el comando de PowerShell para configurar más aplicaciones publicadas.

  8. En la página Resultados, asegúrese de que la aplicación se publicó correctamente y, a continuación, haga clic en Cerrar.

Comandos equivalentes de Windows PowerShell

Los siguientes cmdlets de Windows PowerShell realizan la misma función que el procedimiento anterior. Escriba cada cmdlet en una sola línea, aunque aquí pueden aparecer con saltos de línea entre varias líneas aquí debido a restricciones de formato.

Este Windows PowerShell script habilita la autenticación previa para todos los dispositivos, no solo para dispositivos unidos al área de trabajo.

Add-WebApplicationProxyApplication
     -BackendServerUrl 'https://mail.contoso.com'
     -ExternalCertificateThumbprint '697F4FF0B9947BB8203A96ED05A3021830638E50'
     -ExternalUrl 'https://mail.contoso.com'
     -Name 'Exchange'
     -ExternalPreAuthentication ADFSforRichClients
     -ADFSRelyingPartyName 'EAS_Relying_Party'

Los siguientes autenticados previamente solo los dispositivos unidos al área de trabajo:

Add-WebApplicationProxyApplication
     -BackendServerUrl 'https://mail.contoso.com'
     -ExternalCertificateThumbprint '697F4FF0B9947BB8203A96ED05A3021830638E50'
     -EnableHTTPRedirect:$true
     -ExternalUrl 'https://mail.contoso.com'
     -Name 'Exchange'
     -ExternalPreAuthentication ADFSforRichClients
     -ADFSRelyingPartyName 'EAS_Relying_Party'

Publicación de una aplicación que usa OAuth2, como una aplicación de Microsoft Store

Para publicar una aplicación para Microsoft Store aplicaciones, debe agregar una relación de confianza para usuario autenticado para la aplicación al Servicio de federación.

Para permitir que Web Application Proxy realizar el inicio de sesión único (SSO) y realizar la delegación de credenciales mediante la delegación restringida de Kerberos, el servidor web Application Proxy debe estar unido a un dominio. Consulte Planeamiento de Active Directory.

Nota

Web Application Proxy solo admite la publicación para Microsoft Store aplicaciones que usan el protocolo OAuth 2.0.

En la consola de administración de AD FS, debe asegurarse de que el punto de conexión de OAuth está habilitado para el proxy. Para comprobar si el punto final OAuth está habilitado para proxy, abra la Consola de administración de AD FS, expanda Servicio, haga clic en Puntos finales, en la lista Puntos finales, localice el punto final OAuth y asegúrese de que el valor de la columna Habilitado para proxy sea .

El flujo de autenticación para los clientes que usan Microsoft Store aplicaciones se describe a continuación:

Nota

El Application Proxy web redirige al servidor de AD FS para la autenticación. Dado que Microsoft Store aplicaciones no admiten redireccionamientos, si usa aplicaciones Microsoft Store, es necesario establecer la dirección URL del servidor de AD FS mediante el cmdlet Set-WebApplicationProxyConfiguration y el parámetro OAuthAuthenticationURL.

Microsoft Store aplicaciones solo se pueden publicar con Windows PowerShell.

  1. El cliente intenta acceder a una aplicación web publicada mediante una aplicación Microsoft Store.

  2. La aplicación envía una solicitud HTTPS a la dirección URL publicada por web Application Proxy.

  3. Web Application Proxy devuelve una respuesta HTTP 401 a la aplicación que contiene la dirección URL del servidor de AD FS autenticado. Este proceso se conoce como "detección".

    Nota

    Si la aplicación conoce la dirección URL del servidor de AD FS de autenticación y ya tiene un token combinado que contiene el token de OAuth y el token perimetral, se omiten los pasos 2 y 3 en este flujo de autenticación.

  4. La aplicación envía una solicitud HTTPS al servidor de AD FS.

  5. La aplicación usa el agente de autenticación web para generar un cuadro de diálogo en el que el usuario escribe las credenciales para autenticarse en el servidor de AD FS. Para obtener información sobre el agente de autenticación web, consulta Agente de autenticación web.

  6. Después de la autenticación correcta, el servidor de AD FS crea un token combinado que contiene el token de OAuth y el token perimetral y envía el token a la aplicación.

  7. La aplicación envía una solicitud HTTPS que contiene el token combinado a la dirección URL publicada por web Application Proxy.

  8. Web Application Proxy divide el token combinado en sus dos partes y valida el token perimetral.

  9. Si el token perimetral es válido, Web Application Proxy reenvía la solicitud al servidor back-end con solo el token de OAuth. Se concede al usuario acceso a la aplicación web publicada.

En este procedimiento se explica cómo publicar una aplicación para OAuth2. Este tipo de aplicación solo se puede publicar con Windows PowerShell. Antes de comenzar, asegúrese de que ha hecho lo siguiente:

  • Ha creado una relación de confianza para usuario autenticado para la aplicación en la consola de administración de AD FS.

  • Asegúrese de que el punto de conexión de OAuth está habilitado en la consola de administración de AD FS y tome nota de la ruta de acceso de la dirección URL.

  • Se ha comprobado que un certificado en el servidor web Application Proxy es adecuado para la aplicación que desea publicar.

Para publicar una aplicación de OAuth2

  1. En el servidor web Application Proxy, en la consola de administración de acceso remoto, en el panel Navegación, haga clic en Web Application Proxy y, a continuación, en el panel Tareas, haga clic en Publicar.

  2. En el Asistente para publicar nuevas aplicaciones, en el cuadro de diálogo Página principal, haga clic en Siguiente.

  3. En la página Autenticación previa, haga clic en Servicios de federación de Active Directory (AD FS) (AD FS) y, a continuación, haga clic en Siguiente.

  4. En la página Clientes admitidos , seleccione OAuth2 y, a continuación, haga clic en Siguiente.

  5. En la lista de usuarios de confianza de la página Persona de confianza, seleccione el usuario de confianza de la aplicación que desea publicar y haga clic en Siguiente.

  6. En la página Configuración de publicación, haga lo siguiente y, a continuación, haga clic en Siguiente:

    • En el cuadro Nombre, escriba un nombre descriptivo para la aplicación.

      Este nombre se usa únicamente en la lista de aplicaciones publicadas de la Consola de administración de acceso remoto.

    • En el cuadro Dirección URL externa, indique la dirección URL externa de esta aplicación; por ejemplo, https://server1.contoso.com/app1/.

    • En la lista Certificado externo, seleccione un certificado cuyo sujeto abarque la dirección URL externa.

      Para asegurarse de que los usuarios puedan acceder a la aplicación, incluso si no escriben HTTPS en la dirección URL, seleccione el cuadro Habilitar redireccionamiento HTTP a HTTPS .

    • En el cuadro Dirección URL del servidor back-end, indique la dirección URL del servidor back-end. Tenga en cuenta que este valor se escribe automáticamente al escribir la dirección URL externa y solo debe cambiarlo si la dirección URL del servidor back-end es diferente; por ejemplo, https://sp/app1/.

      Nota

      Los Application Proxy web pueden traducir nombres de host en direcciones URL, pero no pueden traducir nombres de ruta de acceso. Por lo tanto, se pueden especificar otros nombres de host, pero el nombre de la ruta de acceso debe ser el mismo. Por ejemplo, puede escribir una dirección URL externa de y una dirección URL del https://apps.contoso.com/app1/ servidor back-end de . https://app-server/app1/. Sin embargo, no puede escribir una dirección URL externa de y una dirección URL del https://apps.contoso.com/app1/ servidor back-end de https://apps.contoso.com/internal-app1/.

  7. En la página Confirmación, revise la configuración y, a continuación, haga clic en Publicar. Puede copiar el comando de PowerShell para configurar más aplicaciones publicadas.

  8. En la página Resultados, asegúrese de que la aplicación se publicó correctamente y, a continuación, haga clic en Cerrar.

Escriba cada cmdlet en una sola línea, aunque aquí pueden aparecer con saltos de línea entre varias líneas aquí debido a restricciones de formato.

Para establecer la dirección URL de autenticación de OAuth para una dirección del servidor de federación de fs.contoso.com y una ruta de acceso url de /adfs/oauth2/:

Set-WebApplicationProxyConfiguration -OAuthAuthenticationURL 'https://fs.contoso.com/adfs/oauth2/'

Para publicar la aplicación:

Add-WebApplicationProxyApplication
    -BackendServerURL 'https://storeapp.contoso.com/'
    -ExternalCertificateThumbprint '1a2b3c4d5e6f1a2b3c4d5e6f1a2b3c4d5e6f1a2b'
    -ExternalURL 'https://storeapp.contoso.com/'
    -Name 'Microsoft Store app Server'
    -ExternalPreAuthentication ADFS
    -ADFSRelyingPartyName 'Store_app_Relying_Party'
    -UseOAuthAuthentication