MessageQueue.SetPermissions Metodo

Definizione

Aggiunge le autorizzazioni al set corrente. In questo modo si controlla chi ha diritti di accesso alle proprietà e ai messaggi della coda.

Overload

Nome Descrizione
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)

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

SetPermissions(String, MessageQueueAccessRights, AccessControlEntryType)

Assegna a un computer, a un gruppo o a un utente i diritti di accesso specificati, con il tipo di controllo di accesso specificato (consenti, nega, revoca o imposta).

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 i trustee e le autorizzazioni da concedere.

Eccezioni

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

Esempio

Nell'esempio di codice seguente viene illustrato 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 le 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 dall'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 una qualsiasi combinazione di quanto segue:

  • Delete

  • Lettura della sicurezza

  • Sicurezza scrittura

  • Synchronize

  • Modifica proprietario

  • Leggi

  • Scrittura

  • Eseguire

  • Obbligatorio

  • All

  • Nessuno

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

  • Controllo completo

  • Elimina messaggio

  • Ricevi messaggio

  • Visualizza messaggio

  • Ricevi messaggio journal

  • Ottenere le proprietà della coda

  • Impostare le proprietà della coda

  • Ottenere le autorizzazioni

  • Impostare le autorizzazioni

  • Acquisire la proprietà della coda

  • Scrivi messaggio

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

Modalità gruppo di lavoro Disponibile
Computer locale Yes
Computer locale e nome del formato diretto Yes
Computer remoto No
Computer remoto e nome del formato diretto 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

Nell'esempio di codice seguente viene illustrato 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 dall'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

  • Elimina messaggio

  • Ricevi messaggio

  • Visualizza messaggio

  • Ricevi messaggio journal

  • Ottenere le proprietà della coda

  • Impostare le proprietà della coda

  • Ottenere le autorizzazioni

  • Impostare le autorizzazioni

  • Acquisire la proprietà della coda

  • Scrivi messaggio

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 quando si compila il rights parametro.

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

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

Vedi anche

Si applica a

SetPermissions(String, MessageQueueAccessRights)

Concede 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, gruppo o computer che ottiene diritti aggiuntivi per la coda.

rights
MessageQueueAccessRights

Oggetto MessageQueueAccessRights che indica il set di diritti per la coda assegnata da Accodamento messaggi all'oggetto user passato.

Eccezioni

Il user è null.

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

Esempio

Nell'esempio di codice seguente viene illustrato 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 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 user parametro 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 dall'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, specificata nel rights parametro , possono essere una qualsiasi combinazione di quanto segue:

  • Controllo completo

  • Elimina messaggio

  • Ricevi messaggio

  • Visualizza messaggio

  • Ricevi messaggio journal

  • Ottenere le proprietà della coda

  • Impostare le proprietà della coda

  • Ottenere le autorizzazioni

  • Impostare le autorizzazioni

  • Acquisire la proprietà della coda

  • Scrivi messaggio

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

Con questo overload, è possibile concedere solo le autorizzazioni; non è possibile revocarli o negarli. È necessario usare un overload diverso per concedere in modo esplicito qualsiasi AccessControlEntryType oggetto diverso da Allow.

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

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

Vedi anche

Si applica a

SetPermissions(String, MessageQueueAccessRights, AccessControlEntryType)

Assegna a un computer, a un gruppo o a un utente i diritti di accesso specificati, con il tipo di controllo di accesso specificato (consenti, nega, revoca o imposta).

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, gruppo o computer che ottiene diritti aggiuntivi per la coda.

rights
MessageQueueAccessRights

Oggetto MessageQueueAccessRights che indica il set di diritti per la coda assegnata da Accodamento messaggi all'oggetto user passato.

entryType
AccessControlEntryType

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

Eccezioni

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

Esempio

Nell'esempio di codice seguente viene illustrato 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 user parametro 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 dall'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, specificata nel rights parametro , possono essere una qualsiasi combinazione di quanto segue:

  • Controllo completo

  • Elimina messaggio

  • Ricevi messaggio

  • Visualizza messaggio

  • Ricevi messaggio journal

  • Ottenere le proprietà della coda

  • Impostare le proprietà della coda

  • Ottenere le autorizzazioni

  • Impostare le autorizzazioni

  • Acquisire la proprietà della coda

  • Scrivi messaggio

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

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

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

Vedi anche

Si applica a