MessageQueue.SetPermissions Methode

Definition

Fügt dem aktuellen Satz Berechtigungen hinzu. Hiermit wird festgelegt, wer Zugriff auf Eigenschaften und Meldungen in der Warteschlange erhält.

Überlädt

SetPermissions(AccessControlList)

Weist der Warteschlange anhand einer Zugriffssteuerungsliste Zugriffsrechte zu.

SetPermissions(MessageQueueAccessControlEntry)

Weist der Warteschlange anhand eines Zugriffssteuerungseintrags Zugriffsrechte zu.

SetPermissions(String, MessageQueueAccessRights)

Gewährt einem Computer, einer Gruppe oder einem Benutzer die angegebenen Zugriffsrechte.

SetPermissions(String, MessageQueueAccessRights, AccessControlEntryType)

Gewährt einem Computer, einer Gruppe oder einem einzelnen Benutzer die angegebenen Zugriffsrechte mit dem angegebenen Zugriffssteuerungstyp (Zulassen, Verweigern, Widerrufen oder Festlegen).

SetPermissions(AccessControlList)

Weist der Warteschlange anhand einer Zugriffssteuerungsliste Zugriffsrechte zu.

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)

Parameter

dacl
AccessControlList

Eine AccessControlList mit einem oder mehreren Zugriffsteuerungseinträgen, die die Vertrauensnehmer und die zu gewährenden Berechtigungen angeben.

Ausnahmen

Fehler beim Zugriff auf eine Message Queuing-Methode.

Beispiele

Das folgende Codebeispiel veranschaulicht die Verwendung von 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);

Hinweise

Verwenden Sie diese Überladung, um Rechte zu gewähren, zu verweigern oder zu widerrufen, indem Sie eine Sammlung von Zugriffssteuerungseinträgen verwenden, um Informationen zum Treuhänder und Berechtigungen anzugeben. Dies wird beispielsweise verwendet, um mehreren Benutzern gleichzeitig Berechtigungen zu erteilen.

Der Treuhänder, den Sie beim Erstellen des ace Parameters angeben, kann ein einzelner Benutzer, eine Gruppe von Benutzern oder ein Computer sein. Wenn der Treuhänder eine Einzelperson ist, verwenden Sie das Format DOMAIN\user. Sie können "." angeben, damit der Treuhänder den lokalen Computer angibt.

Die Berechtigungen, die Sie zuweisen, indem SetPermissions Sie der vorhandenen Liste Rechte hinzufügen. Standardmäßig hat der Ersteller einer öffentlichen oder privaten Warteschlange die volle Kontrolle, und die Domänengruppe Jeder hat die Berechtigung, Warteschlangeneigenschaften abzurufen, Berechtigungen abzurufen und in die Warteschlange zu schreiben. Wenn Sie aufrufen SetPermissions, werden die Benutzer- und Berechtigungsinformationen am Ende der vorhandenen Liste angefügt.

Das System untersucht die Einzelnen AccessControlEntry nacheinander, bis eines der folgenden Ereignisse auftritt:

  • Eine Zugriffsverweigerung AccessControlEntry verweigert explizit eines der angeforderten Zugriffsrechte für einen der im Zugriffstoken des Threads aufgeführten Trustees.

  • Mindestens ein Zugriffsberechtigungselemente AccessControlEntry für Trustees, die im Zugriffstoken des Threads aufgeführt sind, erteilen explizit alle angeforderten Zugriffsrechte.

  • Alle AccessControlEntry Elemente wurden überprüft, und es gibt immer noch mindestens ein angefordertes Zugriffsrecht, das nicht explizit zugelassen wurde. In diesem Fall wird der Zugriff implizit verweigert.

Wenn Sie den dacl Parameter erstellen, fügen Sie Ihrer AccessControlList Auflistung Instanzen hinzuAccessControlEntry. Wenn Sie jeden Zugriffssteuerungseintrag erstellen, können Sie generische oder Standardzugriffsrechte angeben. Die Rechte für eine Warteschlange können eine beliebige Kombination aus folgendem sein:

  • Löschen

  • Sicherheit lesen

  • Schreibsicherheit

  • Synchronisieren

  • Besitzer ändern

  • Lesen

  • Schreiben

  • Execute

  • Erforderlich

  • Alle

  • Keine

