Sommario

Introduzione

Prerequisiti

Requisiti

Componenti usati

Premesse

Problema

Soluzione

Introduzione

In questo documento viene descritto come sbloccare l'account utente Oracle di Cisco IoT Field Network Director (IoT-FND) e impostare la scadenza della password su Illimitato.

Prerequisiti

Requisiti

Cisco raccomanda la conoscenza dei seguenti argomenti:

- Operazioni di base della shell Linux (visualizzazione dei log, avvio di un processo e così via)

- Nozioni di base sulle query SQL

Componenti usati

Il documento può essere consultato per tutte le versioni software o hardware.

Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.

Premesse

In questo documento si presume che l'utente disponga di due server Linux distinti:

- IoT-FND-SRV - Server che ospita l'applicazione IoT FND.

- IoT-FND-Oracle: server che ospita il database Oracle per l'applicazione IoT-FND.

Problema

SINTOMO 1: IoT-FND non viene avviato. Verifica della connessione al database non riuscita.

[root@IoT-FND-SRV ~]# service cgms status

IoT-FND Version X.X.XX

08-01-2018 15:14:58 CEST: INFO: IoT-FND database server: XX.XX.XX.XX

08-01-2018 15:15:01 CEST: ERROR: IoT-FND database connection verification failed.

08-01-2018 15:15:02 CEST: ERROR: IoT-FND application server is not running.

SINTOMO 2: cgms_db_connection_test.log contiene voci simili a:

[root@IoT-FND-SRV ~]# tail -n 50 /opt/cgms/server/cgms/log/cgms_db_connection_test.log

2018-08-01 12:27:22,767:INFO:main:TestDBConnection: Checking database connection. Please wait ...

2018-08-01 12:27:22,856:INFO:main:TestDBConnection: Database URL: jdbc:oracle:thin:@XX.XX.XX.XX:1522:cgms

2018-08-01 12:27:22,856:INFO:main:TestDBConnection: Database user: cgms_dev

2018-08-01 12:27:23,156:ERROR:main:TestDBConnection: Unable to check database connection. Exception:

java.sql.SQLException: ORA-28001: the password has expired

Nota: L'applicazione IoT-FND utilizza l'utente del database CGMS_DEV per accedere al database Oracle.

Nota:  Per impostazione predefinita, per il database Oracle è attivata l'opzione Scadenza password, quindi dopo qualche tempo le password degli account scadono e non è possibile utilizzarle senza modificare la password.

SINTOMO 3: Lo stato dell'account utente di Oracle CGMS_DEV è impostato su EXPIRED.

[oracle@IoT-FND-Oracle]$ sqlplus / as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Wed Aug 1 16:02:25 2018

Copyright (c) 1982, 2014, Oracle. All rights reserved.

Connected to:

Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production

With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

SQL> SELECT USERNAME,ACCOUNT_STATUS FROM DBA_USERS WHERE USERNAME LIKE 'cg%';

USERNAME

--------------------------------------------------------------------------------

ACCOUNT_STATUS

--------------------------------

CGMSDBA

OPEN

CGMS_DEV

EXPIRED

Soluzione

Passaggio 1. Accedere al server IoT-FND con SSH.

Passaggio 2. Arrestare i servizi FND.

[root@IoT-FND-SRV]$ service cgms stop

Nota: se non si arrestano i servizi IoT-FND, FND tenterà di connettersi al database utilizzando una vecchia password e l'account verrà bloccato fino al termine della procedura.

Passaggio 3. Accedere al server Oracle con SSH.

Passaggio 4. Passare all'utente di oracle system:

[root@IoT-FND-Oracle]$ su - oracle

[oracle@IoT-FND-Oracle]$

Passaggio 5. Connettersi all'istanza radice del database Oracle come utente sysdba:

[oracle@IoT-FND-Oracle]$ sqlplus / as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Wed Aug 1 16:19:23 2018

Copyright (c) 1982, 2014, Oracle. All rights reserved.

Connected to:

Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production

With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

SQL>

Passaggio 6. Impostare password_life_limit su illimitato:

sql> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

Profile altered.

Passaggio 7. Verificare quali account hanno password scadute.

SQL> SELECT USERNAME,ACCOUNT_STATUS FROM DBA_USERS WHERE ACCOUNT_STATUS='EXPIRED';

USERNAME

--------------------------------------------------------------------------------

ACCOUNT_STATUS

--------------------------------

CGMSDBA

OPEN

CGMS_DEV

EXPIRED

Passaggio 8. Impostare la password per l'utente CGMS_DEV:

