Login ke database Oracle tanpa nama pengguna dan kata sandi


5

Saya ingin masuk ke database dengan menjalankan file SQL dari skrip Unix tanpa memberikan nama pengguna dan kata sandi (sebagai root). Apakah ini mungkin?

Basis datanya adalah Oracle.

Jawaban:


3

Anda dapat mendefinisikan pengguna basis data sebagai Otentikasi OS. Situs Oracle_Base Tim Hall memiliki primer yang bagus tentang bagaimana melakukan ini. Anda tidak perlu mengizinkan orang untuk masuk dengan hak istimewa SYSDBA, resep untuk bencana.


+1 thx untuk memperkenalkan "Otentikasi OS". Tidak tahu tentang itu. Akan memiliki banyak kesempatan untuk menggunakannya.
Alain Pannetier

Oracle juga memiliki kemampuan untuk mengautentikasi ke server LDAP, misalnya, Direktori Aktif untuk otentikasi domain. Anda perlu bagian yang terpisah untuk fitur itu - opsi biaya tambahan: - /
DCookie

Memang saya sudah menerapkan OID di masa lalu. Lupakan saja ... :-( Saya akan membersihkan domain ini besok.
Alain Pannetier

1

Jika pengguna Anda berada di grup oracle, ia dapat terhubung sebagai SYSDBA.

Contoh pada Unix env:

$ export ORACLE_SID=MYDB
$ sqlplus /nolog

SQL*Plus: Release...

SP2-0640: Not connected
sql> connect / as sysdba
Connected

SQL> select * from scott.employees ;

Itu mungkin sesuatu yang berlebihan untuk batch (selain fakta bahwa Anda memiliki semua hak istimewa untuk mengacaukan db Anda).

Namun AFAIK, itu satu-satunya pilihan.

PEMBARUAN Mengingat jawaban DCookie, ini bukan satu-satunya cara. Dan seperti yang telah saya sebutkan dan digarisbawahi oleh DCookie ini adalah jalan yang sangat berisiko.


Ini bukan satu-satunya pilihan, dan itu juga cukup berbahaya. Seorang pengguna SYSDBA dapat melakukan APA SAJA ke dalam basis data. Plus, Anda harus mengatur pengguna yang masuk untuk dapat masuk dengan hak istimewa ini.
DCookie

@ Alain Pannetier Hai, saya menggunakan oracle vm di linux gentoo saya. Saya kad masalah yang sama, pengguna oracle saya di grup oracle tapi saya tidak bisa terhubung sebagai sysdba. DB adalah 12c + oracle linux. Ada komentar mungkin? ORACLE_SID saya disetel ke orcl.
pregmatch

1

Ketika Anda memulai SQL * Plus, Anda memerlukan nama pengguna dan kata sandi untuk masuk ke skema Oracle Database. Nama pengguna dan kata sandi Anda mengidentifikasi Anda sebagai pengguna resmi skema Oracle Database.

Administrator basis data (DBA) bertanggung jawab untuk membuat akun basis data Anda dengan hak istimewa yang diperlukan dan memberi Anda nama pengguna dan kata sandi yang memungkinkan Anda untuk mengakses akun Anda.


0

Jika menggunakan PostgreSQL maka Anda dapat menentukan metode "trust" untuk jaringan host lokal Anda di file "pg_hba.conf". Untuk MySQL mungkin ada yang serupa, saya tidak yakin (mudah-mudahan seseorang di sini yang akrab dengan database apa pun yang Anda gunakan dapat membantu dengan ini jika bukan PostgreSQL).


database oracle
sam
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.