Bei diesen Rechten handelt es sich um eine Reihe von Bitflags, die Sie mit dem bitweisen OR-Operator kombinieren können.

  • Vollzugriff

  • Löschen einer Nachricht

  • Nachricht empfangen

  • Nachricht einsehen

  • Empfangen Journal Nachricht

  • Warteschlangeneigenschaften abrufen

  • Festlegen von Warteschlangeneigenschaften

  • Berechtigungen abrufen

  • Festlegen von Berechtigungen

  • Warteschlangenbesitz übernehmen

  • Nachricht schreiben

Die folgende Tabelle zeigt, ob diese Methode in verschiedenen Arbeitsgruppenmodi verfügbar ist.

Arbeitsgruppenmodus Verfügbar
Lokalem Computer Ja
Name des lokalen Computers und des direkten Formats Ja
Remotecomputer Nein
Name des Remotecomputers und des direkten Formats Nein

Weitere Informationen

Gilt für:

SetPermissions(MessageQueueAccessControlEntry)

Weist der Warteschlange anhand eines Zugriffssteuerungseintrags Zugriffsrechte zu.

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)

Parameter

ace
MessageQueueAccessControlEntry

Ein MessageQueueAccessControlEntry, der einen Benutzer, einen Zugriffstyp und einen Berechtigungstyp angibt.

Ausnahmen

Fehler beim Zugriff auf eine Message Queuing-Methode.

Beispiele

Das folgende Codebeispiel veranschaulicht die Verwendung von 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);

Hinweise

Verwenden Sie diese Überladung, um Rechte zu gewähren, zu verweigern oder zu widerrufen, indem Sie einen Zugriffssteuerungseintrag verwenden, um Treuhänder- und Rechteinformationen anzugeben.

Der Treuhänder, den Sie beim Erstellen des ace Parameters angeben, kann ein einzelner Benutzer, eine Gruppe von Benutzern oder ein Computer sein. Wenn der Treuhänder eine Einzelperson ist, verwenden Sie das Format DOMAIN\user. Sie können "." angeben, damit der Treuhänder den lokalen Computer angibt.

Die Berechtigungen, die Sie zuweisen, indem SetPermissions Sie der vorhandenen Liste Rechte hinzufügen. Standardmäßig hat der Ersteller einer öffentlichen oder privaten Warteschlange die volle Kontrolle, und die Domänengruppe Jeder hat die Berechtigung, Warteschlangeneigenschaften abzurufen, Berechtigungen abzurufen und in die Warteschlange zu schreiben. Wenn Sie aufrufen SetPermissions, werden die Benutzer- und Berechtigungsinformationen am Ende der vorhandenen Liste angefügt.

Das System untersucht die Einzelnen AccessControlEntry nacheinander, bis eines der folgenden Ereignisse auftritt:

  • Eine Zugriffsverweigerung AccessControlEntry verweigert explizit eines der angeforderten Zugriffsrechte für einen der im Zugriffstoken des Threads aufgeführten Trustees.

  • Mindestens ein Zugriffsberechtigungselemente AccessControlEntry für Trustees, die im Zugriffstoken des Threads aufgeführt sind, erteilen explizit alle angeforderten Zugriffsrechte.

  • Alle AccessControlEntry Elemente wurden überprüft, und es gibt immer noch mindestens ein angefordertes Zugriffsrecht, das nicht explizit zugelassen wurde. In diesem Fall wird der Zugriff implizit verweigert.

Die Rechte für eine Warteschlange, die Sie im rights Parameter angeben, wenn Sie Ihre MessageQueueAccessControlEntryerstellen, können eine beliebige Kombination aus folgendem sein:

  • Vollzugriff

  • Löschen einer Nachricht

  • Nachricht empfangen

  • Nachricht einsehen

  • Empfangen Journal Nachricht

  • Warteschlangeneigenschaften abrufen

  • Festlegen von Warteschlangeneigenschaften

  • Berechtigungen abrufen

  • Festlegen von Berechtigungen

  • Warteschlangenbesitz übernehmen

  • Nachricht schreiben

