Nella pre-autenticazione, WebFOCUS confida che l'autenticazione è già avvenuta e che le informazioni di identità dell'utente sono state inoltrate a WebFOCUS, tramite uno dei metodi descritti nei seguenti argomenti. In questa configurazione, WebFOCUS non visualizza una pagina di accesso agli utenti. Certe funzioni WebFOCUS, come l'accesso anonimo e l'abilità per gli utenti di modificare le proprie parole d'ordine, dovrebbero essere disabilitate.
La pre-autenticazione offre vari benefici, come l'esperienza dell'accesso singolo (SSO) per utenti e l'autenticazione centralizzata per amministratori, eliminando il bisogno di sincronizzare password tra WebFOCUS e un'altra origine. A seconda del metodo di pre-autenticazione scelto, potrebbe essere necessario eseguire ulteriori passaggi per assicurarsi che la configurazione della pre-autenticazione non sia compromessa. Per esempio, se l'ID utente pre-autenticato verrà inoltrato in una intestazione HTTP, risulta necessario eseguire dei passaggi per assicurarsi che il valore di questa intestazione non venga compromesso.
Se un utente esegue l'accesso da una zona di sicurezza configurata per la pre-autenticazione, WebFOCUS in modo automatico:
Per i portali, o disabilitare il link Disconnetti nella propria barra del menu o impostare un valore appropriato per l'impostazione IBI_Signout_Redirect_URL, per evitare di causare un loop infinito di tentativi di accesso non riusciti.
Per esempio, se si sta usando un sistema di gestione di accesso web o OpenID, impostare IBI_Signout_Redirect_URL al valore specificato dalla documentazione del fornitore. Se si sta usando l'autenticazione di Windows, impostare il valore su un URL completamente qualificato al di fuori dell'applicazione web di WebFOCUS. Per ulteriori informazioni sull'impostazione IBI_Signout_Redirect_URL, consultare Impostazioni protezione.
Come: |
È possibile configurare WebFOCUS per pre-autenticare gli utenti di Microsoft Windows, autenticati da Microsoft Internet Information Services (IIS) con le proprie opzioni di autenticazione di base o con l'autenticazione di Windows. Questa configurazione richiede la configurazione di un plug-in che abilita IIS per inoltrare in modo protetto le identità al container dell'applicazione web Java che ospita WebFOCUS. Ulteriori informazioni per IIS con Tomcat e IIS con la configurazione WebSphere sono incluse nella seguente procedura.
Alcuni problemi da poter affrontare con l'autenticazione Windows includono:
Prima di iniziare, eseguire i seguenti passaggi se non già effettuati:
Si consiglia inoltre di eseguire il backup del file securitysettings.xml prima di modificarlo.
Per ulteriori informazioni sulla creazione di un account dell'amministratore WebFOCUS, consultare Come creare un account amministratore WebFOCUS per le origini esterne. Per ulteriori informazioni sull'abilitazione della zona alternativa, consultare Come abilitare la zona alternativa. Per ulteriori informazioni sull'abilitazione dell'accesso del superuser, consultare Come abilitare l'accesso dell'utente con privilegi.
<!-- Define an AJP 1.3 Connector on port 8009 --> <Connector port="8009" protocol="AJP/1.3" tomcatAuthentication="false" redirectPort="8443" />
Fare clic su Salva e uscire dalla console di gestione.
Per ulteriori informazioni sull'impostazione IBI_Signout_Redirect_URL, consultare Impostazioni protezione.
Se si abilita la zona alternata, come consigliato, è ora possibile accedere a WebFOCUS usando l'autenticazione interna, se ci si trova sul computer WebFOCUS. L'URL è http://localhost/ibi_apps.
In alternativa, la pre-autenticazione consente di accedere a WebFOCUS, eseguendo l'accesso a http://machinename/ibi_apps da qualsiasi postazione di lavoro.
Nota: Se il browser web non è configurato per usare automaticamente l'autenticazione di Windows con il dominio, il browser richiederà le credeziali agli utenti, quando si esegue l'accesso usando http://machinename.domain.com/ibi_apps.
Come: |
I sistemi di gestione dell'accesso web, inclusi Oracle Access Manager (formerly Oblix), and IBM Tivoli Access Manager WebSEAL, possono essere usati per abilitare l'accesso singolo (SSO) con WebFOCUS. Questi sistemi rilevano le richieste a WebFOCUS, assicurando che l'utente sia autenticato e autorizzato ad accedere a WebFOCUS, quindi a fornire una intestazione HTTP, in cui WebFOCUS è in grado di trovare l'ID utente pre-autenticato. Poiché questi sistemi rilevano e popolano l'intestazione HTTP su ogni richiesta, WebFOCUS può fidarsi che l'ID utente trovato nell'intestazione HTTP sia valido.
Prima di iniziare, eseguire i seguenti passaggi se non già effettuati:
Si consiglia inoltre di eseguire il backup del file securitysettings.xml prima di modificarlo.
Per ulteriori informazioni sulla creazione di un account dell'amministratore WebFOCUS, consultare Come creare un account amministratore WebFOCUS per le origini esterne. Per ulteriori informazioni sull'abilitazione della zona alternativa, consultare Come abilitare la zona alternativa. Per ulteriori informazioni sull'abilitazione dell'accesso del superuser, consultare Come abilitare l'accesso dell'utente con privilegi.
Nota: Alcune configurazioni server web cambiano i nomi dell'intestazione HTTP. Per esempio, i simboli di sottolineatura (_) devono essere sostituiti con trattini (-) o le lettere cambiano da maisucole a minuscole.
Per ulteriori informazioni sull'impostazione IBI_Signout_Redirect_URL, consultare Impostazioni protezione.
Per CA SiteMinder, il valore è di solito SM_USER. Per IBM Tivoli Access Manager WebSEAL, il valore è di solito iv-user. Per Oracle Access Manager, non è presente un valore predefinito. Per ulteriori informazioni, consultare il proprio amministratore Oracle Access Manager.
Come: |
I container Java, come Apache Tomcat, IBM WebSphere e Oracle WebLogic sono in grado di autenticare utenti per conto di WebFOCUS. Il container Java usa la chiamata getRemoteUser() per fornire ID a WebFOCUS.
Prima di iniziare, eseguire i seguenti passaggi se non già effettuati:
Si consiglia inoltre di eseguire il backup del file securitysettings.xml prima di modificarlo.
Per ulteriori informazioni sulla creazione di un account dell'amministratore WebFOCUS, consultare Come creare un account amministratore WebFOCUS per le origini esterne. Per ulteriori informazioni sull'abilitazione della zona alternativa, consultare Come abilitare la zona alternativa. Per ulteriori informazioni sull'abilitazione dell'accesso del superuser, consultare Come abilitare l'accesso dell'utente con privilegi.
Per ulteriori informazioni sull'impostazione IBI_Signout_Redirect_URL, consultare Impostazioni protezione.
Come: |
Un fornitore OpenID è in grado di autenticare utenti per WebFOCUS. I fornitori supportati includono account Google e Yahoo®, ma è anche possibile usare un fornitore OpenID presente a livello internazionale. WebFOCUS supporta solo un fornitore OpenID per installazione. Assicurarsi di configurare l'URL di disconnessione appropriato.
Per ulteriori informazioni sulla configurazione di OpenID, consultare la documentazione del fornitore OpenID.
Prima di iniziare, eseguire i seguenti passaggi se non già effettuati:
Si consiglia inoltre di eseguire il backup del file securitysettings.xml prima di modificarlo.
Per ulteriori informazioni sulla creazione di un account dell'amministratore WebFOCUS, consultare Come creare un account amministratore WebFOCUS per le origini esterne. Per ulteriori informazioni sull'abilitazione della zona alternativa, consultare Come abilitare la zona alternativa. Per ulteriori informazioni sull'abilitazione dell'accesso del superuser, consultare Come abilitare l'accesso dell'utente con privilegi.
Per impostazione predefinita, claimedIdentityFieldValue è impostata all'URL appropriato per Google Account. Il valore predefinito per attributeNameForAccountID è email.
Per esempio, per Google Account, immettere:
https://www.google.com/accounts/Logout
Per ulteriori informazioni sull'impostazione IBI_Signout_Redirect_URL, consultare Impostazioni protezione. Per ulteriori informazioni sugli indirizzi di disconnessione per OpenID, consultare la documentazione fornitore OpenID.
WebFOCUS offre accesso singolo sul supporto di SAML 2.0. Per ulteriori informazioni sulla configurazione di SAML con CA SiteMinder or CA CloudMinder, consultare:
https://techsupport.informationbuilders.com/tech/wbf/wbf_rln_saml_2.html
Come: |
È possibile configurare WebFOCUS per usare il servizio di autenticazione centrale (CAS) per la pre-autenticazione. CAS consente ai client, come applicazioni web, di autenticare utenti senza avere accesso alle credenziali di sicurezza utente. Invece, il client si auto autentica al server CAS, che quindi risulta in un ticket di sicurezza al client, per convalidare che quella connessione risulti sicura. Il client convalida il ticket, fornendo il ticket e il proprio identificatore di servizio al server CAS, il quale restituisce informazioni protette se un utente individuale è stato autenticato.
Se il server CAS usa un certificato autofirmato, in molti casi, sarà necessario aggiungere il certificato di firma dell'autorità ai certificati radice protetti per JVM usato da WebFOCUS.
Prima di iniziare, eseguire i seguenti passaggi se non già effettuati:
Si consiglia inoltre di eseguire il backup del file securitysettings.xml prima di modificarlo.
Per ulteriori informazioni sulla creazione di un account dell'amministratore WebFOCUS, consultare Come creare un account amministratore WebFOCUS per le origini esterne. Per ulteriori informazioni sull'abilitazione della zona alternativa, consultare Come abilitare la zona alternativa. Per ulteriori informazioni sull'abilitazione dell'accesso del superuser, consultare Come abilitare l'accesso dell'utente con privilegi.
Specifica il protocollo server CAS, porta e accesso URL.
Specifica il protocollo, porta e contesto WebFOCUS.
Specifica il protocollo, porta e contesto server CAS.
Nota: Le impostazioni sendRenew, chiave e ticketValidatorClassName non devono essere modificate.
Quando gli utenti si disconnettono a WebFOCUS con questo URL, termina sia la sessione WebFOCUS che CAS.
Per ulteriori informazioni sull'impostazione IBI_Signout_Redirect_URL, consultare Impostazioni protezione. Per ulteriori informazioni sugli indirizzi di disconnessione per CAS, consultare la documentazione server CAS.
Se si sta usando un certificato, firmato da una autorità di certificato protetto, WebFOCUS è ora configurato per usare l'autenticazione CAS. Se si sta usando un certificato autofirmato, sarà necessario aggiungere il certificato di firma dell'autorità ai certificati radice protetti per JVM usato da WebFOCUS. Per ulteriori informazioni, consultare Come aggiungere un certificato autofirmato al CAS Certificate Store .
Il seguente codice è un esempio su come alterare la sezione casPreference nel file securitysettings.xml per implementare la pre-autenticazione per CAS.
<bean id="casPreference" class="com.ibi.webapp.security.config.WFCasPreference"> <property name="loginUrl" value="https://CASServer:port/cas/login"/> <property name="serviceUrl" value="http://WebFOCUSServer:port/ibi_context/"/> <property name="sendRenew" value="false"/> <property name="key" value=""/> <property name="casServerUrlPrefix" value="https://CASServer:port/cas"/> <property name="ticketValidatorClassName" value=""/> </bean>
dove:
Il server e la porta CAS.
Il server, la porta e la directory radice di contesto WebFOCUS.
Se si sta usando un certificato autofirmato, sarà necessario aggiungere il certificato alla radice protetta, i certificati per il JVM usato da WebFOCUS.
Nota: Questa attività non è necessaria se si sta usando un certificato firmato da una autorità di certificato protetta.
..\..\..\bin\keytool -import -alias youralias -keystore cacerts -file path\to\youralias.crt
dove:
L'alias assegnato al proprio certificato.
File certificato.
Errori di convalida CAS potrebbero avvenire se si sta usando un certificato autofirmato non aggiunto al magazzino di certificati affidabili. In questi casi, si riceverà un errore simile al seguente:
[YYYY-MM-DD hh:mm:ss,sss] ERROR
org.jasig.cas.client.validation.Cas20ServiceTicketValidator
http-apr-8080-exec-2 - javax.net.ssl.SSLHandshakeException:
sun.security.validator.ValidatorException: PKIX path building failed:
sun.security.provider.certpath.SunCertPathBuilderException:
unable to find valid certification path to requested target
javax.net.ssl.SSLHandshakeException:
sun.security.validator.ValidatorException: PKIX path building failed:
sun.security.provider.certpath.SunCertPathBuilderException:
unable to find valid certification path to requested target
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Unknown Source)
.
.
.
... 60 more
Caused by: sun.security.provider.certpath.SunCertPathBuilderException:
unable to find valid certification path to requested target
at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(Unknown Source)
at java.security.cert.CertPathBuilder.build(Unknown Source)
... 66 more
È possibile integrare WebFOCUS con altre applicazioni, per fornire agli utenti una esperienza di accesso singolo (SSO). Per esempio, gli utenti sono in grado di eseguire l'accesso ad una applicazione web esistente con credenziali convalidate dall'applicazione. Se gli utenti fanno clic su pulsanti o collegamenti che li collegano ad un portale WebFOCUS, si potrebbe voler consentire agli utenti di eseguire l'accesso automatico a WebFOCUS, piuttosto che richiedere di fornire di nuovo le password.
Il miglior modo per eseguire questa integrazione è quello tramite lo sviluppo di un filtro servlet Java personalizzato, dentro l'applicazione web di WebFOCUS. Il servizio di supporto clienti è in grado di sviluppare una soluzione personalizzata, basata su IBIServletFilter. In alternativa, se gli utenti accedono a WebFOCUS tramite ISS, è possibile installare un modulo HTTP usando ASP.NET in IIS.
Le soluzioni personalizzate di solito seguono uno dei seguenti approcci:
L'utente inizia una connessione a WebFOCUS facendo clic su un collegamento, pulsante o scheda nell'applicazione web esistente. L'applicazione web crea una stringa casuale, o token, e memorizza l'ID utente in un database che WebFOCUS è in grado di accedere. Questo token si inoltra a WebFOCUS con la richiesta di connessione da parte di reindirizzamento HTTP 302, avviata dal server di applicazione o da una richiesta JavaScript asincrono, avviata dall'applicazione nel browser web.
Quando IBIServletFilter determina l'assenza di una sessione WebFOCUS, associata con questa richiesta SSO, il servlet esegue una richiesta ODBC al database condiviso per recuperare l'ID utente associato con il token. La riga di elimina dal database per impedire al token di riusarla. L'ID utente è impostato come valore di una intestazione HTTP personalizzata, che viene inoltrato a WebFOCUS nella pre-autenticazione.
L'utente inizia una connessione a WebFOCUS facendo clic su un collegamento, pulsante o scheda nell'applicazione web esistente. L'applicazione web crea una hash dell'ID utente che integra un segreto condiviso con IBIServletFilter. L'hash quindi si inoltra a WebFOCUS. IBIServletFilter genera una hash dell'ID utente usando lo stesso segreto e algoritmo e lo paragona all'hash inoltrata nella richiesta. Se c'è corrispondenza, l'ID utente risulta di fiducia. Se non c'è corrispondenza, la connessione viene rifiutata.
L'applicazione web potrebbe essere in grado di generare una asserzione SAML contenente l'ID utente e altre informazioni. È possibile modificare IBIServletFilter per convalidare l'asserzione SAML inoltrata dall'applicazione ed impostare una intestazione HTTP con l'ID utente.
Nota: Inoltrando semplicemente l'ID utente in una intestazione o cookie HTTP non crea una implementazione SSO protetta. È inoltre necessario fornire alcuni mezzi per assicurarsi che l'ID utente sia valido.
Per esempio, se si inoltra semplicemente l'ID utente in una intestazione ID, chiamato SSO_USER, un utente non autorizzato potrebbe usare un plug-in del browser web, per generare quell'intestazione HTTP e popolarla con qualsiasi ID utente valido. WebFOCUS non è in grado di sapere che l'intestazione HTTP è stata creata da un processo non autorizzato. L'uso di token di sicurezza, segreti condivisi o integrazione SAML fornisce la convalida necessaria per impedire questa situazione.
Per ulteriori informazioni su una soluzione SSO personalizzata, contattare il servizio di supporto clienti.
In questa sezione: Come: |
United States Department of Defense emette una smart card chiamata Common Access Card (CAC) per l'identificazione di tutti i dipendenti e appaltatori del Department of Defense. Quando usate con la configurazione appropriata di lettura carta su un computer dell'utente finale, con un server web configurato per richiedere certificati lato-client, seguendo gli standard di Public Key Infrastructure (PKI), è possibile usare queste carte per eseguire l'autenticazione basata sul certificato.
WebFOCUS è in grado di recuperare gli attributi del nome comune o nome principale utente dal certificato utente fornito e di usare l'attributo per popolare la variabile REMOTE_USER. Si fornisce un accesso protetto a WebFOCUS usando CAC.
È necessario configurare il server web per richiedere agli utenti i certificati lato client, usando PKI. Il software di lettura carte ActivIdentity™ deve essere installato correttamente su computer di utenti finali, prima di configurare WebFOCUS Client per convalidare il certificato del cliente. Per informazioni sull'impostazione del software ActivIdentity, consultare la documentazione fornita dal dipartimento della difesa.
LA PROCEDURA Prima di iniziare, eseguire i seguenti passaggi se non già effettuati:
L'ID utente dell'account dell'amministratore WebFOCUS deve essere il valore dell'attributo del certificato scelto per l'impostazione IBI_PKI_Userid_Source.
Per esempio, se l'amministratore WebFOCUS ha un nome comune (CN) di Joe.Smith.1122334455 e IBI_PKI_Userid_Source è impostato su cn, l'ID utente WebFOCUS deve essere Joe.Smith.1122334455. Se l'amministratore WebFOCUS ha un nome principale utente (UPN) di 1122334455@mil e IBI_PKI_Userid_Source è impostato su upn, l'ID utente WebFOCUS deve essere 1122334455@mil.
Per ulteriori informazioni sulla creazione di un account dell'amministratore WebFOCUS, consultare Come creare un account amministratore WebFOCUS per le origini esterne. Per ulteriori informazioni sull'abilitazione della zona alternativa, consultare Come abilitare la zona alternativa. Per ulteriori informazioni sull'abilitazione dell'accesso del superuser, consultare Come abilitare l'accesso dell'utente con privilegi.
Gli attributi sono attivati appena salvati. Non risulta necessario reciclare il server di applicazione.
Consente di attivare il filtro PKI che estrarrà l'attributo specifico nell'impostazione IBI_PKI_Userid_Source per popolare REMOTE_USER. Managed Reporting e ReportCaster devono essere configurati separatamente per utilizzare la variabile REMOTE_USER per effettuare l'accesso. Il valore predefinito è False. Per ulteriori informazioni, consultare Configurazione della pre-autenticazione.
Specifica l'attributo al certificato da usare per popolare l'ID utente specificato da REMOTE_USER. I valori possibili sono:
cn. Il nome comune per il certificato. Per esempio, Joe.Smith.1122334455.
soggetto. L'attributo soggetto per il certificato. Questo è il valore predefinito.
upn. L'attributo userPrincipalName dalla sezione Nome alternativo soggetto del certificato. Per esempio, 1122334455@mil.
A causa del modo in cui UPN è codificato, è necessario avere una copia della libreria Bouncy Castle Java Cryptography all'interno del percorso classi. È possibile scaricarla dal sito web Bouncy Castle in http://www.bouncycastle.org/java.html.
Consente di specificare un elenco di indirizzi IP, separati da punti e virgola (;), che sarà in grado di passare il filtro PKI, anche con l'assenza di un certificato client valido nella richiesta. L'indirizzo IP del server di distribuzione di ReportCaster deve essere inserito in questo elenco per consentire al server di distribuzione di recuperare i contenuti di WebFOCUS. Un elenco di esempio potrebbe avere questo aspetto:
127.0.0.1;127.0.0.2
Se un indirizzo IP non è specificato qui e non è stato fornito un certificato client, il filtro PKI restituirà un errore 403 non consentito quando si tenta l'accesso.
WebFOCUS supporta l'accesso singolo (SSO) tra un browser web, WebFOCUS Client e WebFOCUS Reporting Server per Windows. Questo include il supporto di impersonificazione sul Reporting Server, ovvero la capacità SSO può essere estesa tramite adattatori RDBMS che supporta connessioni protette, incluso Microsoft SQL Server. Questo argomento spiega come configurare l'ambiente SSO, che usa il supporto Kerberos nativo in Active Directory.
La capacità SSO richiede un dominio Active Directory in un livello funzionale Windows 2000 o superiore:
user_ID@domain.com
dove:
ID utente appropriato.
Un dominio e estensione disponibili.
Suffisso Dominio. In via generale, Kerberos sospende il dominio Windows dell'utente all'ID utente inoltrato a WebFOCUS, nel formato utente ID@domain.com. Per impostazione predefinita, WebFOCUS estrae il dominio dal valore, lasciando solo l'ID utente. L'ID utente quindi si usa per completare il processo di accesso. Per accodare il dominio, cambiare l'impostazione stripDomainSuffix su false, nella sezione kerberosPreference del file securitysettings.xml.
Un amministratore di rete con i privilegi di gestione dominio deve eseguire i seguenti passaggi pre-installazione. Le immagini campione si applicano ad ambienti Windows 2003 o Windows 2008.
Nota: Se si sta eseguendo Windows 2008, potrebbe risultare necessario installare il seguente patch Microsoft per il proprio controller dominio, per supportare l'uso di un file keytab Kerberos:
Il valore specificato per Field 1 deve iniziare con HTTP in caratteri maiuscoli. Il formato è
HTTP/computername.domain.ext
dove:
Il nome dominio completamente qualificato del computer su cui si installerà WebFOCUS Client.
Il valore specificato per Field 2 diventa l'attributo sAMAccountName per l'account di servizio. Il formato è
http_computername
dove:
Il nome del computer su cui si installerà WebFOCUS Client.
La seguente immagine è un esempio della finestra di dialogo Nuovo Oggetto - Utente. Mostra campi impostati nel formato consigliato, indicante che WebFOCUS Client sarà installato su un computer chiamato wf-kerb.
Si visualizza una finestra di dialogo di conferma, indicante che l'utente sarà creato con le proprietà visualizzate.
Nota: La scheda Delega non si visualizza nella finestra di dialogo Proprietà. La scheda Delega non si visualizzerà fino all'esecuzione del comando ktpass, come descritto nel passaggio 5.
È necessario eseguire ktpass dalla linea di comando, sul controllore dominio su una linea. Sostituire i propri valori nell'esempio che segue. Mantenere una copia della sintassi di comando che si usa. Questo elemento potrebbe risultare necessario per risolvere problemi, legati agli obiettivi, in futuro.
Il formato del comando ktpass è
ktpass /out filename /mapuser user_ID /princ principal /crypto encryption/pass password /ptype KRB5_NT_PRINCIPAL
Dove:
Il nome che ktpass userà per creare il file keytab Kerberos. Il valore consigliato è http_computername.keytab.
Il valore sAMAccountName fornito nel passaggio 1.
Specificato concatenando il valore del nome di accesso utente, fornito nel passaggio 1 con @REALM, dove REALM rappresenta il settore Kerberos. Il settore Kerberos è di solito lo stesso del suffisso DNS di Active Directory, tranne che è in caratteri maiuscoli.
L'opzione di codifica che si userà quando si crea il file keytab. Si potrebbe voler scaricare gli strumenti di supporto Microsoft più recenti, per una versione del comando ktpass che supporta il valore consigliato di RC4-HMAC-NT.
Nota: Se uno qualsiasi dei computer sul proprio network si sta eseguendo su Windows 2008, Windows R2, Windows 7, o successivo, è necessario scegliere RC4-HMAC-NT per questi computer, per funzionare correttamente con Kerberos. Microsoft ha rimosso tutto il supporto per DES in versioni successive di Windows.
La password Windows associata con l'account di servizio, in un testo semplice.
Un comando ktpass formattato in modo corretto, che si applica agli esempi, forniti in precedenza in questa sezione, è:
C:\>ktpass /out http_wf-kerb.keytab /mapuser http_wf-kerb /princ HTTP/wf-kerb.ibi.com@IBI.COM /crypto RC4-HMAC-NT /pass password1 /ptype KRB5_NT_PRINCIPAL
Windows risponde con i seguenti messaggi:
Targeting domain controller: ibidca.ibi.com Successfully mapped HTTP/wf-kerb.ibi.com to http_wf-kerb. Key created. Output keytab to http_wf-kerb.keytab: Keytab version: 0x502 keysize 63 HTTP/wf-kerb.ibi.com@IBI.COM ptype 1 (KRB5_NT_PRINCIPAL) vno 2 etype 0x17 (RC4-HMAC) keylength 16 (0x0df97e7355555817c828671454137af0)
Il commando ktpass aggiunge un attributo chiamato servicePrincipalName (SPN) e modifica l'attributo userPrincipalName (UPN), come illustrato nella seguente immagine.
La scheda Delega ora si visualizza nella finestra di dialogo Proprietà, come illustrato nella seguente immagine.
Nota: Prima di eseguire il comando ktpass, la scheda Delega non si visualizza. Dopo aver eseguito il comando ktpass, l'opzione Delega risulta disponibile.
Se si stanno usando una o varie intestazioni host, è necessario eseguire i seguenti passaggi.
La seguente procedura presume che sono presenti due nomi intestazione host, ovvero wf-kerb1 e wf-kerb2.
Nota: Non creare record C.
ktpass /in filename /out filename /princ principal /crypto encryption/pass password /ptype KRB5_NT_PRINCIPAL
ktpass /in c:\keytab\http_wf-kerb.keytab /out c:\keytab\http_wf-kerb.keytab /princ HTTP/wf-kerb1.ibi.com@IBI.COM /crypto RC4-HMAC-NT /pass password1 /ptype KRB5_NT_PRINCIPAL
L'emissione risultante è:
Existing keytab: Keytab version: 0x502 keysize 63 HTTP/wf-kerb.ibi.com@IBI.COM ptype 1 (KRB5_NT_PRINCIPAL) vno 2 etype 0x17 (RC4-HMAC) keylength 16 (0x5835048ce94ad0564e29a924a03510ef) NOTE: creating a keytab but not mapping principal to any user. For the account to work within a Windows domain, the principal must be mapped to an account, either at the domain level (with /mapuser) or locally (using ksetup) If you intend to map HTTP/wf-kerb1.ibi.com@IBI.COM to an account through other means or don't need to map the user, this message can safely be ignored. WARNING: pType and account type do not match. This might cause problems. Key created. Output keytab to c:\keytab\http_wf-kerb.keytab: Keytab version: 0x502 keysize 63 HTTP/wf-kerb.ibi.com@IBI.COM ptype 1 (KRB5_NT_PRINCIPAL) vno 2 etype 0x17 (RC4-HMAC) keylength 16 (0x5835048ce94ad0564e29a924a03510ef) keysize 64 HTTP/wf-kerb1.ibi.com@IBI.COM ptype 1 (KRB5_NT_PRINCIPAL) vno 1 etype 0x17 (RC4-HMAC) keylength 16 (0x5835048ce94ad0564e29a924a03510ef)
ktpass /in c:\keytab\http_wf-kerb.keytab /out c:\keytab\http_wf-kerb.keytab /princ HTTP/wf-kerb2.ibi.com@IBI.COM /crypto RC4-HMAC-NT /pass password1 /ptype KRB5_NT_PRINCIPAL
L'emissione risultante è:
Existing keytab: Keytab version: 0x502 keysize 63 HTTP/wf-kerb.ibi.com@IBI.COM ptype 1 (KRB5_NT_PRINCIPAL) vno 2 etype 0x17 (RC4-HMAC) keylength 16 (0x5835048ce94ad0564e29a924a03510ef) keysize 64 HTTP/wf-kerb1.ibi.com@IBI.COM ptype 1 (KRB5_NT_PRINCIPAL) vno 1 etype 0x17 (RC4-HMAC) keylength 16 (0x5835048ce94ad0564e29a924a03510ef) NOTE: creating a keytab but not mapping principal to any user. For the account to work within a Windows domain, the principal must be mapped to an account, either at the domain level (with /mapuser) or locally (using ksetup) If you intend to map HTTP/wf-kerb2.ibi.com@IBI.COM to an account through other means or don't need to map the user, this message can safely be ignored. WARNING: pType and account type do not match. This might cause problems. Key created. Output keytab to c:\keytab\http_wf-kerb.keytab: Keytab version: 0x502 keysize 63 HTTP/wf-kerb.ibi.com@IBI.COM ptype 1 (KRB5_NT_PRINCIPAL) vno 2 etype 0x17 (RC4-HMAC) keylength 16 (0x5835048ce94ad0564e29a924a03510ef) keysize 64 HTTP/wf-kerb1.ibi.com@IBI.COM ptype 1 (KRB5_NT_PRINCIPAL) vno 1 etype 0x17 (RC4-HMAC) keylength 16 (0x5835048ce94ad0564e29a924a03510ef)
Nota: È possibile fare riferimento all'intestazione host in due modi, o usando il nome di dominio completamente qualificato, o usando il nome ad una parte. Per esempio, è possibile fare riferimento alla prima intestazione host come wf-kerb1.ibi.com (nome dominio completamente qualficato) o come wf-kerb1 (come ad una parte). Come risultato, quando si eseguono comando setspn in questo passaggio, ci sono quattro immissioni.
setspn -A HTTP/wf-kerb1.ibi.com ibi\http_wf-kerb
L'emissione risultante è:
Registering ServicePrincipalNames for CN=http_wf-kerb,OU=USERS,OU=DEVELOPMENT, O=BIPG,OU=COR,DC=ibi,DC=com HTTP/wf-kerb1.ibi.com Updated object
setspn -A HTTP/wf-kerb1 ibi\http_wf-kerb
L'emissione risultante è:
Registering ServicePrincipalNames for CN=http_wf-kerb,OU=USERS,OU=DEVELOPMENT, O=BIPG,OU=COR,DC=ibi,DC=com HTTP/wf-kerb1 Updated object
setspn -A HTTP/wf-kerb2.ibi.com ibi\http_wf-kerb
L'emissione risultante è:
Registering ServicePrincipalNames for CN=http_wf-kerb,OU=USERS,OU=DEVELOPMENT, O=BIPG,OU=COR,DC=ibi,DC=com HTTP/wf-kerb2.ibi.com Updated object
setspn -A HTTP/wf-kerb2 ibi\http_wf-kerb
L'emissione risultante è:
Registering ServicePrincipalNames for CN=http_wf-kerb,OU=USERS,OU=DEVELOPMENT, O=BIPG,OU=COR,DC=ibi,DC=com HTTP/wf-kerb2 Updated object
La seguente procedura descrive i passaggi per la configurazione di WebFOCUS Client.
Se sono necessarie le informazioni di suffisso dominio:
<property name="stripDomainSuffix" value="false" />
L'ID utente verrà creato nel seguente formato:
user_ID@mydomain.extension
La sezione ora contiene il seguente codice:
<property name="anonymousAuthEnabled" value="false"/> <property name="formAuthEnabled" value="false"/> <property name="stripDomainSuffix" value="true"/> . . . <property name="spnegoAuthEnabled" value="true"/>
<property name="servicePrincipal" value="HTTP/wf-kerb.ibi.com" /> <property name="keyTabLocation" value="file:c:/ibi/WebFOCUS81/ webapps/webfocus/WEB-INF/http_wf-kerb.keytab" />
Nota: Se si desidera estendere la capacità SSO su un RDBMS, come un server Microsoft SQL, impostare l'opzione di sicurezza adattatore per il Reporting Server su Protetto.
Se sono necessarie le informazioni di suffisso dominio:
<property name="stripDomainSuffix" value="false"/>
L'ID utente verrà creato nel seguente formato:
user_ID@mydomain.extension
La sezione ora contiene il seguente codice:
<property name="anonymousAuthEnabled" value="false"/> <property name="formAuthEnabled" value="true"/> <property name="stripDomainSuffix" value="true"/> <property name="formAuthenticationFallbackEnabled" value="true"/> . . . <property name="spnegoAuthEnabled" value="true"/>
<property name="servicePrincipal" value="HTTP/wf-kerb.ibi.com"/> <property name="keyTabLocation" value="file:c:/ibi/WebFOCUS81/ webapps/webfocus/WEB-INF/http_wf-kerb.keytab"/>
Nota:
La capacità SSO richiede un dominio Active Directory in un livello funzionale Windows 2000 o superiore: I seguenti browser sono supportati:
In molti casi, non si richiede nessuna configurazione speciale per Google Chrome in un ambiente Microsoft Windows. Sia l'autenticazione NTLM che Kerberos possono di solito essere completate senza nessuna modifica delle norme Chrome o parametri in linea di comando speciali. Se necessario, le impostazioni possono essere configurate con i parametri linea di comando.
Per esempio, per impostare il parametro auth-server-whitelist, avviare Chrome dalla linea di comando come segue:
"C:\Users\user\AppData\Local\Google\Chrome\Application\chrome.exe"
--auth-server-whitelist="example.com"
La sintassi è:
http://server.url.domain:port/context
Se Kerberos è stato configurato in modo corretto e il proprio ID utente è stato aggiunto a Managed Reporting, come indicato in precedenza, si dovrebbe eseguire l'accesso a BIP, usando le proprie credenziali Kerberos.
Il file di registrazione edaprint del Reporting Server registrerà richiesta per cmrpip0000xx per Kerberos connessione all'agente e rifletterà il proprio ID di accesso Windows nel formato UPN.
L'autenticazione Kerberos richiede una connessione sincrona tra il Reporting Server e la sessione browser utente, ma ReportCaster non usa una sessione browser mentre esegue prospetti pianificati. Quindi, ReportCaster deve fornire Kerberos una password e ID utente per abilitare i prospetti.
Lo strumento di configurazione del server di ReportCaster, configurare ognuno dei server dati con cui ReportCaster è impostato a comunicare. Impostare Esegui Tipo ID su Utente per assicurarsi che si richiedano agli utenti finali le password e ID utente, una volta per ogni nodo.
In alternativa, impostare Esegui Tipo ID in Statico e fornire l'ID e password utente che si useranno per tutte le pianificazioni per il Reporting Server.
L'implementazione di Microsoft Windows di Kerberos posiziona tutti gli identificatori gruppo di Windows all'interno del ticket Kerberos di ogni utente, in grado di poter risultare in un ticket di dimensioni maggiori per un utente che appartiene a molti gruppi. Il ticket Kerberos si trasporta in una intestazione HTTP, che comporta vari problemi tecnici, quando la dimensione del ticket diventa grande. Se qualsiasi utente appartiene a più di 100 gruppi, si potrebbe dover eseguire alcune o tutte le seguenti azioni di configurazione speciali:
È inoltre necessario impostare MaxTokenSize per i controllori di dominio.
Questo argomento descrive gli ulteriori passaggi necessari per consentire a Kerberos di funzionare correttamente in un ambiente di multi-domini o sottodomini.
Per esempio, se sono presenti utenti che sono membri di SUBA.MYDOMAIN.COM, SUBB.MYDOMAIN.COM e MYDOMAIN.COM e tutti questi utenti necessitano di accedere all'ambiente Kerberos, è necessario seguire le direzioni in questo argomento.
Per gestire le ulteriori impostazioni di configurazione richieste per Kerberos, per lavorare in modo appropriato su un ambiente multi-domini, è necessario creare un file di configurazione Kerberos, chiamato krb5.ini. Questo file contiene tutte le ulteriori informazioni necessarie per Kerberos, per funzionare quando si stanno usando vari domini.
Varie versioni di Java hanno un bug che non consente a vari domini di funzionare in modo corretto, anche con la configurazione krb5.ini. Come risultato, potrebbe essere necessario aggiornare la propria versione di Java. Per dettagli sul bug Java, andare al seguente prospetto bug Java:
È possibile creare questo file ovunque sul sistema file, in quanto, in seguito, si fa riferimento esplicitamente alla posizione. Per lo scopo di questo esempio, creare in file in:
C:\ibi\WebFOCUS81\config\krb5.ini
Sostituire il nome default_realm, MYDOMAIN.COM, nell'ultima riga dell'esempio con il nome DNS completamente qualificato per il dominio del computer che WebFOCUS Client ha aderito.
Immettere il nome default_realm i caratteri maiuscoli, in quanto sensibile alle maiuscole/minuscole.
[libdefaults] ticket_lifetime = 600 default_tgt_enctypes = rc4-hmac default_tgs_enctypes = rc4-hmac default_checksum = rsa-md5 forwardable = true default_realm = MYDOMAIN.COM
Se i domini e sottodomini condividono controlli di dominio, è possibile creare una sezione [realms] qui e fare riferimento alle relazioni nella prossima sezione, [domain_realm]. La sezione [domain_realm] si trova nella sezione 4.
[realms] MYDOMAIN.COM = { kdc = dc1.mydomain.com:88 kdc = dc2.mydomain.com:88 kdc = dc3.mydomain.com:88 default_domain = mydomain.com } SUBA.MYDOMAIN.COM = { kdc = dc1.suba.mydomain.com:88 kdc = dc2.suba.mydomain.com:88 default_domain = suba.ibi.com } SUBB.MYDOMAIN.COM = { kdc = dc1.subb.mydomain.com:88 kdc = dc2.subb.mydomain.com:88 default_domain = subb.ibi.com }
Come nella sezione [libdefaults], i valori nella sezione [realms] sono sensibili alle maiuscole/minuscole. Per esempio, il primo nome di riferimento (come MYDOMAIN.COM nel primo blocco nell'esempio) deve essere in caratteri maiuscoli e il valore per default_domain deve essere in caratteri minuscoli.
Ogni immissione per kdc deve fare riferimento al nome DNS di un controllore di dominio per il dominio applicabile. Si richiede solo una immissione kdc per dominio elencato, ma varie immissioni kdc creano ridondanze.
Un dominio si collega al settore dello stesso nome, ma il nome del settore è in caratteri maiuscoli. Come risultato, le seguenti voci sono ripetitive:
[domain_realm] .suba.mydomain.com = SUBA.MYDOMAIN.COM .subb.mydomain.com = SUBB.MYDOMAIN.COM .mydomain.com = MYDOMAIN.COM
Per ulteriori informazioni sulla sezione [domain_realm], consultare le specificazioni MIT Kerberos nel seguente sito web:
http://web.mit.edu/kerberos/krb5-1.4/krb5-1.4.1/doc/krb5-admin/domain_realm.html
La sezione [capaths] è necessaria solo in ambienti, il quale dominio principale non ha relazioni di fiducia unilaterali con tutti i domini secondari, o in ambienti, nei quali si usano gerarchie con vari domini.
In quelle situazioni, il protocollo Kerberos non è in grado di determinare come autenticare un utente da un dominio, per una risorsa in un altro dominio. Come risultato, le relazioni richieste per ottenere l'autenticazione devono essere mappate, per consentire a Kerberos di sapere quale percorso intraprendere per autenticare un utente. Le seguenti relazioni di fiducia si applicano:
In questo esempio, Kerberos è in grado di autenticare direttamente qualsiasi utente da SUBA.MYDOMAIN.COM, per qualsiasi risorsa in SUBB.MYDOMAIN.COM. Per autenticare un utente in SUBA.MYDOMAIN.COM con MYDOMAIN.COM, è necessario autenticare quell'utente tramite SUBB.MYDOMAIN.COM, poiché SUBA.DOMAIN.COM non ha una relazione di fiducia diretta con MYDOMAIN.COM.
[capaths] SUBA.MYDOMAIN.COM { SUBB.MYDOMAIN.COM = . MYDOMAIN.COM = SUBB.MYDOMAIN.COM } SUBB.MYDOMAIN.COM { SUBA.MYDOMAIN.COM = . MYDOMAIN.COM = . } MYDOMAIN.COM { SUBB.MYDOMAIN.COM = . SUBA.MYDOMAIN.COM = SUBB.MYDOMAIN.COM }
Nel primo blocco si trovano le informazioni per l'autenticazione di un utente da SUBA.MYDOMAIN.COM. Kerberos è in grado di autenticare un utente da SUBA.MYDOMAIN.COM rispetto SUBB.MYDOMAIN.COM, come rappresentato al periodo (.). Per autenticare un utente da SUBA.MYDOMAIN.COM rispetto a MYDOMAIN.COM, Kerberos deve andare al contrario rispetto a SUBB.MYDOMAIN.COM. Questo è il motivo per cui il codice dichiara MYDOMAIN.COM =SUBB.MYDOMAIN.COM.
Nel secondo blocco si trovano le informazioni per l'autenticazione di un utente da SUBB.MYDOMAIN.COM. In quanto Kerberos è in grado di autenticare direttamente un utente da SUBB.MYDOMAIN.COM, rispetto sia a SUBA.MYDOMAIN.COM che MYDOMAIN.COM, un punto (.) è incluso in entrambe queste colonne.
Nel terzo blocco si trovano le informazioni per l'autenticazione di un utente da MYDOMAIN.COM. Kerberos è in grado di autenticare direttamente un utente da MYDOMAIN.COM, per risorse in SUBB.MYDOMAIN.COM, rappresentato da un punto (.). Kerberos deve autenticare un utente da SUBA.MYDOMAIN.COM, passando prima tramite SUBB.MYDOMAIN.COM.
Per ulteriori informazioni sull'uso della sezione [capaths] con il protocollo Kerberos, consultare il seguente documento da MIT:
http://web.mit.edu/kerberos/krb5-1.5/krb5-1.5.4/doc/krb5-admin/capaths.html
Il proprio file krb.ini avrà un aspetto simile al seguente, alla fine dell'operazione:
[libdefaults] ticket_lifetime = 600 default_tgt_enctypes = rc4-hmac default_tgs_enctypes = rc4-hmac default_checksum = rsa-md5 forwardable = true default_realm = MYDOMAIN.COM [realms] MYDOMAIN.COM = { kdc = dc1.mydomain.com:88 kdc = dc2.mydomain.com:88 kdc = dc3.mydomain.com:88 default_domain = mydomain.com } SUBA.MYDOMAIN.COM = { kdc = dc1.suba.mydomain.com:88 kdc = dc2.suba.mydomain.com:88 default_domain = suba.ibi.com } SUBB.MYDOMAIN.COM = { kdc = dc1.subb.mydomain.com:88 kdc = dc2.subb.mydomain.com:88 default_domain = subb.ibi.com } [domain_realm] .suba.mydomain.com = SUBA.MYDOMAIN.COM .subb.mydomain.com = SUBB.MYDOMAIN.COM .mydomain.com = MYDOMAIN.COM [capaths] SUBA.MYDOMAIN.COM { SUBB.MYDOMAIN.COM = . MYDOMAIN.COM = SUBB.MYDOMAIN.COM } SUBB.MYDOMAIN.COM { SUBA.MYDOMAIN.COM = . MYDOMAIN.COM = . } MYDOMAIN.COM { SUBB.MYDOMAIN.COM = . SUBA.MYDOMAIN.COM = SUBB.MYDOMAIN.COM }
Per consentire a Kerberos di usare il proprio file krb5.ini in WebFOCUS, è necessario fare riferimento alla posizione del file usando la seguente opzione Java™. È possibile specificare l'opzione -Djava.security.krb5.conf in Tomcat, come descritto nella seguente procedura.
Di solito, la bin directory si trova nella seguente posizione:
C:\ibi\tomcat\bin\
-Djava.security.krb5.conf=C:\ibi\WebFOCUS81\config\krb5.ini
Se si sceglie una posizione diversa in cui memorizzare il proprio file krb5.ini, è necessario fare riferimento a quella posizione, invece della posizione nell'esempio precedente.
WebFOCUS |