Give Others Ownership of a Job
In diesem Artikel erfahren Sie, wie Sie den Besitz von Microsoft SQL Server-Agent-Aufträgen einem anderen Benutzer zuweisen.
Vorbereitungen: Einschränkungen, Sicherheit
So ändern Sie den Besitz eines Auftrags mit:
Vorbereitungen
Einschränkungen
Um einen Auftrag erstellen zu können, muss ein Benutzer Mitglied einer der festen Datenbankrollen des SQL Server -Agents oder Mitglied der festen Serverrolle sysadmin sein. Ein Auftrag kann nur von seinem Besitzer bzw. Mitgliedern der sysadmin -Rolle bearbeitet werden. Weitere Informationen zu den festen Datenbankrollen des SQL Server -Agents finden Sie unter Feste Datenbankrollen des SQL Server-Agents.
Den Besitzer eines Auftrags können Sie nur ändern, wenn Sie als Systemadministrator angemeldet sind.
Wenn Sie einen Auftrag einem anderen Anmeldenamen zuweisen, ist nicht sichergestellt, dass die Berechtigungen des neuen Besitzers zum erfolgreichen Ausführen des Auftrags ausreichen.
Sicherheit
Aus Sicherheitsgründen kann nur der Auftragsbesitzer bzw. ein Mitglied der sysadmin -Rolle die Definition des Auftrags ändern. Nur Mitglieder der festen Serverrolle sysadmin können anderen Benutzern den Auftragsbesitz zuweisen. Zudem können sie unabhängig vom Auftragsbesitzer alle Aufträge ausführen.
Hinweis
Wenn Sie den Auftragsbesitz einem Benutzer zuweisen, der kein Mitglied der festen Serverrolle sysadmin ist, und wenn in dem Auftrag Schritte ausgeführt werden, für die Proxykonten erforderlich sind (beispielsweise die SSIS -Paketausführung), müssen Sie sicherstellen, dass der Benutzer auf dieses Proxykonto zugreifen kann. Andernfalls schlägt der Auftrag fehl.
Berechtigungen
Ausführliche Informationen finden Sie unter Implementieren der SQL Server-Agent-Sicherheit.
Verwendung von SQL Server Management Studio
So ändern Sie den Besitz eines Auftrags
Stellen Sie im Objekt-Explorer eine Verbindung mit einer Instanz von SQL Server-Datenbank-Engineher, und erweitern Sie dann diese Instanz.
Erweitern Sie zunächst den SQL Server-Agent, anschließend Aufträge, klicken Sie mit der rechten Maustaste auf den Auftrag, und wählen Sie dann Eigenschaftenaus.
Wählen Sie aus der Liste Besitzer einen Anmeldenamen aus. Den Besitzer eines Auftrags können Sie nur ändern, wenn Sie als Systemadministrator angemeldet sind.
Wenn Sie einen Auftrag einem anderen Anmeldenamen zuweisen, ist nicht sichergestellt, dass die Berechtigungen des neuen Besitzers zum erfolgreichen Ausführen des Auftrags ausreichen.
Verwenden von Transact-SQL
So ändern Sie den Besitz eines Auftrags
Stellen Sie im Objekt-Explorer eine Verbindung mit einer Instanz von Database Engine (Datenbankmodul) her, und erweitern Sie dann diese Instanz.
Klicken Sie auf der Symbolleiste auf Neue Abfrage.
Geben Sie im Abfragefenster die folgenden Anweisungen ein, bei denen die gespeicherte Systemprozedur sp_manage_jobs_by_login (Transact-SQL) verwendet wird. Im folgenden Beispiel erfolgt eine Neuzuweisung aller Aufträge von
danw
anfran??oisa
.USE msdb ; GO EXEC dbo.sp_manage_jobs_by_login @action = N'REASSIGN', @current_owner_login_name = N'danw', @new_owner_login_name = N'fran??oisa' ; GO
Verwendung von SQL Server Management Objects
So ändern Sie den Besitz eines Auftrags
- Rufen Sie die
Job
-Klasse in einer Programmiersprache Ihrer Wahl auf, z. B. Visual Basic, Visual C# oder PowerShell. Beispielcode hierzu finden Sie unter Planen von automatischen, administrativen Tasks im SQL Server-Agent.