GenerateDatabaseRightsScript yöntemi (WMI MSReportServer_ConfigurationSetting)
rapor sunucusu veritabanı ve bir rapor sunucusu çalıştırmak gerekli diğer veritabanları için kullanıcı hakları için kullanılan sql komut oluşturur.Bağlanmak için beklenen arayan SQL Server veritabanı sunucusu ve yürütmek Query
Sözdizimi
Public Sub GenerateDatabaseRightsScript(ByVal UserName As String, _
ByVal DatabaseName As String, ByVal IsRemote As Boolean, _
ByVal IsWindowsUser As Boolean, ByRef Script As String, _
ByRef HRESULT As Int32)
public void GenerateDatabaseRightsScript(string UserName, string DatabaseName, bool IsRemote, bool IsWindowsUser, out string Script,
out Int32 HRESULT);
Parametreler
UserName
Kullanıcı adı veya kullanıcı hakları komut dosyası izni verecek Windows Güvenlik tanımlayıcısı (SID).DatabaseName
Komut dosyası bu kullanıcıya erişim izni verecek veritabanı adı.IsRemote
Uzak bilgisayardan veritabanı etkin olup olmadığını gösteren bir Boole değer rapor sunucusu.IsWindowsUser
Belirtilen kullanıcı adı bir Windows kullanıcısı olsun ya da belirten bir Boole değeri SQL Server kullanıcı.Script
[Çıkış] Oluşturulan içeren bir dize SQL Server komutHRESULT
[Çıkış] Çağrı başarılı veya başarısız olup olmadığını gösteren değer.
Dönüş Değeri
Döndürür bir HRESULT gösteren başarı veya başarısızlık yöntem çağrısı.Bir 0 değeri, yöntem çağrısı başarılı olduğunu gösterir.Sıfır olmayan bir değer, bir hata oluştuğunu gösterir.
Açıklamalar
If DatabaseName is empty then IsRemote is ignored and the report server configuration file value is used for the database name.
If IsWindowsUser is set to true, UserName should be in the format <domain>\<username>.
Zaman IsWindowsUser olarak küme true, oluşturulan komut dosyası kullanıcı için oturum açma hakları verir SQL Server, varsayılan veritabanı ve izin verir rapor sunucusu veritabanı küme RSExec raporu sunucu veritabanına, rapor sunucusu geçici veritabanı, asıl veritabanı ve msdb sistem veritabanı rolü.
Zaman IsWindowsUser olarak küme true, yöntem standart Windows SID'leri giriş olarak kabulStandart Windows SID veya hizmet hesabı adı sağlandığında, bir kullanıcı adına çevrilir dize.Veritabanı yerel, hesabın hesap doğru yerelleştirilmiş temsilini çevrilir.Veritabanı uzak, hesabı bilgisayar hesabı olarak temsil edilir.
Aşağıdaki tablo çevrilir hesapları ve bunların uzak gösterimi gösterir.
Hesap / çevrilir SID |
Ortak adı |
Uzak adı |
---|---|---|
(S-1-5-18) |
Yerel Sistem |
<Domain>\<ComputerName>$ |
.\LocalSystem |
Yerel Sistem |
<Domain>\<ComputerName>$ |
ComputerName\LocalSystem |
Yerel Sistem |
<Domain>\<ComputerName>$ |
LocalSystem |
Yerel Sistem |
<Domain>\<ComputerName>$ |
(S-1-5-20) |
Ağ hizmeti |
<Domain>\<ComputerName>$ |
nt AUTHORITY\NetworkService |
Ağ hizmeti |
<Domain>\<ComputerName>$ |
(S-1-5-19) |
Yerel hizmet |
Hata – aşağıya bakın. |
nt AUTHORITY\LocalService |
Yerel hizmet |
Hata – aşağıya bakın. |
Üzerinde Windows 2000, yerleşik bir hesap kullanıyorsanız ve rapor sunucusu veritabanı uzak ise, bir hata döndürdü.
If the LocalService built-in account is specified and the report server database is remote, an error is returned.
Zaman IsWindowsUser true ve içinde sağlanan değeri UserName WMI sağlayıcı belirler çevrilmesi gereken olup olmadığını rapor sunucusu veritabanı aynı bilgisayardaki veya uzak bir bilgisayarda. bulunduğuYerel yüklemeyse, WMI sağlayıcı değerlendirir belirlemek için DatabaseServerName özellik aşağıdaki listeye göre değerleri.Bir eşleşme bulunursa, yerel bir veritabanıdır.Aksi takdirde, uzak bilgisayar.Karşılaştırmanın durum duyarlıdır.
DatabaseServerName değeri |
Örnek |
---|---|
“.” |
|
"(yerel)" |
|
"YEREL" |
|
localhost |
|
<MakineAdı> |
testlab14 |
<MachineFQDN> |
example.redmond.microsoft.com |
<IP adresi> |
180.012.345,678 |
Zaman IsWindowsUser olarak küme true, WMI sağlayıcı çağrıları LookupAccountName sonra aramalar ve hesabın SID'si alma LookupAccountSID koymak adını almak için SQL Server komutBu, kullanılan hesap adı geçecek sağlar SQL Server doğrulama.
Zaman IsWindowsUser olarak küme false, oluşturulan komut dosyası verir RSExec rapor sunucusu veritabanı, rapor sunucusu geçici veritabanı ve msdb veritabanını rolü.
Zaman IsWindowsUser olarak küme false, sql Server kullanıcı üzerinde varolmalıdır SQL Server komut dosyasının başarıyla çalışabilmesi.
Rapor sunucusu belirtilen bir rapor sunucusu veritabanı yoksa, arama GrantRightsToDatabaseUser işlevi bir hata.
Oluşturulan komut dosyası destekler SQL Server 2000, SQL Server 2005, ve SQL Server 2008.
Gereksinimler
Ad alanı: root\Microsoft\SqlServer\ReportServer\RS_<EncodedInstanceName>\v10\Admin
Platform: Windows Server 2003, Datacenter Edition; Windows Server 2003, Enterprise Edition; Windows Server 2003, Standard Edition; Windows Vista; Windows XP Professional Service Pack 2 (SP2) veya Service Pack 1 (SP1) veya Windows 2000 (tüm sürümleri)