Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Buat Akun Otentikasi Server Sql?

Hanya ada dua mode yang saya tahu dapat Anda gunakan:Windows atau SQL Server Authentication. Ini berarti Anda dibatasi hanya pada dua pilihan:Anda menggunakan akun Windows, atau Anda membuat login SQL Server yang dapat Anda gunakan untuk mengautentikasi.

EDIT:

Untuk membuat login server sql secara terprogram, Anda dapat menggunakan objek Sql Server Management. Saya perhatikan Anda tidak mengatakan apakah Anda ingin melakukan ini dari Windows (desktop) atau aplikasi Web. Untuk menggunakan Sql Server Management untuk membuat login (atau melakukan "manajemen"), kode harus dijalankan dengan hak istimewa yang lebih tinggi - katakanlah akun lokal atau domain dengan hak yang cukup untuk mengelola instance server SQL.

Anda perlu menambahkan referensi ke (Anda bisa menggunakan versi 9.0 dari majelis):

Microsoft.SqlServer.ConnectionInfo
Microsoft.SqlServer.Smo
Microsoft.SqlServer.SqlEnum

Dengan itu, kode berikut sudah cukup untuk membuat login SQL dan juga menambahkan pengguna ke database target Anda

        var serverName = "."; // Your SQL Server Instance name
        var databaseName = "Test"; // Your database name
        var loginName = "testuserY"; // Your login name (should not exist - or you should add code to check if the login exists)


        Server svr = new Server(serverName);
        var db = svr.Databases[databaseName];
        if (db != null)
        {
            // You probably want to create a login and add as a user to your database
            Login login = new Login(svr, loginName);
            login.DefaultDatabase = "master"; // Logins typically have master as default database
            login.LoginType = LoginType.SqlLogin;
            login.Create("foobar", LoginCreateOptions.None); // Enter a suitable password
            login.Enable();

            User user = new User(db, loginName);
            user.UserType = UserType.SqlLogin;
            user.Login = login.Name;
            user.Create();
            // add a role
            user.AddToRole("db_owner");
        }

Anda perlu menambahkan:

using Microsoft.SqlServer.Management.Smo;

Anda bisa menambahkan blok try{} catch{} dan kode pipa agar lebih kuat sehingga Anda akan pulih dengan baik jika terjadi kegagalan




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana saya bisa menjalankan hanya pernyataan kursor saya aktif di SQL Server Management Studio?

  2. Bisakah saya menyimpan 'Objek' di database SQL Server?

  3. Sortir Alfanumerik

  4. Fungsi IndexOf di T-SQL

  5. Masukkan hasil prosedur tersimpan ke dalam tabel sementara