Udostępnij za pośrednictwem


Wewnętrzny kontekst aktywacji

W tym temacie opisano kontekst wykonania procedura składowana, która została uruchomiona przez wewnętrzne aktywacja.

Kontekst zabezpieczeń

A queue configured for activation must also specify the user that the activation stored procedure runs as.SQL Server impersonates this user before starting the stored procedure.

When the stored procedure also specifies an EXECUTE AS clause, two impersonations occur.SQL Server first impersonates the user specified for the queue and executes the stored procedure.Gdy wykonuje procedura składowana, procedura personifikuje użytkownika określonego w jako EXECUTE klauzula procedury.

Należy zauważyć, że określonego dla powiązanie usługa zdalnej użytkownika jest na ogół innego użytkownika od użytkownika określone dla aktywacja.Uprawnienia wymagane dla każdego użytkownika jest także różnią się.powiązanie usługa zdalnej Użytkownik nie potrzebuje uprawnienia do odczytu z kolejki lub wykonać procedur przechowywanych w bazie danych, gdy użytkownik określony dla aktywacja nie jest konieczne uprawnienia do wysyłania wiadomości do usługa.Aby uzyskać więcej informacji o uprawnieniach użytkownika, zobacz Tożsamości i kontroli dostępu (Service Broker) i Service Broker okna dialogowego zabezpieczeń.

Ustawienia sesji

Service Broker wykonuje programy wewnętrznie uaktywniony usługa sesja tła odróżnić od wiadomości utworzone połączenie.Opcje zestaw dla tej sesja są domyślne opcje dla bazy danych.

W ramach sesja uruchomione przez Service Broker SQL Server zapisuje dane wyjściowe instrukcje drukowania i RAISERROR SQL Server dziennik błędów.Service Broker nie zapewnia parametry aktywowanego procedura składowana.Service Broker nie uzna wartości zwracane z aktywowanych procedura składowana i nie przetwarza zestawów wyników z aktywowanych procedura składowana.

Kontekst transakcji

An activated stored procedure is responsible for managing transactions.SQL Server does not start a transaction before activating the stored procedure, and the stored procedure runs in a different transaction context than the internal operation that activates the procedure.Omówienie zarządzania transakcji w aktywowanym procedur przechowywanych, zobacz Transakcyjna obsługa wiadomości.

Wykrywanie awarii

Aktywowany procedura składowana musi odbierać wiadomości z kolejki, która uaktywniona procedura.Jeśli procedura składowana kończy działanie bez odbierania wiadomości lub monitor kolejki wykryje, że procedura składowana nie odbiera wiadomości po krótkim czas-, monitor kolejki uzna procedura składowana, aby nie powiodło się.W takim przypadek monitor kolejki zatrzymuje aktywowanie procedura składowana.