sql> ALTER USER CGMS_DEV IDENTIFIED BY

;

User altered.

Nota: se si conosce la vecchia password è possibile riutilizzarla. In caso negativo, è necessario eseguire lo script cgmsSetup.sh sul server IoT-FND per modificare le password del database impostate in FND.

Passaggio 9. Sbloccare l'account utente CGMS_DEV:

SQL> ALTER USER CGMS_DEV ACCOUNT UNLOCK;

User altered.

Passaggio 10. Verificare lo stato dell'account degli utenti di CGMS:

SQL> SELECT USERNAME,ACCOUNT_STATUS FROM DBA_USERS WHERE USERNAME LIKE 'cg%';

USERNAME

--------------------------------------------------------------------------------

ACCOUNT_STATUS

--------------------------------

CGMSDBA

OPEN

CGMS_DEV

OPEN

Passaggio 11. Accedere al server IoT-FND con SSH.

Passaggio 12. Avviare /opt/cgms/bin/setupCgms.sh per modificare l'impostazione della password del database. Mantenere tutte le altre impostazioni con i relativi valori predefiniti:

[root@IoT-FND-SRV]# /opt/cgms/bin/setupCgms.sh

08-01-2018 16:40:43 CEST: INFO: ========== IoT-FND Setup Started - 2018-08-01-16-40-43 ==========

08-01-2018 16:40:43 CEST: INFO: Log file: /opt/cgms/bin/../server/cgms/log/cgms_setup.log

Are you sure you want to setup IoT-FND (y/n)? y

08-01-2018 16:40:46 CEST: INFO: User response: y

Do you want to change the database settings (y/n)? y

08-01-2018 16:40:54 CEST: INFO: User response: y

Enter database server hostname or IP [XX.XX.XX.XX]:

08-01-2018 16:40:55 CEST: INFO: Database server: XX.XX.XX.XX

Enter database server port [1522]:

08-01-2018 16:40:57 CEST: INFO: Database server port: 1522

Enter database SID [cgms]:

08-01-2018 16:40:59 CEST: INFO: Database SID: cgms

Do you wish to configure another database server for this IoT-FND ? (y/n)? n

08-01-2018 16:41:02 CEST: INFO: User response: n

08-01-2018 16:41:02 CEST: INFO: Configuring database settings. This may take a while. Please wait ...

08-01-2018 16:41:03 CEST: INFO: Database settings configured.

Do you want to change the database password (y/n)? y

08-01-2018 16:41:06 CEST: INFO: User response: y

Enter database password:

Re-enter database password:

08-01-2018 16:41:10 CEST: INFO: Configuring database password. This may take a while. Please wait ...

08-01-2018 16:41:13 CEST: INFO: Database password configured.

Do you want to change the keystore password (y/n)? n

08-01-2018 16:41:16 CEST: INFO: User response: n

Do you want to change the web application 'root' user password (y/n)? n

08-01-2018 16:41:19 CEST: INFO: User response: n

Do you want to change the FTP settings (y/n)? n

08-01-2018 16:41:22 CEST: INFO: User response: n

Do you want to change router CGDM protocol settings (y/n)? n

08-01-2018 16:41:24 CEST: INFO: User response: n

Do you want to change log file settings)? (y/n)? n

08-01-2018 16:41:25 CEST: INFO: User response: n

08-01-2018 16:41:25 CEST: INFO: ========== IoT-FND Setup Completed Successfully ==========

Passaggio 13. Verificare la connettività del database:

[root@IoT-FND-SRV ~]# service cgms status

IoT-FND Version X.X.X-XXX

08-01-2018 16:46:14 CEST: INFO: IoT-FND database server: XX.XX.XX.XX

08-01-2018 16:46:15 CEST: INFO: IoT-FND database connection verified.

08-01-2018 16:46:15 CEST: ERROR: IoT-FND application server is not running.

Passaggio 14. Avviare l'applicazione IoT-FND:

[root@IoT-FND-SRV ~]# service cgms start

Passaggio 15. Verificare il funzionamento dell'IoT-FND:

[root@IoT-FND-SRV ~]# service cgms status

IoT-FND Version X.X.X-XXX

08-01-2018 16:49:04 CEST: INFO: IoT-FND database server: XX.XX.XX.XX

08-01-2018 16:49:04 CEST: INFO: IoT-FND database connection verified.

08-01-2018 16:49:05 CEST: INFO: IoT-FND application server is up and running.

08-01-2018 16:49:06 CEST: INFO: IoT-FND is up and running.