Verme, iptal etme ve izinler engelleme
The ServerPermission object is used to assign a küme of permissions or an individual server permission to the ServerPermissionSet object. Sunucu düzeyinde izinler, bir oturum açma için grantee başvuruyor.Oturumlar, Windows tarafından kimlik doğrulaması, Windows kullanıcı adı olarak listelenir.Bu kod örneği çalıştırıldığında, grantee gelen iznini iptal eder ve ile kaldırılmıştır doğrular EnumServerPermissions(String, ServerPermissionSet) yöntem.
Veritabanı izinleri ve veritabanı nesne izinleri aynı şekilde kullanarak atanabilecek DatabasePermissionSet Nesne ve ObjectPermissionSet nesne.
Örnek
Sunulan kod örneklerinden herhangi birini kullanmak için, programlama ortamını, programlama şablonunu ve uygulamanızı oluşturacağınız programlama dilini seçmeniz gerekecektir.Daha fazla bilgi için bkz: Nasıl Yapılır: Visual Studio. NET'te bir Visual Basic SMO projesi oluşturma veya Nasıl Yapılır: Visual Studio. NET'te bir Visual C# SMO Proje oluşturma.
Visual Basic'te Server izinleri verme
Bu kod örneği, belirtilen oturumu Endpoint oluşturmak ve bir bitiş noktası Değiştir izinleri verir numaralandırır ve izinleri görüntüler.Iptal izinlerinden birini ve sonra izinleri yeniden numaralandırılır.Bu örnek, belirtilen oturum açma başlamak belirtilen izinleri olduğunu varsayar.
Visual C# Server izin verme
Bu kod örneği, belirtilen oturumu Endpoint oluşturmak ve bir bitiş noktası Değiştir izinleri verir numaralandırır ve izinleri görüntüler.Iptal izinlerinden birini ve sonra izinleri yeniden numaralandırılır.Bu örnek, belirtilen oturum açma başlamak belirtilen izinleri olduğunu varsayar.
//Connect to the local, default instance of SQL Server.
{
Server svr = default(Server);
svr = new Server();
//Define a ServerPermissionSet that contains permission to Create Endpoint and Alter Any Endpoint.
ServerPermissionSet sps = default(ServerPermissionSet);
sps = new ServerPermissionSet(ServerPermission.CreateEndpoint);
sps.Add(ServerPermission.AlterAnyEndpoint);
//This sample assumes that the grantee already has permission to Create Endpoints.
//Enumerate and display the server permissions in the set for the grantee specified in the vGrantee string variable.
ServerPermissionInfo[] spis = null;
spis = svr.EnumServerPermissions(vGrantee, sps);
ServerPermissionInfo spi = default(ServerPermissionInfo);
Console.WriteLine("===========Before revoke==================");
foreach ( spi in spis) {
Console.WriteLine(spi.Grantee + " has " + spi.PermissionType.ToString + " permission.");
}
Console.WriteLine(" ");
//Remove a permission from the set.
sps.Remove(ServerPermission.CreateEndpoint);
//Revoke the create endpoint permission from the grantee.
svr.Revoke(sps, vGrantee);
//Enumerate and display the server permissions in the set for the grantee specified in the vGrantee string variable.
spis = svr.EnumServerPermissions(vGrantee, sps);
Console.WriteLine("=========After revoke================");
foreach ( spi in spis) {
Console.WriteLine(spi.Grantee + " has " + spi.PermissionType.ToString + " permission.");
}
Console.WriteLine(" ");
//Grant the Create Endpoint permission to the grantee.
svr.Grant(sps, vGrantee);
//Enumerate and display the server permissions in the set for the grantee specified in the vGrantee string variable.
spis = svr.EnumServerPermissions(vGrantee, sps);
Console.WriteLine("=========After grant===============");
foreach ( spi in spis) {
Console.WriteLine(spi.Grantee + " has " + spi.PermissionType.ToString + " permission.");
}
Console.WriteLine("");
}