Unable to connect via wallet credentials - ORA-12534: TNS:operation not supported [message #645594] |
Wed, 09 December 2015 09:02 |
|
notadbamark
Messages: 8 Registered: December 2015
|
Junior Member |
|
|
I'm having problems connecting to the database using wallet credentials. Just trying to set up a local environment for development which requires passwords to be held securely. Database and Client running on same host. I'm not a DBA or Admin so apologies if this is a stupid problem! I have searched online however and followed a number of tips, none of which have helped. I'd appreciate any advice to get this working. I've pasted below the steps I have taken and the error:
---- create wallet
$ mkstore -wrl /oracle/wallet -createOracle Secret Store Tool : Version 11.1.1.9.0
Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
Enter password:
Enter password again:
$
---- create user credential
$ mkstore -wrl /oracle/wallet -createCredential mark_orcl user1
Oracle Secret Store Tool : Version 11.1.1.9.0
Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
Your secret/Password is missing in the command line
Enter your secret/Password:
Re-enter your secret/Password:
Enter wallet password:
Create credential oracle.security.client.connect_string1
$
---- sqlnet.ora :
WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/oracle/wallet)))
SQLNET.WALLET_OVERRIDE = TRUE
SSL_CLIENT_AUTHENTICATION = FALSE
SSL_VERSION = 0
---- tnsnames.ora
MARK_ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORCL)
)
)
---- Listener
$ lsnrctl stat
LSNRCTL for Linux: Version 12.1.0.2.0 - Production on 09-DEC-2015 06:39:12
Copyright (c) 1991, 2014, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 12.1.0.2.0 - Production
Start Date 09-DEC-2015 02:58:12
Uptime 0 days 3 hr. 41 min. 0 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /oracle/db/ohome/network/admin/listener.ora
Listener Log File /oracle/db/diag/tnslsnr/orasvr/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Services Summary...
Service "orcl" has 1 instance(s).
Instance "orcl", status READY, has 1 handler(s) for this service...
Service "orclXDB" has 1 instance(s).
Instance "orcl", status READY, has 1 handler(s) for this service...
The command completed successfully
---- Try to connect via wallet
$ sqlplus /@mark_orcl
SQL*Plus: Release 11.1.0.7.0 - Production on Wed Dec 9 06:42:18 2015
Copyright (c) 1982, 2008, Oracle. All rights reserved.
ERROR:
ORA-12534: TNS:operation not supported
Enter user-name:
---- Connect via connect string
$ sqlplus user1@mark_orcl
SQL*Plus: Release 11.1.0.7.0 - Production on Wed Dec 9 06:43:28 2015
Copyright (c) 1982, 2008, Oracle. All rights reserved.
Enter password:
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Re: Unable to connect via wallet credentials - ORA-12534: TNS:operation not supported [message #645614 is a reply to message #645613] |
Wed, 09 December 2015 16:34 |
John Watson
Messages: 8964 Registered: January 2010 Location: Global Village
|
Senior Member |
|
|
I happen to be teaching a course on Oracle security this week, and this demo worked for me earlier today. Try it:
md \tmp\john
mkstore -wrl \tmp\john -create
mkstore -wrl \tmp\john -createCredential nopass scott tiger
mkstore -wrl \tmp\john -listCredential
copy con \tmp\john\tnsnames.ora
nopass=(description=(address=(protocol=tcp)(host=127.0.0.1)(port=1521))(connect_data=(service_name=orcl)))
copy con \tmp\john\sqlnet.ora
wallet_location=(source=(method=file)(method_data=(directory=\tmp\john)))
sqlnet.wallet_override=true
set TNS_ADMIN=\tmp\john
sqlplus /@nopass
|
|
|
|
|
|
|