Panoramica
I prodotti Oracle Enterprise Performance Management System supportano SSO con Kerberos se il server applicazioni in cui sono ospitati i prodotti EPM System è impostato per l'autenticazione Kerberos.
Kerberos è un servizio di autenticazione sicuro in cui ciascun client Kerberos considera attendibili e quindi valide le identità degli altri client Kerberos, ovvero utenti, servizi di rete e così via.
Di seguito viene illustrato cosa si verifica quando un utente accede a un prodotto EPM System.
Limitazioni relative al supporto
L'SSO con Kerberos è supportato per tutti i prodotti di EPM System con le seguenti eccezioni:
Presupposti
In questo documento, contenente le procedure di configurazione di Kerberos a livello di applicazione, si presuppone che si conosca la configurazione di Kerberos a livello di sistema. Prima di iniziare tali procedure, verificare che siano soddisfatti i prerequisiti per questi task.
All'interno del documento si presuppone che si stia operando in un ambiente di rete abilitato per Kerberos e completamente funzionante in cui i computer client Windows sono configurati per l'autenticazione Kerberos.
SSO con Kerberos mediante WebLogic Server
SSO (Single Sign-On) con Kerberos mediante Oracle WebLogic Server utilizza Negotiate Identity Asserter per negoziare e decodificare i token SPNEGO allo scopo di abilitare l'accesso SSO con i client Microsoft. WebLogic Server decodifica i token SPNEGO per ottenere il ticket Kerberos, quindi convalida e mappa il ticket su un utente di WebLogic Server. È possibile utilizzare l'autenticatore di Active Directory di WebLogic Server con Negotiate Identity Asserter per configurare Active Directory come directory utenti per gli utenti di WebLogic Server.
Quando il browser richiede l'accesso a un prodotto EPM System, KDC emette un ticket Kerberos per il browser, il quale crea un token SPNEGO contenente i tipo di token GSS supportati. Negotiate Identity Asserter decodifica il token SPNEGO e utilizza le API GSS (GSSAPI) per accettare il contesto di sicurezza. L'identità dell'utente che ha iniziato la richiesta viene mappata su un nome utente e passata nuovamente a WebLogic Server. WebLogic Server inoltre determina i gruppi a cui appartiene l'utente. A questo punto, il prodotto EPM System richiesto viene reso disponibile per l'utente.
Nota:
Per accedere ai prodotti EPM System in esecuzione in WebLogic Server, gli utenti devono utilizzare un browser che supporti SPNEGO, ad esempio Internet Explorer o Firefox.
Utilizzando l'ID utente ottenuto dal processo di autenticazione, il processo di autorizzazione del prodotto di EPM System verifica la presenza dei dati dell'assegnazione ruoli. L'accesso al prodotto EPM System è limitato in base ai dati dell'assegnazione ruoli.
Procedure di WebLogic Server per supportare l'autenticazione Kerberos
Per supportare l'autenticazione Kerberos, un amministratore deve completare i task seguenti.
Creazione del dominio WebLogic per EPM System
In genere, i componenti di EPM System vengono distribuiti nel dominio WebLogic EPMSystem
(la posizione predefinita è MIDDLEWARE_HOME/user_projects/domains/EPMSystem
).
Per configurare il dominio WebLogic EPM System per l'autenticazione Kerberos, procedere come segue.
La distribuzione di Foundation Services crea il dominio WebLogic EPM System predefinito.
Creazione di un provider di autenticazione LDAP in WebLogic Server
Un amministratore di WebLogic Server crea il provider di autenticazione LDAP, che memorizza le informazioni su utenti e gruppi in un server LDAP esterno. Con WebLogic Server interagiscono i server LDAP conformi a LDAP v2 o v3. Consultare i documenti di riferimento riportati di seguito.
Creazione di un Negotiate Identity Asserter
Il provider di Negotiate Identity Assertion abilita SSO con i client Microsoft. Esso decodifica i token SPNEGO per ottenere i token Kerberos, convalida i token Kerberos e mappa i token sugli utenti di WebLogic. Il provider di Negotiate Identity Assertion, un'implementazione dell'interfaccia SSPI (Security Service Provider Interface) definita da WebLogic Security Framework, offre la logica necessaria per autenticare un client in base al token SPNEGO del client stesso.
Durante la creazione del provider di Negotiate Identity Assertion, impostare l'opzione relativa al flag di controllo JAAS su SUFFICIENT
per tutti gli autenticatori. Fare riferimento alla sezione "Impostazione del flag di controllo JAAS" nella Guida in linea di Oracle Fusion Middleware Oracle WebLogic Server Administration Console.
Creazione di un'identificazione Kerberos per WebLogic Server
Nel computer controller di dominio Active Directory, creare gli oggetti utente che rappresentano WebLogic Server e il server Web di EPM System, quindi mapparli sui nomi dell'entità servizio (SPN) che rappresentano l'istanza di WebLogic Server e il server Web in uso nel realm Kerberos. I client non sono in grado di individuare un servizio che non dispone di un SPN. È possibile memorizzare gli SPN in file keytab che vengono copiati nel dominio di WebLogic Server per essere utilizzati nel processo di accesso.
Per le procedure dettagliate, fare riferimento alla sezione Creazione di un'identificazione per WebLogic Server nella guida Oracle Fusion Middleware Securing Oracle WebLogic Server.
Per creare un'identificazione Kerberos per WebLogic Server, procedere come segue.
epmHost
, per il computer che ospita il dominio di WebLogic Server.
Nota:
Creare l'identificazione come un oggetto utente, non come un computer.Utilizzare il nome semplice del computer. Ad esempio, utilizzare epmHost
se l'host è denominato epmHost.example.com
.
Prendere nota della password utilizzata durante la creazione dell'oggetto utente. Sarà necessaria per creare gli SPN.
Non selezionare opzioni relative alla password, soprattutto l'opzione User must change password at next logon
.
Do not require Kerberos pre-authentication
.epmHost
) creato nel passo 1 di questa procedura.
setspn -L epmHost
ktpass -princ HTTP/epmHost.example.com@EXAMPLE.COM -pass password -mapuser epmHost -out c:\epmHost.keytab
MIDDLEWARE_HOME/jdk/bin
.ktab -k keytab_filename -a epmHost@example.com
C:\Oracle\Middleware\user_projects\domains\EPMSystem
.kinit -k -t keytab-file account-name
In questo comando, account-name
indica l'entità Kerberos, ad esempio HTTP/epmHost.example.com@EXAMPLE.COM
. L'output di questo comando deve essere simile a quello riportato di seguito:
New ticket is stored in cache file C:\Documents and Settings\Username\krb5cc_MachineB
Aggiornamento delle opzioni JVM per Kerberos
Fare riferimento alle sezioni Utilizzo degli argomenti di avvio per l'autenticazione Kerberos con WebLogic Server e Creazione di un file di accesso JAAS nel manuale Oracle Fusion Middleware Securing Oracle WebLogic Server 11g Release 1 (10.3.1) (in lingua inglese).
Se i server gestiti EPM System vengono eseguiti come servizi Windows, aggiornare il Registro di sistema di Windows per impostare le opzioni di avvio JVM.
Per aggiornare le opzioni di avvio JVM nel Registro di sistema di Windows, procedere come segue.
Nota:
I nomi riportati nella tabella che segue sono forniti come esempio.
Tabella 3-3 Opzioni di avvio JVM per l'autenticazione Kerberos
Nome | Tipo | Dati |
---|---|---|
JVMOption44 | REG_SZ | -Djava.security.krb5.realm=Active Directory Realm Name |
JVMOption45 | REG_SZ | -Djava.security.krb5.kdc=Active Directory host name or IP address |
JVMOption46 | REG_SZ | -Djava.security.auth.login.config=location of Kerberos login configuration file |
JVMOption47 | REG_SZ | -Djavax.security.auth.useSubjectCredsOnly=false |
Aggiornare il valore DWORD JVMOptionCount in modo che rifletta le opzioni JVM (JVMOption) aggiunte (aggiungere 4 al valore decimale corrente).
Configurazione dei criteri di autorizzazione
Per informazioni sulla configurazione dei criteri di autorizzazione per gli utenti di Active Directory che accedono a EPM System, fare riferimento alla sezione Opzioni per proteggere le risorse di tipo applicazione Web ed EJB nella guida Oracle Fusion Middleware Securing Resources Using Roles and Policies for Oracle WebLogic Server (in lingua inglese).
Per la procedura di configurazione dei criteri campione, fare riferimento alla sezione Creazione dei criteri per SSODiag.
Utilizzo di SSODiag per testare l'ambiente Kerberos
SSODiag è un'applicazione Web di diagnostica che verifica se WebLogic Server nell'ambiente Kerberos in uso è pronto per supportare EPM System.
Distribuzione di SSODiag
Distribuire SSODiag utilizzando le credenziali di amministratore di WebLogic Server (il nome utente predefinito è epm_admin
) specificate durante la distribuzione di Foundation Services.
Per distribuire e configurare SSOdiag, procedere come segue.
Nel Centro modifiche, selezionare Blocca e modifica.
/products/Foundation/AppServer/InstallableApps/common/SSODiag.war
.Configurazione di Oracle HTTP Server per SSODiag
Aggiornare il file mod_wl_ohs.conf
per configurare Oracle HTTP Server in modo che le richieste di URL di SSODiag vengano inoltrate a WebLogic Server.
Per configurare l'inoltro degli URL in Oracle HTTP Server, procedere come segue.
/httpConfig/ohs/config/fmwconfig/components/OHS/ohs_component/mod_wl_ohs.conf
con un editor di testo.LocationMatch
per SSODiag:
<LocationMatch /SSODiag/> SetHandler weblogic-handler WeblogicCluster myServer:28080 </LocationMatch>
Nel campione precedente, myServer
indica il computer host di Foundation Services e 28080
rappresenta la porta su cui Oracle Hyperion Shared Services resta in ascolto delle richieste.
mod_wl_ohs.conf
.Creazione dei criteri per SSODiag
Nella console di amministrazione di WebLogic Server creare un criterio per proteggere l'URL seguente di SSODiag:
http://OHS_HOST_NAME:PORT/SSODiag/krbssodiag
In questo campione, OHS_HOST_NAME
indica il nome del server che ospita Oracle HTTP Server e PORT
indica la porta su cui Oracle HTTP Server resta in ascolto delle richieste.
Per creare i criteri per proteggere SSODiag, procedere come segue.
/
/index.jsp
krbuser1
), quindi selezionare Aggiungi. krbuser1
è un utente desktop di Active Directory o Windows.Selezionare Salva.
Utilizzo di SSODiag per testare la configurazione di WebLogic Server per l'autenticazione Kerberos
Se la configurazione di WebLogic Server per l'autenticazione Kerberos funziona correttamente, nella pagina di Oracle Hyperion Kerberos SSO diagnostic Utility V 1.0 viene visualizzato il messaggio seguente:
Retrieving Kerberos User principal name... Success.
Kerberos principal name retrieved... SOME_USER_NAME
Attenzione:
Non configurare i componenti di EPM System per l'autenticazione Kerberos se SSODiag non riesce a recuperare il nome dell'entità Kerberos.
Per testare la configurazione di WebLogic Server per l'autenticazione Kerberos, procedere come segue.
http://OHS_HOST_NAME:PORT/SSODiag/krbssodiag
In questo campione, OHS_HOST_NAME
indica il nome del server che ospita Oracle HTTP Server e PORT
indica la porta su cui Oracle HTTP Server resta in ascolto delle richieste.
Se l'autenticazione Kerberos funziona correttamente, SSODiag visualizza le informazioni seguenti:
Retrieving Kerberos User principal name... Success.
Kerberos principal name retrieved... SOME_USER_NAME
Se invece l'autenticazione Kerberos non funziona correttamente, SSODiag visualizza le informazioni seguenti:
Retrieving Kerberos User principal name... failed.
Modifica del modello di sicurezza
Il modello di sicurezza predefinito per le applicazioni Web protette tramite il realm di sicurezza è DDonly
. È necessario cambiare modello di sicurezza impostando CustomRolesAndPolicies
.
Per cambiare modello di sicurezza, procedere come segue.
MIDDLEWARE_HOME/user_projects/domains/EPMSystem/config/config.xml
.<security-dd-model>DDOnly</security-dd-model>
<security-dd-model>CustomRolesAndPolicies</security-dd-model>
config.xml
.Aggiornamento della configurazione di sicurezza di EPM System
Modificare la configurazione di sicurezza di EPM System in modo da abilitare SSO con Kerberos.
Per configurare EPM System per l'autenticazione Kerberos, procedere come segue.
In Opzioni di sicurezza, selezionare le impostazioni nella tabella che segue per abilitare SSO con Kerberos.
Tabella 3-4 Impostazioni per abilitare SSO con Kerberos
Campo | Impostazione richiesta |
---|---|
Abilita SSO | Selezionato |
Provider o agente SSO | Altro |
Meccanismo SSO | Richiama utente remoto da richiesta HTTP |
Test di SSO con Kerberos
Eseguire l'accesso a Foundation Services per verificare che SSO con Kerberos funzioni correttamente.
Per testare SSO con Kerberos, procedere come segue.
Configurazione dei componenti di EPM System
Utilizzando EPM System Configurator, configurare e distribuire gli altri componenti di EPM System nel dominio WebLogic in cui è stato distribuito Foundation Services.
Configurazione dei server gestiti di EPM System per l'autenticazione Kerberos
Negli ambienti Microsoft Windows, i server gestiti EPM System vengono eseguiti come servizi Windows. È necessario modificare le opzioni JVM di avvio per ogni server gestito WebLogic. Di seguito è riportato un elenco completo di server gestiti in modalità distribuzione non compatta.
Se le applicazioni Web EPM System vengono distribuite in modalità distribuzione compatta, è necessario aggiornare le opzioni JVM di avvio solo del server gestito EPMSystem0
. Se si dispone di più server gestiti compatti, è necessario aggiornare le opzioni JVM di avvio per tutti i server gestiti.
Fare riferimento alla sezione Utilizzo degli argomenti di avvio per l'autenticazione Kerberos con WebLogic Server nella guida Oracle Fusion Middleware Securing Oracle WebLogic Server (in lingua inglese).
Nota:
Nella procedura seguente viene descritto come impostare le opzioni JVM di avvio per il server gestito FoundationServices. È necessario eseguire questo task per ogni server gestito WebLogic presente nella distribuzione.Per le procedure dettagliate per la configurazione delle opzioni JVM negli script di avvio di WebLogic Server, fare riferimento alla sezione Aggiornamento delle opzioni JVM per Kerberos.
Per configurare le opzioni JVM negli script di avvio di WebLogic Server
Configurazione dei criteri di autorizzazione
Configurare i criteri di autorizzazione per gli utenti di Active Directory che accederanno a componenti di EPM System diversi da Foundation Services. Per informazioni sulla configurazione dei criteri di sicurezza dalla console di amministrazione WebLogic, fare riferimento alla sezione Configurazione dei criteri di autorizzazione.
Modifica del modello di sicurezza predefinito dei componenti di EPM System
Per utilizzare un modello di sicurezza diverso da quello predefinito, è necessario modificare il file di configurazione di EPM System. Per le distribuzioni non compatte di EPM System, è necessario specificare un modello di sicurezza diverso da quello predefinito per ogni applicazione Web EPM System registrata in config.xml
. Di seguito è riportato un elenco di applicazioni Web EPM System.
Per cambiare modello di sicurezza, procedere come segue.
MIDDLEWARE_HOME/user_projects/domains/EPMSystem/config/config.xml
<security-dd-model>
su CustomRolesAndPolicies
come illustrato nell'esempio seguente:
<app-deployment> <name>SHAREDSERVICES#11.1.2.0</name> <target>EPMServer</target> <module-type>ear</module-type> <source-path>C:\Oracle\Middleware\EPMSystem11R1/products/Foundation/AppServer/InstallableApps/common/interop.ear</source-path> <security-dd-model>CustomRolesAndPolicies</security-dd-model> <staging-mode>nostage</staging-mode> </app-deployment>
config.xml
.Creazione dei criteri di protezione URL per i componenti di EPM System
Nella console di amministrazione di WebLogic Server, creare un criterio di protezione URL per proteggere l'URL di ogni componente di EPM System. Per informazioni dettagliate, fare riferimento alla sezione Opzioni per proteggere le risorse di tipo applicazione Web ed EJB nella guida Oracle Fusion Middleware Securing Resources Using Roles and Policies for Oracle WebLogic Server (in lingua inglese).
Per creare i criteri di protezione URL, procedere come segue.
PLANNING
) nella distribuzione, quindi fare clic sulla relativa applicazione Web (ad esempio, HyperionPlanning
). Per un elenco dei componenti di EPM System, fare riferimento alla sezione Modifica del modello di sicurezza predefinito dei componenti di EPM System.
Nota:
Alcune applicazioni aziendali, ad esempio Oracle Essbase Administration Services, includono diverse applicazioni Web per le quali devono essere definiti pattern di URL.Oracle consiglia di utilizzare la condizione Group
, che concede questo criterio di sicurezza a tutti i membri di un determinato gruppo.
Group
nel passo precedente, è necessario completare le operazioni riportate di seguito.WebLogic Server visualizza un messaggio di errore se non riesce a individuare il gruppo in Active Directory. È necessario correggere tale errore prima di continuare.
Abilitazione dell'autenticazione basata su certificati client nelle applicazioni Web
Inserire la definizione login-config
nel file di configurazione degli archivi di applicazioni seguenti contenuti in EPM_ORACLE_HOME/products/
.
Essbase/eas/server/AppServer/InstallableApps/Common/eas.ear
FinancialDataQuality/AppServer/InstallableApps/aif.ear
financialreporting/InstallableApps/HReports.ear
Profitability/AppServer/InstallableApps/common/profitability.ear
Per abilitare l'autenticazione basata su certificati client, procedere come segue.
EPM_ORACLE_HOME/products/Essbase/eas/server/AppServer/InstallableApps/Common/eas.ear/eas.war
.WEB-INF
.web.xml
aggiungendo la definizione login_config
seguente subito prima dell'elemento </webapp>
:
<login-config> <auth-method>CLIENT-CERT</auth-method> </login-config>
web.xml
.Aggiornamento della configurazione di sicurezza di EPM System
Configurare la sicurezza di EPM System in modo che sia conforme a SSO. Fare riferimento alla sezione Configurazione di EPM System per l'SSO.