Ist es sinnvoll, Berechtigungen für virtuelle SQL Server-Konten (NT Service \ SQLSERVERAgent usw.) zuzuweisen?

7

Verwenden von MS SQL Server 2012 in Microsoft Windows Server 2008.

Ich bin etwas verwirrt über die neuen[NT SERVICE]\<SERVICENAME> Kontotypen, die mit virtuellen Windows 7- und Windows Server 2008 R2- Windows-Konten wie NT SERVICE \ MSSQLSERVER NT SERVICE\SQLSERVERAGENTusw. verfügbar sind.

Kann man es wagen, beispielsweise [NT Service \ SQLSERVERAGENT] Berechtigungen für den Zugriff auf eine gemeinsam genutzte Ressource (oder eine lokale Datei oder ein lokales Verzeichnis) zu erteilen?
Und wie geht das?
Zum Beispiel, um einer Windows-Dateifreigabe Berechtigungen zum Ausführen von psexec zuzuweisen ?

Beim Durchsuchen (oder Drücken der Schaltfläche Suchen <oder Hinzufügen von Gruppen und Benutzern zu einer Dateifreigabe) der in der Domäne und / oder auf dem lokalen / Remotecomputer verfügbaren Konten sind keine solchen Konten verfügbar, und die manuelle Eingabe gibt einen Fehler aus:

"Ein Objekt (Benutzer oder integriertes Sicherheitsprinzipal) mit den folgenden Angaben kann nicht gefunden werden ..."

Geben Sie hier die Bildbeschreibung ein

Verwandte (wenn auch andere) Frage, die diese Frage provozierte: Wie kopiere ich Bak-Dateien auf die Remote-Freigabe (ohne Beteiligung von AD- / Domänenkonten)?

UPDATE, Beantwortung des Kommentars von @ Jon-Siegel zu meiner gelöschten Antwort: Mein Screenshot enthält keinen Fehler, manchmal erfolgt die Erkennung virtueller Konten, manchmal schlägt dies fehl. Wirklich die letzten 2 Tage kann ich es nicht reproduzieren.

Kann man erklären, dass ich keine richtigen Berechtigungen habe?
Wenn ich versuche, SQL Server Configuration Manager zu öffnen, erhalte ich immer Folgendes:

--------------------------- 
SQL Server Configuration Manager
 --------------------------- 
Cannot connect to WMI provider.   
You do not have permission or the server is unreachable.  
Note that you can only manage SQL Server 2005 and later servers with SQL Server Configuration Manager.  
Invalid class [0x80041010] 
 --------------------------- 
OK   
---------------------------

SQL Server Configuration Manager-Fehler

Außerdem eventvwr.mscbeobachte ich viele berechtigungsbezogene Fehler (unter System):

The application-specific permission settings do not grant Local Activation permission for the COM Server application with CLSID   
{FDC3723D-1588-4BA3-92D4-42C430735D7D}  
 and APPID   
{83B33982-693D-4824-B42E-7196AE61BB05}  
 to the user NT SERVICE\SQLSERVERAGENT SID (S-1-5-80-344959196-2060754871-2302487193-2804545603-1466107430) from address LocalHost (Using LRPC).  
This security permission can be modified using the Component Services administrative tool

.

Geben Sie hier die Bildbeschreibung ein

Ich bin mir nicht sicher, ob ich eine andere Frage öffnen oder bei dieser bleiben soll ... Die folgenden Fragen lauten:
1) Was sind die Berechtigungen zum Lesen virtueller Konten?

Ich kann nur den lokalen Computer unter "Benutzer, Computer, Dienstkonten, Gruppen oder integrierte Sicherheitsprinzipale auswählen" auflisten. Die Einträge sind sichtbar, aber beim Öffnen sind keine einzelnen Untereinträge für mich sichtbar:

Geben Sie hier die Bildbeschreibung ein

2)
Wie kann ich das NT SERVICE\SQLSERVERAGENT(durch manuelles Eingeben) auf einem anderen Computer eingeben?

Derzeit kann ich es nur auf einem lokalen Computer auswählen:

  • Wählen Sie den Namen des lokalen Computers aus , indem Sie auf die Schaltfläche " Standorte ... " klicken und dann den obersten Eintrag in der Baumliste auswählen - siehe Abbildung oben;
  • Geben Sie dann "NT Service \ SQLSERVERAGENT" in das Listenfeld " Enter the object names to select" ein

    Überprüfen Sie die Namen - vorher

    Das ist nach dem Drücken der Schaltfläche "Namen überprüfen":

    Geben Sie hier die Bildbeschreibung ein

Das heißt, es gibt keinen Hinweis, wie man es eingibt.
Wenn Sie auf "Erweitert ..." und dann auf "Jetzt suchen" klicken, wird eine Liste angezeigt, in der virtuelle Konten fehlen:

Geben Sie hier die Bildbeschreibung ein

