La información en este capítulo se relaciona con los cambios en el archivo de configuración web.config para el sitio Web Printing.

Nota

Si no modifica la ruta de acceso en el instalador, la ubicación predeterminada para el archivo web.config es c:\Program Files\NiceLabel\NiceLabel Web Printing\Web\.

Autenticación basada en token

Cuando la aplicación web existente intenta utilizar el motor de búsqueda dentro de Web Printing, primero debe autenticarse a sí misma. La autenticación basada en token no necesita ningún dato de usuario expuesto en el URL.

La aplicación web existente demanda un servicio de autenticación, y envía el nombre de usuario y la contraseña como parámetros una sola vez. La respuesta es un token de tiempo limitado. El token de tiempo limitado se utiliza en el parámetro de la consulta cuando se comunica con Web Printing, de modo que se conoce qué archivo de solución (.NSLN) debe utilizarse.

El Web Service IntegrationService es compatible con el método GetLoginToken. Este método acepta nombre de usuario y contraseña como parámetros de entrada y proporciona token (GUID) como parámetro de salida.

Servicio Web

http://server/PowerFormsWeb/AuthenticationService/IntegrationService.asmx

Método

cadena pública GetLoginToken(nombre de usuario de cadena, contraseña de cadena)

Flujo de trabajo que debe implementarse en su extremo:

  1. La aplicación de llamada envía los datos de inicio de sesión (nombre de usuario, contraseña) llamando a un servicio web.

  2. El servicio web recuerda la información.

  3. El servicio web devuelve el token a la aplicación de llamada, lo cual identifica la sesión actual.

  4. La aplicación de llamada carga la solución haciendo referencia al token devuelto (GUID) que está disponible en el URL de la cadena de consulta:

    http://server/PowerFormsWeb/default.aspx?logintoken=1351ED23-9C74-411C-C887-40234952A116

    Aquí es donde deberá reemplazar server con el nombre de su servidor, y PowerFormsWeb con la ubicación exacta en la que instaló Web Printing, y 1351ED23-9C74-411C-C887-40234952A116 con el token que recibió del servicio de autenticación.

  5. Web Printing proporciona el archivo de solución que se asignó al nombre de usuario provisto.

  6. Después del inicio de sesión exitoso, se invalida el token y no puede volver a utilizarse.

Autenticación de formularios

Web Printing utiliza la autenticación del usuario nativo en forma predeterminada (autenticación de formularios). Este modo de autenticación utiliza los nombres de usuarios para los clientes web como se definen en el Control Center.

Después de abrir el sitio de Web Printing, el usuario debe proporcionar su nombre de usuario y contraseña. Ambos se verifican en comparación con la configuración del usuario de Web Printing en Control Center. Si la autenticación es satisfactoria, se abre la solución del usuario.

Si no desea mostrar la pantalla de inicio de sesión, puede forzar un usuario específico con los parámetros en la cadena de consulta de el URL. En este caso, el usuario ya inició sesión en otra aplicación que tenga el sitio de Web Printing incrustado. La aplicación existente proporcionará el nombre de usuario/contraseña del usuario en la cadena de consulta, como se muestra en el ejemplo siguiente.

El sitio Web Printing se abre utilizando el URL, como:

http://server/PowerFormsWeb/default.aspx?UserName=<username>&Password=<password>

donde <username> es el nombre del cliente web y <password> es una contraseña del mismo usuario como se define en el Control Center. Si existe el usuario, se abre la solución definida para la cuenta del usuario.

Con una instalación predeterminada del sitio Web Printing, la <password> es un texto sin formato. Para proteger la contraseña, puede habilitar el Estándar de cifrado avanzado (AES) y cifrar la contraseña de la cadena de consulta.

