Aracılığıyla paylaş


Kullanıcılar ve roller oturumları yönetme

Oturumların belirtilmiştir SMO, Login nesne. Ne zaman oturum açma bulunmaktadır SQL Server, bir sunucu rolüne eklenebilir. Sunucu rolünü gösterdiği ServerRole nesne. veritabanı rolü gösterdiği DatabaseRole Nesne ve uygulama rolü tarafından gösterilen ApplicationRole nesne.

Sunucuyla ilişkilendirilmiş ayrıcalıklarını düzey özelliklerini listelenen ServerPermission nesne. Sunucu düzey ayrıcalıkları için verilen, engellendi veya tek tek oturum açma hesaplarını iptal.

Her Database nesnenin bir UserCollection tüm kullanıcıların veritabanında belirten nesne. Her kullanıcı, oturum açma ile ilişkilidir.Bir oturum açma veritabanlarında birden fazla ile ilişkilendirilebilir.The Login object's EnumDatabaseMappings() yöntem can be used to list all users in every database that is associated with the logon. Alternatif olarak, User nesnenin Login özellik, kullanıcı ile ilişkili olan oturum açma belirtir.

SQL Server veritabanları, bir kullanıcının belirli görevleri gerçekleştirmesine olanak sağlayan veritabanı düzeyinde ayrıcalıklara belirttiğiniz roller de vardır.Sunucu rollerini, veritabanı rollerini giderilmiştir.Bunlar oluşturulmuş, değiştirilmiş, kaldırılmış ve.Toplu yönetimi için bir veritabanı rolü ayrıcalıklarını ve kullanıcıların atanabilir.

Örnek

Aşağıdaki kod örneği, programlama ortamında seçmek şablon ve programlama dili uygulama oluşturmak için programlama gerekir.Daha fazla bilgi için bkz: Nasıl Yapılır: Visual Studio. NET'te bir Visual Basic SMO projesi oluşturma ve Nasıl Yapılır: Visual Studio. NET'te bir Visual C# SMO Proje oluşturma.

Oturumlar ve ilişkili kullanıcılar Visual Basic'te numaralandırılıyor.

Bir veritabanında her bir kullanıcı oturum açma ile ilişkilidir.Oturum açma veritabanlarında birden fazla ile ilişkilendirilebilir.Kod örneği, aranacak gösterilmiştir EnumDatabaseMappings() yöntem Login oturum açma ile ilişkili tüm veritabanı kullanıcıları listelemek için nesne. Bu örnek, AdventureWorks veritabanındaki eşleme bilgileri, Numaralandırılacak olduğundan emin olmak için bir oturum açma ve kullanıcı oluşturur.

Oturumlar ve ilişkili kullanıcılar Visual C# numaralandırılıyor.

Bir veritabanında her bir kullanıcı oturum açma ile ilişkilidir.Oturum açma veritabanlarında birden fazla ile ilişkilendirilebilir.Kod örneği, aranacak gösterilmiştir EnumDatabaseMappings() yöntem Login oturum açma ile ilişkili tüm veritabanı kullanıcıları listelemek için nesne. Bu örnek, AdventureWorks veritabanındaki eşleme bilgileri, Numaralandırılacak olduğundan emin olmak için bir oturum açma ve kullanıcı oluşturur.

//Connect to the local, default instance of SQL Server. 
{ 
Server srv = default(Server); 
srv = new Server(); 
//Iterate through each database and display. 
Database db = default(Database); 
foreach ( db in srv.Databases) { 
   Console.WriteLine("===================================="); 
   Console.WriteLine("Login Mappings for the database: " + db.Name); 
   Console.WriteLine(" "); 
   //Run the EnumLoginMappings method and return details of database user-login mappings to a DataTable object variable. 
   DataTable d = default(DataTable); 
   d = db.EnumLoginMappings; 
   //Display the mapping information. 
   DataRow r = default(DataRow); 
   DataColumn c = default(DataColumn); 
   foreach ( r in d.Rows) { 
      foreach ( c in r.Table.Columns) { 
         Console.WriteLine(c.ColumnName + " = " + r(c)); 
      } 
      Console.WriteLine(" "); 
   } 
} 
}