Der rights Parameter, den Sie im Konstruktor für den ace Parameter angeben, ist ein Flag der MessageQueueAccessRights Enumeration. Es stellt eine Reihe von Bitflags dar, die Sie mit dem bitweisen Operator ODER kombinieren können, wenn Sie den rights Parameter erstellen.

Die folgende Tabelle zeigt, ob diese Methode in verschiedenen Arbeitsgruppenmodi verfügbar ist.

Arbeitsgruppenmodus Verfügbar
Lokalem Computer Ja
Name des lokalen Computers und des direkten Formats Ja
Remotecomputer Nein
Name des Remotecomputers und des direkten Formats Nein

Weitere Informationen

Gilt für:

SetPermissions(String, MessageQueueAccessRights)

Gewährt einem Computer, einer Gruppe oder einem Benutzer die angegebenen Zugriffsrechte.

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)

Parameter

user
String

Der einzelne Benutzer, die Gruppe oder der Computer, der zusätzliche Rechte für die Warteschlange erhält.

rights
MessageQueueAccessRights

Ein MessageQueueAccessRights, das den Satz von Rechten für die Warteschlange darstellt, die Message Queuing dem übergebenen user zuweist.

Ausnahmen

user ist null.

Fehler beim Zugriff auf eine Message Queuing-Methode.

Beispiele

Das folgende Codebeispiel veranschaulicht die Verwendung von 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);

Hinweise

Verwenden Sie diese Überladung, um einem einzelnen Benutzer bestimmte Rechte zu gewähren. Der Benutzer kann ein beliebiger gültiger Treuhänder sein, einschließlich einzelner Benutzer, Benutzergruppen oder eines Computers. Wenn der Benutzer eine Einzelperson ist, verwenden Sie das Format DOMAIN\user für den user Parameter. Sie können "." für den user Parameter angeben, um den lokalen Computer anzugeben.

Die Berechtigungen, die Sie zuweisen, indem SetPermissions Sie der vorhandenen Liste Rechte hinzufügen. Standardmäßig hat der Ersteller einer öffentlichen oder privaten Warteschlange die volle Kontrolle, und die Domänengruppe Jeder hat die Berechtigung, Warteschlangeneigenschaften abzurufen, Berechtigungen abzurufen und in die Warteschlange zu schreiben. Wenn Sie aufrufen SetPermissions, werden die Benutzer- und Berechtigungsinformationen am Ende der vorhandenen Liste angefügt.

Das System untersucht die Einzelnen AccessControlEntry nacheinander, bis eines der folgenden Ereignisse auftritt:

  • Eine Zugriffsverweigerung AccessControlEntry verweigert explizit eines der angeforderten Zugriffsrechte für einen der im Zugriffstoken des Threads aufgeführten Trustees.

  • Mindestens ein Zugriffsberechtigungselemente AccessControlEntry für Trustees, die im Zugriffstoken des Threads aufgeführt sind, erteilen explizit alle angeforderten Zugriffsrechte.

  • Alle AccessControlEntry Elemente wurden überprüft, und es gibt immer noch mindestens ein angefordertes Zugriffsrecht, das nicht explizit zugelassen wurde. In diesem Fall wird der Zugriff implizit verweigert.

Die rechte für eine Warteschlange, die rights im -Parameter angegeben sind, kann eine beliebige Kombination der folgenden sein:

  • Vollzugriff

  • Löschen einer Nachricht

  • Nachricht empfangen

  • Nachricht einsehen

  • Empfangen Journal Nachricht

  • Warteschlangeneigenschaften abrufen

  • Festlegen von Warteschlangeneigenschaften

  • Berechtigungen abrufen

  • Festlegen von Berechtigungen

  • Warteschlangenbesitz übernehmen

  • Nachricht schreiben

Die MessageQueueAccessRights Enumeration stellt eine Reihe von Bitflags dar, die Sie mit dem bitweisen Operator OR kombinieren können, um den rights Parameter zu erstellen.

Mit dieser Überladung können Sie nur Berechtigungen erteilen. Sie können sie nicht widerrufen oder verweigern. Sie müssen eine andere Überladung verwenden, um explizit eine AccessControlEntryType andere als Allowzu gewähren.

Die folgende Tabelle zeigt, ob diese Methode in verschiedenen Arbeitsgruppenmodi verfügbar ist.

