Saya mencoba untuk terhubung ke SQL Server jarak jauh pada VPN di domain yang berbeda. Ketika saya memasukkan nama Server pada SQL Server dan memilih Parameter Koneksi Tambahan untuk menambahkan beberapa hal tambahan yang diperlukan oleh sekolah saya:
Integrated Security=SSPI; User ID=DOMAIN\username; Password=Password
Saya mendapatkan kesalahan berikut:
Gagal masuk. Info masuk berasal dari domain yang tidak terpercaya dan tidak dapat digunakan dengan otentikasi Windows.
sql-server
authentication
logins
fxuser
sumber
sumber
Jawaban:
Anda mencoba meneruskan kredensial Windows dalam teks biasa dari string koneksi aplikasi. Ini bukan bagaimana otentikasi Windows bekerja, dan sebagian besar mengalahkan tujuannya.
Anda juga tidak bisa hanya membuat nama pengguna yang sama dengan kata sandi yang sama di domain Anda sendiri, dan berharap itu berfungsi secara ajaib. Nama domain masih merupakan bagian dari validasi - mesin Anda harus menjadi bagian dari domain, atau domain yang digunakan mesin Anda harus dipercaya oleh domain sekolah.
Satu-satunya solusi yang saya tahu adalah untuk SSMS, dan itulah
runas /netonly
trik yang dijelaskan dalam jawaban ini . Ini membodohi Windows untuk meluncurkan SSMS sebagai login yang Anda tentukan, bukan login Anda (ini bukan sesuatu yang dapat Anda atur dalam dialog Properties koneksi SSMS, ini adalah cara Anda perlu meluncurkan SSMS dari baris perintah atau pintasan):Ini akan meminta kata sandi Anda di domain jauh. Ini akan terlihat seperti menggunakan kredensial Windows lokal Anda, tetapi tidak .
Mungkin juga akan bekerja dengan Visual Studio, tapi saya benar-benar tidak tahu.
Jadi pilihan Anda adalah:
runas /netonly
triknya dengan Visual Studiorunas /netonly
triknya dengan SSMSsumber
runas
hal tidak bekerja dengan Visual Studio.Ada cara lain, yang sekarang saya gunakan dalam preferensi untuk
runas /netonly
metode ini.Anda dapat menambahkan kredensial ke profil Anda di Windows menggunakan Credential Manager yang ditemukan di panel kontrol Windows.
Isi bidang "internet atau alamat jaringan" dengan nama dan nomor port instance SQL yang ingin Anda simpan kredensialnya.
Contoh:
UniServer:1433
(1433 adalah port default, Anda mungkin memerlukan port lain, terutama jika Anda menghubungkan ke instance bernama)MYDOMAIN\MYUSER
)Jika Anda memiliki nama server, port, dan detail login yang benar, Anda sekarang harus dapat menggunakan Otentikasi Windows dari sebagian besar alat klien, SSMS, Excel, apa pun. Mereka semua akan menggunakan kredensial yang disimpan.
Kiat: Terkadang Anda perlu menggunakan FQN untuk server saat menambahkan kredensial. misalnya
UniServer.UniDomain.org:1433
, semuanya tergantung pada spesifikasi jaringan Anda.Berikut ini adalah demo cepat dari metode ini: http://youtu.be/WiVBPsqB9b4
Ini adalah ambil layar saya mencoba (dan gagal) untuk terhubung ke SQL Server yang berjalan di VM dari desktop saya, kemudian menambahkan kredensial yang diperlukan dan mencoba lagi - berhasil.
Kiat: gunakan perintah "cmdkey / add" untuk membuat skrip dan memperbarui kredensial yang disimpan.
sumber