Condividi tramite


MessageQueue.SetPermissions Metodo

Definizione

Aggiunge le autorizzazioni al set di autorizzazioni corrente. Controlla gli utenti che dispongono dei diritti di accesso alle proprietà della coda e ai messaggi presenti nella coda.

Overload

SetPermissions(AccessControlList)

Assegna i diritti di accesso alla coda in base al contenuto di un elenco di controllo di accesso.

SetPermissions(MessageQueueAccessControlEntry)

Assegna i diritti di accesso alla coda in base al contenuto di una voce di controllo di accesso.

SetPermissions(String, MessageQueueAccessRights)

Fornisce a un computer, a un gruppo o a un utente i diritti di accesso specificati.

SetPermissions(String, MessageQueueAccessRights, AccessControlEntryType)

Concede a un computer, a un utente o a un gruppo di utenti i diritti di accesso specificati con il tipo di controllo di accesso specificato (concessione, rifiuto, revoca o impostazione).

SetPermissions(AccessControlList)

Assegna i diritti di accesso alla coda in base al contenuto di un elenco di controllo di accesso.

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)

Parametri

dacl
AccessControlList

Oggetto AccessControlList contenente una o più voci di controllo di accesso che specificano le terze parti trusted e le autorizzazioni da concedere.

Eccezioni

Si è verificato un errore durante l'accesso a un metodo di Accodamento messaggi.

Esempio

L'esempio di codice seguente illustra l'uso di 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);

Commenti

Utilizzare questo overload per concedere, negare o revocare i diritti usando una raccolta di voci di controllo di accesso per specificare informazioni sul trustee e sulle autorizzazioni. Viene usato, ad esempio, per concedere autorizzazioni a più utenti contemporaneamente.

Il trustee specificato quando si costruisce il ace parametro può essere un singolo utente, un gruppo di utenti o un computer. Se il trustee è un individuo, usare il formato DOMAIN\user. È possibile specificare "." per il trustee per indicare il computer locale.

Autorizzazioni assegnate tramite SetPermissions l'aggiunta di diritti all'elenco esistente. Per impostazione predefinita, l'autore di una coda pubblica o privata ha il controllo completo e il gruppo di dominio Everyone ha l'autorizzazione per ottenere le proprietà della coda, ottenere le autorizzazioni e scrivere nella coda. Quando si chiama SetPermissions, le informazioni sull'utente e sulle autorizzazioni vengono aggiunte alla fine dell'elenco esistente.

Il sistema esamina ogni AccessControlEntry in sequenza fino a quando non si verifica uno degli eventi seguenti:

  • Un accesso negato AccessControlEntry nega esplicitamente uno dei diritti di accesso richiesti a uno dei trustee elencati nel token di accesso del thread.

  • Uno o più elementi consentiti AccessControlEntry per l'accesso per i trustee elencati nel token di accesso del thread concedono in modo esplicito tutti i diritti di accesso richiesti.

  • Tutti gli AccessControlEntry elementi sono stati controllati ed è ancora presente almeno un diritto di accesso richiesto che non è stato consentito in modo esplicito, nel qual caso l'accesso viene negato in modo implicito.

Quando si costruisce il dacl parametro , si aggiungono AccessControlEntry istanze alla AccessControlList raccolta. Quando si costruisce ogni voce di controllo di accesso, è possibile specificare diritti di accesso generici o standard. I diritti per una coda possono essere qualsiasi combinazione dei seguenti:

  • Elimina

  • Lettura della sicurezza

  • Sicurezza scrittura

  • Sincronizza

  • Modifica proprietario

  • Lettura

  • Scrittura

  • Execute

  • Necessario

  • Tutti

  • Nessuna

Questi diritti sono un set di flag di bit che è possibile combinare usando l'operatore OR bit per bit.

  • Controllo completo

  • Eliminazione di messaggi

  • Messaggio di ricezione

  • Visualizzazione del messaggio

  • Ricevere Journal messaggio

  • Ottenere le proprietà della coda

  • Impostare le proprietà della coda

  • Ottenere le autorizzazioni

  • Impostare le autorizzazioni

  • Acquisire la proprietà della coda

  • WriteMessage

Nella tabella seguente viene illustrato se questo metodo è disponibile in varie modalità gruppo di lavoro.

Modalità gruppo di lavoro Disponibile
Computer locale
Computer locale e nome del formato diretto
Computer remoto No
Nome del formato diretto e del computer remoto No

Vedi anche

Si applica a

SetPermissions(MessageQueueAccessControlEntry)

Assegna i diritti di accesso alla coda in base al contenuto di una voce di controllo di accesso.

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)

Parametri

ace
MessageQueueAccessControlEntry

Oggetto MessageQueueAccessControlEntry che specifica un utente, un tipo di accesso e un tipo di autorizzazione.