Gennady Vanin Геннадий Ванин
quelle
Ist die Instanz von SQL Server eine Standardinstanz oder eine benannte Instanz?
Jon Seigel
@ JonSiegel, Standardinstanz. NVOSIB-1C ist in diesem Fall der Name des Hosts (Computer, auf dem MS Windows Server 2008 ausgeführt wird)
Gennady Vanin 15еннадий Ванин
Windows Server 2008 oder 2008 R2? Wenn Speicher bereitgestellt wird, wurden Service-SIDs erst 2008 R2 eingeführt. Soweit ich das beurteilen kann, befolgen Sie das richtige Verfahren. Wenn Sie also im Jahr 2008 sind, ist dies das einzige, was mir einfällt, um dies zu erklären.
Jon Seigel
Windows Server 2008 R2 Standard, 64-Bit-Betriebssystem
Gennady Vanin 15еннад. Ванин
Im Idealfall sollten Sie Konten niemals Berechtigungen zuweisen. Erstellen Sie immer eine Gruppe, erteilen Sie dieser Gruppe relevante Berechtigungen und fügen Sie der Gruppe dann Konten hinzu. Gilt auch für virtuelle Konten.
Remus Rusanu

Antworten:

4

Schauen Sie sich zunächst einmal dies kurz an, um die virtuellen Konten zu erklären:

TechNet: Schritt-für-Schritt-Anleitung für Servicekonten

So beantworten Sie Ihre Fragen:

1 / Sie können diese virtuellen Konten nicht in diesem Dialogfeld auflisten. Ich bin mir des Grundes nicht 100% sicher, aber Sie müssen sie immer manuell eingeben. In Ihrem Screenshot ist auch die Active Directory-Domäne aufgeführt Sieh sie hier nie, da es sich um lokale Konten handelt.

2 / Sie können keine Berechtigungen für Dateien / Freigaben auf einem anderen Computer hinzufügen, indem Sie diese Konten suchen, da diese nur auf dem Computer gespeichert sind, auf dem Sie SQL Server installiert haben (in Ihrem Fall NVOSIB-1C). Diese Konten können zwar auf Ressourcen im Netzwerk zugreifen, dies geschieht jedoch im Kontext des Computerkontos des Servers.

Ein Beispiel wäre also, dass Sie NVOSIB-1C mit installiertem SQL Server und NVOSIB-Filer mit einer Freigabe darauf haben, auf die das SQL Server-Konto zugreifen soll.

In dieser Situation würden Sie das Computerkonto des SQL-Servers zu den Berechtigungen für die Dateifreigabe hinzufügen. Sie können dies tun, indem Sie dem Konto DOMAINNAME \ NVOSIB-1C $ die gewünschten Berechtigungen zuweisen und dann als virtuelles Konto Zugriff auf das Netzwerk im Kontext des Computers, auf dem es lebt, hätte er die Berechtigung dazu.

Dies schränkt Ihre Fähigkeit, Berechtigungen zuzuweisen, offensichtlich ein wenig ein, da alles, was unter NVOSIB-1C ausgeführt wird und im Kontext des Servers authentifiziert wurde, jetzt Zugriff auf die Freigabe hat. Wenn dies ein Problem darstellt, können Sie eines von zwei Dingen tun:

  • Verwenden Sie Standarddomänendienstkonten für die SQL Server-Dienste. Sie müssen dann Kennwörter usw. für diese verwalten, dies erleichtert jedoch die Zuweisung von Berechtigungen.

  • Wenn Sie ein verwaltetes Dienstkonto in AD einrichten, hat dies den Vorteil, dass sich die lokalen Konten nicht um Kennwörter kümmern müssen, und den Vorteil, dass Sie sie wie ein normales Konto zentral in AD anzeigen und verwalten können Der Hauptnachteil besteht darin, dass Sie das verwaltete Dienstkonto erstellen müssen, bevor Sie SQL Server installieren. In Ihrem Fall müssten Sie es also neu installieren, um dies nutzen zu können.

steoleary
quelle
Dies ist eine eher konzeptionelle Frage, das heißt nicht, dass ich sie praktisch verwenden würde. "Da sie nur auf dem Computer ausgeführt werden, auf dem Sie SQL Server installiert haben (in Ihrem Fall NVOSIB-1C)" - Ich habe SQL Server 2012 auch auf einem anderen Computer installiert. Ich dachte, dass es aus der Frage offensichtlich war. „ist das Computerkonto des SQL - Servers an den Berechtigungen für die Dateifreigabe hinzufügen möchten , können Sie dies nur durch das Konto zuweisen Domainname \ NVOSIB-1C die Berechtigungen $“ - so, ich es tun kann , NT Service \ MSSQLSERVER dann Ich sehe nicht, wie und warum es für SQLSERVERAGENT
Gennady Vanin Геннадий Ванин
Unter Berufung auf RTFM : "Virtuelle Konten können nicht an einem
bereit
0

Sie sind Dienstkonten und können nicht als Benutzerkonten verwendet werden. Anstatt alles zu erklären, möchte ich, dass Sie einen schönen Blog von Rick lesen. siehe den folgenden Link.

Service- / Datenbankkonten

Anup Shah
quelle