Para habilitar el cifrado de la contraseña, realice lo siguiente:

  1. Abra web.config en un editor de texto.

  2. Navegue a la sección <appSettings></appSettings> e incluya las dos claves siguientes:

    <configuration>
    <appSettings>
    <add key="PasswordKey" value="passwordkey" />
    </appSettings>
  3. Escriba los valores para los campos passwordkey (clave de contraseña) y paswordiv (vector de inicialización de contraseña). La longitud de la clave de contraseña tiene entre 16 y 32 caracteres, y la longitud del vector de inicialización tiene 16 caracteres.

  4. Los valores del campo passwordkey y paswordiv descifran la contraseña cifrada proporcionada en la cadena de búsqueda. Si la contraseña descifrada coincide con el nombre de usuario y la contraseña como se define para el usuario de Web Printing en el Control Center, se carga la solución asociada.

Con fines de prueba para el cifrado y el descifrado de la contraseña, puede utilizar la aplicación PasswordGenerator.exe, que puede hallar en el DVD de NiceLabel en la carpeta \Utilidad\Cifrador de contraseñas AES.

Por ejemplo, la prueba del usuario utiliza la contraseña muydifícildeadivinar. El URL debe formarse como

http://<server>/PowerFormsWeb/default.aspx?UserName=test&Password=uEe6X5Cy9Xjhad2PmKlowg%3d%3d

Nota

Los parámetros de passwordkey y passwordiv definen el algoritmo de cifrado actual para la contraseña. Si se utilizan diferentes combinaciones de estos parámetros, el resultado será una contraseña cifrada diferente.

Autenticación de Windows

Cuando el sitio Web Printing está incrustado en una página web diferente, es probable que ya se haya realizado la autenticación del usuario en esa aplicación web utilizando la autenticación de Windows. En dichos casos, la conducta predeterminada del sitio Web Printing puede cambiarse de modo que herede la autenticación provista anteriormente.

Cuando un usuario accede al sitio Web Printing desde adentro de la empresa (dentro del dominio), se puede utilizar la autenticación de Windows. En este caso, la cuenta de Windows identifica al usuario automáticamente, y no se necesita volver a iniciar sesión.

Para cambiar el modo de autenticación en su sistema, modifique los siguientes parámetros:

  1. Cambie system.web/authentication en el archivo web.config. El archivo web.config está ubicado en la carpeta raíz del sitio web. Esta acción establece la autenticación al modo correcto.

    • Configurar antes de cambiar: <authentication mode="Forms"/>

    • Configurar después de cambiar: <authentication mode="Windows"/>

  2. Cambie system.web/authentication en el archivo web.config. El archivo web.config está ubicado en la carpeta raíz del sitio web. Esto permite que todos los usuarios accedan a este sitio.

    • Configurar antes de cambiar: <deny users="?"/>

    • Configurar después de cambiar: <allow users="*" />

  3. Abra el administrador IIS y navegue hasta Sites/Default Web Site/PowerFormsWeb. Abra el Editor de configuración y siga estos pasos:

    Paso 1: Seleccione Desbloquear sección para:

    • Conjunto de sección: system.webServer/security/authentication/windowsAuthentication.

    • Conjunto De: ApplicationHost.Config <location path='Default Web Site/PowerFormsWeb' />.

    Paso 2: Cambie la opción Habilitada de Falso a Verdadero para:

    • Conjunto de sección: system.webServer/security/authentication/windowsAuthentication.

    • Conjunto De: Default Web Site/PowerFormsWeb Web.Config.

    WPIG20193_windows_authentication_IIS_config.png

Cuando se cambia la habilitación de la autenticación de Windows en Web Printing, ya no se realiza la autenticación del usuario dentro de Web Printing, sino que es responsabilidad del servidor web (IIS).

Asimismo, las opciones de inicio de sesión se pueden configurar utilizando las propiedades de Internet para la Zona de Intranet local:

  • Opciones de inicio de sesión automáticas: El explorador enviará las credenciales del usuario registrado actualmente al servidor web. El usuario inicia sesión automáticamente.

  • Solicitar nombre de usuario y contraseña: El navegador no envía las credenciales del usuario actualmente conectado. El usuario debe volver a ingresar el nombre de usuario y la contraseña.

windows authentication-browser settngs.png