Le informazioni di questo capitolo si riferiscono alle modifiche al file di configurazione web.config del sito Web Printing.
Nota
Se il percorso nel programma di installazione non viene modificato, la posizione predefinita del file web.config è c:\Program Files\NiceLabel\NiceLabel Web Printing\Web\
.
Quando l'applicazione Web esistente tenta di usare il motore di stampa all'interno di Web Printing, prima deve autenticarsi. L'autenticazione basata su token non richiede l'indicazione di alcun dato dell'utente nell'URL.
L'applicazione Web esistente richiede un servizio di autenticazione, con trasmissione del nome utente e della password come parametri una sola volta. La risposta è un token limitato nel tempo. Il token viene utilizzato nel parametro della query nel corso della comunicazione con Web Printing, in modo da stabilire quale file di soluzione (.NSLN) va usato.
L’IntegrationService
di Web Service supporta il metodo GetLoginToken
. Questo metodo accetta nome utente e password come parametri in entrata e fornisce il token (GUID) come parametro in uscita.
Servizio web |
http://server/PowerFormsWeb/AuthenticationService/IntegrationService.asmx |
Metodo |
|
Workflow che deve essere implementato dall'utente:
-
L'applicazione chiamante trasmette i dati di accesso (nome utente, password) richiamando il servizio Web.
-
Il servizio Web ricorda le informazioni.
-
Il servizio Web riporta il token all'applicazione chiamante, identificando la sessione corrente.
-
L'applicazione chiamante carica la soluzione facendo riferimento al token restituito (GUID) disponibile nella stringa di query dell’URL:
http://server/PowerFormsWeb/default.aspx?logintoken=1351ED23-9C74-411C-C887-40234952A116
Qui è necessario sostituire
server
con il nome del server ePowerFormsWeb
con la posizione esatta in cui è stato installato Web Printing e1351ED23-9C74-411C-C887-40234952A116
con il token ricevuto dal servizio di autenticazione. -
Web Printing fornisce il file della soluzione assegnato al nome utente specificato.
-
Dopo aver eseguito correttamente l'accesso, il token viene invalidato e non può essere riutilizzato.
Per impostazione predefinita, il sito Web Printing utilizza l'autenticazione utente nativa (autenticazione di moduli). Questa modalità di autenticazione utilizza i nomi utente per i client Web definiti in Control Center.
Dopo l'apertura del sito Web Printing, all'utente vengono richiesti il nome utente e la password. Entrambi sono verificati rispetto alla configurazione dell'utente Web Printing in Control Center. Se l'autenticazione riesce, si apre la soluzione dell'utente.
Se si desidera evitare di visualizzare la schermata Accesso è possibile forzare un utente specifico usando i parametri della stringa di query nell'URL. In questo caso, l'utente ha già eseguito l'accesso a qualche altra applicazione nella quale è incorporato il sito di Web Printing. L'applicazione esistente fornirà il nome utente o la password nella stringa di query, come mostrato nell'esempio seguente.
Il sito Web Printing si apre mediante l'URL, ad esempio:
http://server/PowerFormsWeb/default.aspx?UserName=<username>&Password=<password>
Dove <username>
è il nome del client Web e <password>
è una password dello stesso account utente definito in Control Center. Se l'utente presente nell'elenco esiste, si apre la soluzione definita per l'account utente.
Con l'installazione predefinita del sito Web Printing, <password>
viene formattato come testo normale. Per proteggere la password è possibile attivare l'Advanced Encryption Standard (AES) e crittografare la password nella stringa di query.
Per attivare la crittografia della password, procedere come segue:
-
Aprire
web.config
in un editor di testo. -
Navigare fino alla sezione
<appSettings></appSettings>
e inserire le due seguenti chiavi:<configuration> <appSettings> <add key="PasswordKey" value="passwordkey" /> </appSettings>
-
Immettere i valori per i campi
passwordkey
(chiave password) epaswordiv
(vettore inizializzazione password). La lunghezza della chiave della password va da 16 a 32 caratteri, mentre quella del vettore di inizializzazione deve essere impostata su 16 caratteri. -
I valori di campo
passwordkey
epaswordiv
decifrano la password criptata fornita nella stringa di query. Se la password decifrata corrisponde al nome utente e alla password definiti per l'utente di Web Printing in Control Center, verrà caricata la soluzione associata.
Per eseguire i test relativi alla crittografia e alla decrittografia della password è possibile usare l'applicazione PasswordGenerator.exe
disponibile sul DVD di NiceLabel nella cartella \Utility\AES Password Encrypter
.
Ad esempio, il test dell'utente utilizza la password veryhardtoguess
. L'URL sarebbe formato da:
http://<server>/PowerFormsWeb/default.aspx?UserName=test&Password=uEe6X5Cy9Xjhad2PmKlowg%3d%3d
Nota
I parametri passwordkey
e passwordiv
definiscono l'algoritmo di crittografia effettivo per la password. Diverse combinazioni di questi parametri determinano password decifrate in modo diverso.
Se il sito Web Printing è incorporato in una pagina Web diversa, nella maggiore parte dei casi l'autenticazione dell'utente è già stata eseguita nella relativa applicazione Web mediante l'autenticazione Windows. In questi casi, il comportamento predefinito del sito Web Printing può essere modificato in modo che erediti l'autenticazione fornita in precedenza.
Quando un utente accede al sito di Web Printing dall'interno dell'azienda (all'interno del dominio), è possibile usare l'autenticazione Windows. In questo caso, l'utente è identificato automaticamente dal proprio account Windows e non è necessario effettuare alcun accesso aggiuntivo.
Per modificare la modalità di autenticazione sul sistema, modificare le impostazioni seguenti:
-
Modificare
system.web/authentication
nel fileweb.config
. Il fileweb.config
si trova nella cartella principale del sito Web. Questa azione imposta l’autenticazione sulla modalità corretta.-
Impostazione prima della modifica:
<authentication mode="Forms"/>
-
Impostazione dopo la modifica:
<authentication mode="Windows"/>
-
-
Modificare
system.web/authorization
nel fileweb.config
. Il fileweb.config
si trova nella cartella principale del sito Web. Ciò consente a tutti gli utenti di accedere a questo sito.-
Impostazione prima della modifica:
<deny users="?"/>
-
Impostazione dopo la modifica:
<allow users="*" />
-
-
Aprire IIS Manager e passare a
Sites/Default Web Site/PowerFormsWeb
. Aprire Configuration Editor e completare i seguenti passaggi:Passaggio 1: Selezionare Unlock Section per:
-
Section:
system.webServer/security/authentication/windowsAuthentication
. -
From:
ApplicationHost.Config <location path='Default Web Site/PowerFormsWeb' />
.
Passaggio 2: modificare l’opzione Enabled passando da False a True per:
-
Section:
system.webServer/security/authentication/windowsAuthentication
. -
From:
Default Web Site/PowerFormsWeb Web.Config
.
-
Dopo aver attivato l'autenticazione di Windows in Web Printing, l'autenticazione dell'utente non viene più eseguita in Web Printing, ma nel server Web (IIS).
Inoltre, le opzioni di accesso possono essere configurate anche mediante le proprietà Internet della Local Intranet Zone:
-
Opzioni di accesso automatico: il browser inoltra al server Web le credenziali dell'utente connesso correntemente. L'utente viene connesso automaticamente.
-
Richiedi nome utente e password: il browser non inoltra le credenziali dell’utente connesso correntemente. L'utente deve reimmettere il nome utente e la password.