MessageQueue.SetPermissions Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Dodaje uprawnienia do bieżącego zestawu. To kontroluje, kto ma prawa dostępu do właściwości kolejki i komunikatów w kolejce.
Przeciążenia
SetPermissions(AccessControlList) |
Przypisuje prawa dostępu do kolejki na podstawie zawartości listy kontroli dostępu. |
SetPermissions(MessageQueueAccessControlEntry) |
Przypisuje prawa dostępu do kolejki na podstawie zawartości wpisu kontroli dostępu. |
SetPermissions(String, MessageQueueAccessRights) |
Daje komputer, grupę lub użytkownika określone prawa dostępu. |
SetPermissions(String, MessageQueueAccessRights, AccessControlEntryType) |
Nadaje komputerowi, grupie lub użytkownikowi określone prawa dostępu z określonym typem kontroli dostępu (zezwalaj, odmawiaj, odwoływanie lub ustawianie). |
SetPermissions(AccessControlList)
Przypisuje prawa dostępu do kolejki na podstawie zawartości listy kontroli dostępu.
public:
void SetPermissions(System::Messaging::AccessControlList ^ dacl);
public void SetPermissions (System.Messaging.AccessControlList dacl);
member this.SetPermissions : System.Messaging.AccessControlList -> unit
Public Sub SetPermissions (dacl As AccessControlList)
Parametry
- dacl
- AccessControlList
Element AccessControlList zawierający co najmniej jeden wpis kontroli dostępu określający relacje zaufania i uprawnienia do udzielenia.
Wyjątki
Wystąpił błąd podczas uzyskiwania dostępu do metody kolejkowania komunikatów.
Przykłady
W poniższym przykładzie kodu pokazano użycie metody SetPermissions(AccessControlList).
// Connect to a queue on the local computer.
MessageQueue^ queue = gcnew MessageQueue(".\\exampleQueue");
// Create an AccessControlList.
AccessControlList^ list = gcnew AccessControlList();
// Create a new trustee to represent the "Everyone" user group.
Trustee^ tr = gcnew Trustee("Everyone");
// Create an AccessControlEntry, granting the trustee read access to
// the queue.
AccessControlEntry^ entry = gcnew AccessControlEntry(
tr, GenericAccessRights::Read,
StandardAccessRights::Read,
AccessControlEntryType::Allow);
// Add the AccessControlEntry to the AccessControlList.
list->Add(entry);
// Apply the AccessControlList to the queue.
queue->SetPermissions(list);
queue->Close();
// Connect to a queue on the local computer.
MessageQueue queue = new MessageQueue(".\\exampleQueue");
// Create an AccessControlList.
AccessControlList list = new AccessControlList();
// Create a new trustee to represent the "Everyone" user group.
Trustee tr = new Trustee("Everyone");
// Create an AccessControlEntry, granting the trustee read access to
// the queue.
AccessControlEntry entry = new AccessControlEntry(
tr, GenericAccessRights.Read,
StandardAccessRights.Read,
AccessControlEntryType.Allow);
// Add the AccessControlEntry to the AccessControlList.
list.Add(entry);
// Apply the AccessControlList to the queue.
queue.SetPermissions(list);
Uwagi
To przeciążenie umożliwia przyznawanie, odrzucanie lub odwoływanie praw przy użyciu kolekcji wpisów kontroli dostępu w celu określenia informacji o relacjach zaufania i uprawnieniach. Służy to na przykład do udzielania uprawnień wielu użytkownikom w tym samym czasie.
Powiernik określony podczas konstruowania parametru ace
może być indywidualnym użytkownikiem, grupą użytkowników lub komputerem. Jeśli trustee jest osobą indywidualną, użyj formatu DOMAIN
\user
. Możesz określić wartość "." dla zaufania, aby wskazać komputer lokalny.
Uprawnienia przypisywane za pomocą SetPermissions praw dodawania do istniejącej listy. Domyślnie twórca kolejki publicznej lub prywatnej ma pełną kontrolę, a grupa domeny Wszyscy ma uprawnienia do pobierania właściwości kolejki, uzyskiwania uprawnień i zapisu w kolejce. Po wywołaniu wywołania SetPermissionsinformacje o użytkowniku i uprawnieniach są dołączane do dołu istniejącej listy.
System sprawdza każdy AccessControlEntry z nich w sekwencji, dopóki nie wystąpi jedno z następujących zdarzeń:
Odmowa AccessControlEntry dostępu jawnie zaprzecza dowolnym żądanym prawom dostępu do jednego z zaufanych osób wymienionych w tokenie dostępu wątku.
Co najmniej jeden element dozwolony AccessControlEntry do dostępu dla zaufanych osób wymienionych w tokenie dostępu wątku jawnie udziela wszystkich żądanych praw dostępu.
Wszystkie AccessControlEntry elementy zostały sprawdzone i nadal istnieje co najmniej jedno żądane prawo dostępu, które nie zostało jawnie dozwolone, w takim przypadku dostęp jest niejawnie odrzucany.
Podczas konstruowania parametru dacl
dodasz AccessControlEntry wystąpienia do AccessControlList kolekcji. Podczas konstruowania każdego wpisu kontroli dostępu można określić ogólne lub standardowe prawa dostępu. Prawa do kolejki mogą być dowolną kombinacją następujących elementów:
Usuń
Odczyt zabezpieczeń
Zapisywanie zabezpieczeń
Synchronizowanie
Modyfikowanie właściciela
Odczyt
Zapisywanie
Wykonaj polecenie
Wymagane
Wszystko
Brak
Te prawa są zestawem flag bitowych, które można połączyć za pomocą operatora OR bitowego.
Pełna kontrola
Usuń wiadomość
Odbieranie wiadomości
komunikat Podgląd
Odbieranie komunikatu Dziennik
Pobieranie właściwości kolejki
Ustawianie właściwości kolejki
Uzyskiwanie uprawnień
Ustawianie uprawnień
Przejmowanie własności kolejki
Napisz wiadomość
W poniższej tabeli przedstawiono, czy ta metoda jest dostępna w różnych trybach grupy roboczej.
Tryb grupy roboczej | Dostępne |
---|---|
Komputer lokalny | Tak |
Komputer lokalny i nazwa formatu bezpośredniego | Tak |
Komputer zdalny | Nie |
Nazwa komputera zdalnego i formatu bezpośredniego | Nie |
Zobacz też
Dotyczy
SetPermissions(MessageQueueAccessControlEntry)
Przypisuje prawa dostępu do kolejki na podstawie zawartości wpisu kontroli dostępu.
public:
void SetPermissions(System::Messaging::MessageQueueAccessControlEntry ^ ace);
public void SetPermissions (System.Messaging.MessageQueueAccessControlEntry ace);
member this.SetPermissions : System.Messaging.MessageQueueAccessControlEntry -> unit
Public Sub SetPermissions (ace As MessageQueueAccessControlEntry)
Parametry
Element MessageQueueAccessControlEntry określający użytkownika, typ dostępu i typ uprawnień.
Wyjątki
Wystąpił błąd podczas uzyskiwania dostępu do metody kolejkowania komunikatów.
Przykłady
W poniższym przykładzie kodu pokazano użycie metody SetPermissions(MessageQueueAccessControlEntry).
// Connect to a queue on the local computer.
MessageQueue^ queue = gcnew MessageQueue(".\\exampleQueue");
// Create a new trustee to represent the "Everyone" user group.
Trustee^ tr = gcnew Trustee("Everyone");
// Create a MessageQueueAccessControlEntry, granting the trustee the
// right to receive messages from the queue.
MessageQueueAccessControlEntry^ entry = gcnew
MessageQueueAccessControlEntry(
tr, MessageQueueAccessRights::ReceiveMessage,
AccessControlEntryType::Allow);
// Apply the MessageQueueAccessControlEntry to the queue.
queue->SetPermissions(entry);
queue->Close();
// Connect to a queue on the local computer.
MessageQueue queue = new MessageQueue(".\\exampleQueue");
// Create a new trustee to represent the "Everyone" user group.
Trustee tr = new Trustee("Everyone");
// Create a MessageQueueAccessControlEntry, granting the trustee the
// right to receive messages from the queue.
MessageQueueAccessControlEntry entry = new
MessageQueueAccessControlEntry(
tr, MessageQueueAccessRights.ReceiveMessage,
AccessControlEntryType.Allow);
// Apply the MessageQueueAccessControlEntry to the queue.
queue.SetPermissions(entry);
Uwagi
Użyj tego przeciążenia, aby udzielić, odmówić lub odwołać praw przy użyciu wpisu kontroli dostępu, aby określić informacje o relacjach zaufania i prawach.
Powiernik określony podczas konstruowania parametru ace
może być indywidualnym użytkownikiem, grupą użytkowników lub komputerem. Jeśli trustee jest osobą indywidualną, użyj formatu DOMAIN
\user
. Możesz określić wartość "." dla zaufania, aby wskazać komputer lokalny.
Uprawnienia przypisywane za pomocą SetPermissions praw dodawania do istniejącej listy. Domyślnie twórca kolejki publicznej lub prywatnej ma pełną kontrolę, a grupa domeny Wszyscy ma uprawnienia do pobierania właściwości kolejki, uzyskiwania uprawnień i zapisu w kolejce. Po wywołaniu wywołania SetPermissionsinformacje o użytkowniku i uprawnieniach są dołączane do dołu istniejącej listy.
System sprawdza każdy AccessControlEntry z nich w sekwencji, dopóki nie wystąpi jedno z następujących zdarzeń:
Odmowa AccessControlEntry dostępu jawnie zaprzecza dowolnym żądanym prawom dostępu do jednego z zaufanych osób wymienionych w tokenie dostępu wątku.
Co najmniej jeden element dozwolony AccessControlEntry do dostępu dla zaufanych osób wymienionych w tokenie dostępu wątku jawnie udziela wszystkich żądanych praw dostępu.
Wszystkie AccessControlEntry elementy zostały sprawdzone i nadal istnieje co najmniej jedno żądane prawo dostępu, które nie zostało jawnie dozwolone, w takim przypadku dostęp jest niejawnie odrzucany.
Prawa do kolejki, które określasz w parametrze rights
podczas konstruowania MessageQueueAccessControlEntryobiektu , mogą być dowolną kombinacją następujących elementów:
Pełna kontrola
Usuń wiadomość
Odbieranie wiadomości
komunikat Podgląd
Odbieranie komunikatu Dziennik
Pobieranie właściwości kolejki
Ustawianie właściwości kolejki
Uzyskiwanie uprawnień
Ustawianie uprawnień
Przejmowanie własności kolejki
Napisz wiadomość
Parametr rights
określony w konstruktorze parametru ace
jest flagą wyliczenia MessageQueueAccessRights . Reprezentuje zestaw flag bitowych, które można połączyć za pomocą operatora bitowego LUB podczas kompilowania parametru rights
.
W poniższej tabeli przedstawiono, czy ta metoda jest dostępna w różnych trybach grupy roboczej.
Tryb grupy roboczej | Dostępne |
---|---|
Komputer lokalny | Tak |
Komputer lokalny i nazwa formatu bezpośredniego | Tak |
Komputer zdalny | Nie |
Nazwa komputera zdalnego i bezpośredniego formatu | Nie |
Zobacz też
Dotyczy
SetPermissions(String, MessageQueueAccessRights)
Nadaje komputerowi, grupie lub użytkownikowi określone prawa dostępu.
public:
void SetPermissions(System::String ^ user, System::Messaging::MessageQueueAccessRights rights);
public void SetPermissions (string user, System.Messaging.MessageQueueAccessRights rights);
member this.SetPermissions : string * System.Messaging.MessageQueueAccessRights -> unit
Public Sub SetPermissions (user As String, rights As MessageQueueAccessRights)
Parametry
- user
- String
Osoba, grupa lub komputer, który uzyskuje dodatkowe prawa do kolejki.
- rights
- MessageQueueAccessRights
Element MessageQueueAccessRights wskazujący zestaw praw do kolejki, którą kolejka komunikatów przypisuje do przekazanego user
.
Wyjątki
Wartość user
to null
.
Wystąpił błąd podczas uzyskiwania dostępu do metody kolejkowania komunikatów.
Przykłady
W poniższym przykładzie kodu pokazano użycie metody SetPermissions(String, MessageQueueAccessRights).
// Connect to a queue on the local computer.
MessageQueue^ queue = gcnew MessageQueue(".\\exampleQueue");
// Grant all users in the "Everyone" user group the right to receive
// messages from the queue.
queue->SetPermissions("Everyone",
MessageQueueAccessRights::ReceiveMessage);
queue->Close();
// Connect to a queue on the local computer.
MessageQueue queue = new MessageQueue(".\\exampleQueue");
// Grant all users in the "Everyone" user group the right to receive
// messages from the queue.
queue.SetPermissions("Everyone", MessageQueueAccessRights.ReceiveMessage);
Uwagi
Użyj tego przeciążenia, aby przyznać określone prawa poszczególnym użytkownikom. Użytkownik może być dowolnym prawidłowym powiernikem, który obejmuje poszczególnych użytkowników, grupy użytkowników lub komputer. Jeśli użytkownik jest użytkownikiem indywidualnym, użyj formatu DOMAIN
\user
parametru .user
Dla parametru user
można określić wartość ".", aby wskazać komputer lokalny.
Uprawnienia przypisywane za pomocą SetPermissions praw do istniejącej listy. Domyślnie twórca kolejki publicznej lub prywatnej ma pełną kontrolę, a grupa domeny Wszyscy mają uprawnienia do pobierania właściwości kolejki, uzyskiwania uprawnień i zapisywania w kolejce. Po wywołaniu metody SetPermissionsinformacje o użytkowniku i uprawnieniach są dołączane do dołu istniejącej listy.
System sprawdza każdą AccessControlEntry sekwencję do momentu wystąpienia jednego z następujących zdarzeń:
Odmowa dostępu AccessControlEntry jawnie odrzuca dowolne z żądanych praw dostępu do jednego z powierniczych wymienionych w tokenie dostępu wątku.
Co najmniej jeden element dozwolony dostęp AccessControlEntry dla zaufanych osób wymienionych w tokenie dostępu wątku jawnie przyznaj wszystkie żądane prawa dostępu.
Wszystkie AccessControlEntry elementy zostały sprawdzone i nadal istnieje co najmniej jedno żądane prawo dostępu, które nie zostało jawnie dozwolone, w takim przypadku dostęp jest niejawnie blokowany.
Prawa do kolejki określone w parametrze rights
mogą być dowolną kombinacją następujących elementów:
Pełna kontrola
Usuń wiadomość
Odbieranie komunikatu
komunikat Podgląd
Odbieranie komunikatu Dziennik
Pobieranie właściwości kolejki
Ustawianie właściwości kolejki
Uzyskiwanie uprawnień
Ustawianie uprawnień
Przejęcie własności kolejki
Napisz wiadomość
Wyliczenie MessageQueueAccessRights reprezentuje zestaw flag bitowych, które można połączyć za pomocą operatora bitowego LUB w celu skompilowania parametru rights
.
Za pomocą tego przeciążenia można udzielić uprawnień tylko; nie można ich odwołać ani odmówić. Należy użyć innego przeciążenia, aby jawnie udzielić innym AccessControlEntryType niż Allow
.
W poniższej tabeli przedstawiono, czy ta metoda jest dostępna w różnych trybach grupy roboczej.
Tryb grupy roboczej | Dostępne |
---|---|
Komputer lokalny | Tak |
Nazwa komputera lokalnego i bezpośredniego formatu | Tak |
Komputer zdalny | Nie |
Nazwa komputera zdalnego i bezpośredniego formatu | Nie |
Zobacz też
Dotyczy
SetPermissions(String, MessageQueueAccessRights, AccessControlEntryType)
Nadaje komputerowi, grupie lub użytkownikowi określone prawa dostępu z określonym typem kontroli dostępu (zezwalaj, odmów, odwoływanie lub ustawianie).
public:
void SetPermissions(System::String ^ user, System::Messaging::MessageQueueAccessRights rights, System::Messaging::AccessControlEntryType entryType);
public void SetPermissions (string user, System.Messaging.MessageQueueAccessRights rights, System.Messaging.AccessControlEntryType entryType);
member this.SetPermissions : string * System.Messaging.MessageQueueAccessRights * System.Messaging.AccessControlEntryType -> unit
Public Sub SetPermissions (user As String, rights As MessageQueueAccessRights, entryType As AccessControlEntryType)
Parametry
- user
- String
Osoba, grupa lub komputer, który uzyskuje dodatkowe prawa do kolejki.
- rights
- MessageQueueAccessRights
Element MessageQueueAccessRights wskazujący zestaw praw do kolejki, którą kolejka komunikatów przypisuje do przekazanego user
.
- entryType
- AccessControlEntryType
Element AccessControlEntryType określający, czy należy udzielić, odmówić lub odwołać uprawnienia określone przez rights
parametr .
Wyjątki
Wystąpił błąd podczas uzyskiwania dostępu do metody kolejkowania komunikatów.
Przykłady
W poniższym przykładzie kodu pokazano użycie metody SetPermissions(String, MessageQueueAccessRights, AccessControlEntryType).
// Connect to a queue on the local computer.
MessageQueue^ queue = gcnew MessageQueue(".\\exampleQueue");
// Grant all users in the "Everyone" user group the right to receive
// messages from the queue.
queue->SetPermissions("Everyone",
MessageQueueAccessRights::ReceiveMessage,
AccessControlEntryType::Allow);
queue->Close();
// Connect to a queue on the local computer.
MessageQueue queue = new MessageQueue(".\\exampleQueue");
// Grant all users in the "Everyone" user group the right to receive
// messages from the queue.
queue.SetPermissions("Everyone", MessageQueueAccessRights.ReceiveMessage,
AccessControlEntryType.Allow);
Uwagi
Użyj tego przeciążenia, aby udzielić, odmówić lub odwołać określone prawa dla pojedynczego użytkownika. Użytkownik może być dowolnym prawidłowym powiernikem, który obejmuje poszczególnych użytkowników, grupy użytkowników lub komputer. Jeśli użytkownik jest użytkownikiem indywidualnym, użyj formatu DOMAIN
\user
parametru .user
Dla parametru user
można określić wartość ".", aby wskazać komputer lokalny.
Uprawnienia przypisywane za pomocą SetPermissions praw do istniejącej listy. Domyślnie twórca kolejki publicznej lub prywatnej ma pełną kontrolę, a grupa domeny Wszyscy mają uprawnienia do pobierania właściwości kolejki, uzyskiwania uprawnień i zapisywania w kolejce. Po wywołaniu metody SetPermissionsinformacje o użytkowniku i uprawnieniach są dołączane do dołu istniejącej listy.
System sprawdza każdą AccessControlEntry sekwencję do momentu wystąpienia jednego z następujących zdarzeń:
Odmowa dostępu AccessControlEntry jawnie odrzuca dowolne z żądanych praw dostępu do jednego z powierniczych wymienionych w tokenie dostępu wątku.
Co najmniej jeden element dozwolony dostęp AccessControlEntry dla zaufanych osób wymienionych w tokenie dostępu wątku jawnie przyznaj wszystkie żądane prawa dostępu.
Wszystkie AccessControlEntry elementy zostały sprawdzone i nadal istnieje co najmniej jedno żądane prawo dostępu, które nie zostało jawnie dozwolone, w takim przypadku dostęp jest niejawnie blokowany.
Prawa do kolejki określone w parametrze rights
mogą być dowolną kombinacją następujących elementów:
Pełna kontrola
Usuń wiadomość
Odbieranie komunikatu
komunikat Podgląd
Odbieranie komunikatu Dziennik
Pobieranie właściwości kolejki
Ustawianie właściwości kolejki
Uzyskiwanie uprawnień
Ustawianie uprawnień
Przejęcie własności kolejki
Napisz wiadomość
Wyliczenie MessageQueueAccessRights reprezentuje zestaw flag bitowych, które można połączyć za pomocą operatora bitowego LUB w celu skompilowania parametru rights
.
W poniższej tabeli przedstawiono, czy ta metoda jest dostępna w różnych trybach grupy roboczej.
Tryb grupy roboczej | Dostępne |
---|---|
Komputer lokalny | Tak |
Nazwa komputera lokalnego i bezpośredniego formatu | Tak |
Komputer zdalny | Nie |
Nazwa komputera zdalnego i bezpośredniego formatu | Nie |