Eccezioni

Si è verificato un errore durante l'accesso a un metodo di Accodamento messaggi.

Esempio

L'esempio di codice seguente illustra l'uso di 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);

Commenti

Utilizzare questo overload per concedere, negare o revocare i diritti usando una voce di controllo di accesso per specificare le informazioni sui diritti e sul trustee.

Il trustee specificato quando si costruisce il ace parametro può essere un singolo utente, un gruppo di utenti o un computer. Se il trustee è un individuo, usare il formato DOMAIN\user. È possibile specificare "." per il trustee per indicare il computer locale.

Autorizzazioni assegnate tramite SetPermissions l'aggiunta di diritti all'elenco esistente. Per impostazione predefinita, l'autore di una coda pubblica o privata ha il controllo completo e il gruppo di dominio Everyone ha l'autorizzazione per ottenere le proprietà della coda, ottenere le autorizzazioni e scrivere nella coda. Quando si chiama SetPermissions, le informazioni sull'utente e sulle autorizzazioni vengono aggiunte alla fine dell'elenco esistente.

Il sistema esamina ogni AccessControlEntry in sequenza fino a quando non si verifica uno degli eventi seguenti:

  • Un accesso negato AccessControlEntry nega esplicitamente uno dei diritti di accesso richiesti a uno dei trustee elencati nel token di accesso del thread.

  • Uno o più elementi consentiti AccessControlEntry per l'accesso per i trustee elencati nel token di accesso del thread concedono in modo esplicito tutti i diritti di accesso richiesti.

  • Tutti gli AccessControlEntry elementi sono stati controllati ed è ancora presente almeno un diritto di accesso richiesto che non è stato consentito in modo esplicito, nel qual caso l'accesso viene negato in modo implicito.

I diritti per una coda, che si specifica nel rights parametro quando si costruisce MessageQueueAccessControlEntry, possono essere qualsiasi combinazione di quanto segue:

  • Controllo completo

  • Eliminazione di messaggi

  • Messaggio di ricezione

  • Visualizzazione del messaggio

  • Ricevere Journal messaggio

  • Ottenere le proprietà della coda

  • Impostare le proprietà della coda

  • Ottenere le autorizzazioni

  • Impostare le autorizzazioni

  • Acquisire la proprietà della coda

  • WriteMessage

Il rights parametro specificato nel costruttore per il ace parametro è un flag dell'enumerazione MessageQueueAccessRights . Rappresenta un set di flag di bit che è possibile combinare usando l'operatore bit per bit OR durante la compilazione del rights parametro.

Nella tabella seguente viene illustrato se questo metodo è disponibile in varie modalità gruppo di lavoro.

Modalità gruppo di lavoro Disponibile
Computer locale
Computer locale e nome del formato diretto
Computer remoto No
Nome del formato diretto e del computer remoto No

Vedi anche

Si applica a

SetPermissions(String, MessageQueueAccessRights)

Fornisce a un computer, a un gruppo o a un utente i diritti di accesso specificati.

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)

Parametri

user
String

Singolo utente, gruppo o computer che ottiene ulteriori diritti per la coda.

rights
MessageQueueAccessRights

Oggetto MessageQueueAccessRights che indica una serie di diritti per la coda assegnati da Accodamento messaggi al parametro user passato.

Eccezioni

L'elemento user è null.

Si è verificato un errore durante l'accesso a un metodo di Accodamento messaggi.

Esempio

L'esempio di codice seguente illustra l'uso di 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);

Commenti

Usare questo overload per concedere i diritti specificati a un singolo utente. L'utente può essere qualsiasi trustee valido, che include singoli utenti, gruppi di utenti o un computer. Se l'utente è un singolo utente, usare il formato DOMAIN\user per il user parametro. È possibile specificare "." per il parametro per indicare il user computer locale.

Autorizzazioni assegnate tramite SetPermissions l'aggiunta di diritti all'elenco esistente. Per impostazione predefinita, l'autore di una coda pubblica o privata ha il controllo completo e il gruppo di dominio Tutti dispone dell'autorizzazione per ottenere le proprietà della coda, ottenere le autorizzazioni e scrivere nella coda. Quando si chiama SetPermissions, le informazioni sull'utente e sulle autorizzazioni vengono aggiunte nella parte inferiore dell'elenco esistente.

Il sistema esamina ogni AccessControlEntry sequenza fino a quando non si verifica uno degli eventi seguenti:

  • Un accesso negato nega AccessControlEntry esplicitamente uno dei diritti di accesso richiesti a uno dei trustee elencati nel token di accesso del thread.

  • Uno o più elementi consentiti AccessControlEntry per l'accesso per i trustees elencati nel token di accesso del thread concedono in modo esplicito tutti i diritti di accesso richiesti.

  • Tutti gli AccessControlEntry elementi sono stati controllati e esiste ancora almeno un diritto di accesso richiesto che non è stato consentito in modo esplicito, in cui l'accesso viene negato in modo implicito.

I diritti di una coda, specificati nel rights parametro, possono essere qualsiasi combinazione dei seguenti:

  • Controllo completo

  • Eliminazione di messaggi

  • Messaggio di ricezione

  • Visualizzazione del messaggio

  • Ricevere Journal messaggio

  • Ottenere le proprietà della coda

  • Impostare le proprietà della coda

  • Ottenere le autorizzazioni

  • Impostare le autorizzazioni

  • Accettare la proprietà della coda

  • WriteMessage

L'enumerazione MessageQueueAccessRights rappresenta un set di flag di bit che è possibile combinare usando l'operatore BIT OR per compilare il rights parametro.

Con questo overload è possibile concedere solo le autorizzazioni; non è possibile revocare o rifiutarli. È necessario usare un overload diverso per concedere in modo esplicito qualsiasi AccessControlEntryType altro di Allow.

La tabella seguente mostra se questo metodo è disponibile in varie modalità gruppo di lavoro.

Modalità gruppo di lavoro Disponibile
Computer locale
Nome del computer locale e del formato diretto
Computer remoto No
Nome del formato diretto e del computer remoto No

Vedi anche

Si applica a

SetPermissions(String, MessageQueueAccessRights, AccessControlEntryType)

Concede a un computer, a un utente o a un gruppo di utenti i diritti di accesso specificati con il tipo di controllo di accesso specificato (concessione, rifiuto, revoca o impostazione).

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)

Parametri

user
String

Singolo utente, gruppo o computer che ottiene ulteriori diritti per la coda.

rights
MessageQueueAccessRights

Oggetto MessageQueueAccessRights che indica una serie di diritti per la coda assegnati da Accodamento messaggi al parametro user passato.

entryType
AccessControlEntryType

Oggetto AccessControlEntryType che specifica se concedere, negare o revocare le autorizzazioni specificate dal parametro rights.

Eccezioni

Si è verificato un errore durante l'accesso a un metodo di Accodamento messaggi.

Esempio

L'esempio di codice seguente illustra l'uso di 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);

Commenti

Usare questo overload per concedere, negare o revocare i diritti specificati per un singolo utente. L'utente può essere qualsiasi trustee valido, che include singoli utenti, gruppi di utenti o un computer. Se l'utente è un singolo utente, usare il formato DOMAIN\user per il user parametro. È possibile specificare "." per il parametro per indicare il user computer locale.

Autorizzazioni assegnate tramite SetPermissions l'aggiunta di diritti all'elenco esistente. Per impostazione predefinita, l'autore di una coda pubblica o privata ha il controllo completo e il gruppo di dominio Tutti dispone dell'autorizzazione per ottenere le proprietà della coda, ottenere le autorizzazioni e scrivere nella coda. Quando si chiama SetPermissions, le informazioni sull'utente e sulle autorizzazioni vengono aggiunte nella parte inferiore dell'elenco esistente.

Il sistema esamina ogni AccessControlEntry sequenza fino a quando non si verifica uno degli eventi seguenti:

  • Un accesso negato nega AccessControlEntry esplicitamente uno dei diritti di accesso richiesti a uno dei trustee elencati nel token di accesso del thread.

  • Uno o più elementi consentiti AccessControlEntry per l'accesso per i trustees elencati nel token di accesso del thread concedono in modo esplicito tutti i diritti di accesso richiesti.

  • Tutti gli AccessControlEntry elementi sono stati controllati e esiste ancora almeno un diritto di accesso richiesto che non è stato consentito in modo esplicito, in cui l'accesso viene negato in modo implicito.

I diritti di una coda, specificati nel rights parametro, possono essere qualsiasi combinazione dei seguenti:

  • Controllo completo

  • Eliminazione di messaggi

  • Messaggio di ricezione

  • Visualizzazione del messaggio

  • Ricevere Journal messaggio

  • Ottenere le proprietà della coda

  • Impostare le proprietà della coda

  • Ottenere le autorizzazioni

  • Impostare le autorizzazioni

  • Accettare la proprietà della coda

  • WriteMessage

L'enumerazione MessageQueueAccessRights rappresenta un set di flag di bit che è possibile combinare usando l'operatore BIT OR per compilare il rights parametro.

La tabella seguente mostra se questo metodo è disponibile in varie modalità gruppo di lavoro.

Modalità gruppo di lavoro Disponibile
Computer locale
Nome del computer locale e del formato diretto
Computer remoto No
Nome del formato diretto e del computer remoto No

Vedi anche

Si applica a