Arbeitsgruppenmodus Verfügbar
Lokalem Computer Ja
Name des lokalen Computers und des direkten Formats Ja
Remotecomputer Nein
Name des Remotecomputers und des direkten Formats Nein

Weitere Informationen

Gilt für:

SetPermissions(String, MessageQueueAccessRights, AccessControlEntryType)

Gewährt einem Computer, einer Gruppe oder einem einzelnen Benutzer die angegebenen Zugriffsrechte mit dem angegebenen Zugriffssteuerungstyp (Zulassen, Verweigern, Widerrufen oder Festlegen).

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)

Parameter

user
String

Der einzelne Benutzer, die Gruppe oder der Computer, der zusätzliche Rechte für die Warteschlange erhält.

rights
MessageQueueAccessRights

Ein MessageQueueAccessRights, das den Satz von Rechten für die Warteschlange darstellt, die Message Queuing dem übergebenen user zuweist.

entryType
AccessControlEntryType

Ein AccessControlEntryType, der angibt, ob die im rights-Parameter angegebenen Berechtigungen gewährt, verweigert oder widerrufen werden sollen.

Ausnahmen

Fehler beim Zugriff auf eine Message Queuing-Methode.

Beispiele

Das folgende Codebeispiel veranschaulicht die Verwendung von 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);

Hinweise

Verwenden Sie diese Überladung, um einem einzelnen Benutzer bestimmte Rechte zu gewähren, zu verweigern oder zu widerrufen. Der Benutzer kann ein beliebiger gültiger Treuhänder sein, einschließlich einzelner Benutzer, Benutzergruppen oder eines Computers. Wenn der Benutzer eine Einzelperson ist, verwenden Sie das Format DOMAIN\user für den user Parameter. Sie können "." für den user Parameter angeben, um den lokalen Computer anzugeben.

Die Berechtigungen, die Sie zuweisen, indem SetPermissions Sie der vorhandenen Liste Rechte hinzufügen. Standardmäßig hat der Ersteller einer öffentlichen oder privaten Warteschlange die volle Kontrolle, und die Domänengruppe Jeder hat die Berechtigung, Warteschlangeneigenschaften abzurufen, Berechtigungen abzurufen und in die Warteschlange zu schreiben. Wenn Sie aufrufen SetPermissions, werden die Benutzer- und Berechtigungsinformationen am Ende der vorhandenen Liste angefügt.

Das System untersucht die Einzelnen AccessControlEntry nacheinander, bis eines der folgenden Ereignisse auftritt:

  • Eine Zugriffsverweigerung AccessControlEntry verweigert explizit eines der angeforderten Zugriffsrechte für einen der im Zugriffstoken des Threads aufgeführten Trustees.

  • Mindestens ein Zugriffsberechtigungselemente AccessControlEntry für Trustees, die im Zugriffstoken des Threads aufgeführt sind, erteilen explizit alle angeforderten Zugriffsrechte.

  • Alle AccessControlEntry Elemente wurden überprüft, und es gibt immer noch mindestens ein angefordertes Zugriffsrecht, das nicht explizit zugelassen wurde. In diesem Fall wird der Zugriff implizit verweigert.

Die rechte für eine Warteschlange, die rights im -Parameter angegeben sind, kann eine beliebige Kombination der folgenden sein:

  • Vollzugriff

  • Löschen einer Nachricht

  • Nachricht empfangen

  • Nachricht einsehen

  • Empfangen Journal Nachricht

  • Warteschlangeneigenschaften abrufen

  • Festlegen von Warteschlangeneigenschaften

  • Berechtigungen abrufen

  • Festlegen von Berechtigungen

  • Warteschlangenbesitz übernehmen

  • Nachricht schreiben

Die MessageQueueAccessRights Enumeration stellt eine Reihe von Bitflags dar, die Sie mit dem bitweisen Operator OR kombinieren können, um den rights Parameter zu erstellen.

Die folgende Tabelle zeigt, ob diese Methode in verschiedenen Arbeitsgruppenmodi verfügbar ist.

Arbeitsgruppenmodus Verfügbar
Lokalem Computer Ja
Name des lokalen Computers und des direkten Formats Ja
Remotecomputer Nein
Name des Remotecomputers und des direkten Formats Nein

Weitere Informationen

Gilt für: