Compartilhar via


MessageQueue.SetPermissions Método

Definição

Adiciona permissões ao conjunto atual. Isso controla quem tem direitos de acesso a propriedades da fila e mensagens na fila.

Sobrecargas

SetPermissions(AccessControlList)

Atribui direitos de acesso à fila com base no conteúdo de uma lista de controle de acesso.

SetPermissions(MessageQueueAccessControlEntry)

Atribui direitos de acesso para a fila com base no conteúdo de uma entrada de controle de acesso.

SetPermissions(String, MessageQueueAccessRights)

Fornece os direitos de acesso especificados a um computador, grupo ou usuário.

SetPermissions(String, MessageQueueAccessRights, AccessControlEntryType)

Fornece a um computador, grupo ou usuário os direitos de acesso especificados, com o tipo de controle de acesso especificado (permitir, negar, revogar ou definir).

SetPermissions(AccessControlList)

Atribui direitos de acesso à fila com base no conteúdo de uma lista de controle de acesso.

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)

Parâmetros

dacl
AccessControlList

Um AccessControlList que contém uma ou mais entradas de controle de acesso que especificam os objetos de confiança e as permissões a serem concedidas.

Exceções

Erro ao acessar um método do serviço de Enfileiramento de Mensagens.

Exemplos

O exemplo de código a seguir demonstra o uso de 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);

Comentários

Use essa sobrecarga para conceder, negar ou revogar direitos usando uma coleção de entradas de controle de acesso para especificar informações de administrador e permissões. Isso é usado, por exemplo, para conceder permissões a vários usuários ao mesmo tempo.

O administrador especificado ao construir o ace parâmetro pode ser um usuário individual, um grupo de usuários ou um computador. Se o administrador for um indivíduo, use o formato DOMAIN\user. Você pode especificar "." para o administrador indicar o computador local.

As permissões que você atribui por meio SetPermissions da adição de direitos à lista existente. Por padrão, o criador de uma fila pública ou privada tem controle total e o grupo de domínio Todos têm permissão para obter propriedades da fila, obter permissões e gravar na fila. Quando você chama SetPermissions, as informações de usuário e permissões são acrescentadas à parte inferior da lista existente.

O sistema examina cada AccessControlEntry um em sequência até que ocorra um dos seguintes eventos:

  • Um acesso negado AccessControlEntry nega explicitamente qualquer um dos direitos de acesso solicitados a um dos administradores listados no token de acesso do thread.

  • Um ou mais itens permitidos AccessControlEntry pelo acesso para os administradores listados no token de acesso do thread concedem explicitamente todos os direitos de acesso solicitados.

  • Todos os AccessControlEntry itens foram verificados e ainda há pelo menos um direito de acesso solicitado que não foi explicitamente permitido, nesse caso, o acesso é negado implicitamente.

Ao construir o dacl parâmetro , você adiciona AccessControlEntry instâncias à sua AccessControlList coleção. Ao construir cada entrada de controle de acesso, você pode especificar direitos de acesso genéricos ou padrão. Os direitos de uma fila podem ser qualquer combinação do seguinte:

  • Excluir

  • Ler Segurança

  • Segurança de gravação

  • Sincronizar

  • Modificar Proprietário

  • Ler

  • Gravar

  • Execute (executar)

  • Obrigatório

  • Todos

  • Nenhum

Esses direitos são um conjunto de sinalizadores de bits que você pode combinar usando o operador OR bit a bit.

  • Controle Total

  • Excluir mensagem

  • Receber mensagem

  • Espiar mensagem

  • Receber mensagem de Diário

  • Obter propriedades da fila

  • Definir propriedades da fila

  • Obter permissões

  • Definir as permissões

  • Assumir a propriedade da fila

  • Gravar Mensagem

A tabela a seguir mostra se esse método está disponível em vários modos de Grupo de Trabalho.

Modo de grupo de trabalho Disponível
Computador local Yes
Nome do computador local e do formato direto Yes
Computador remoto Não
Computador remoto e nome de formato direto Não

Confira também

Aplica-se a

SetPermissions(MessageQueueAccessControlEntry)

Atribui direitos de acesso para a fila com base no conteúdo de uma entrada de controle de acesso.

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)

Parâmetros

ace
MessageQueueAccessControlEntry

Um MessageQueueAccessControlEntry que especifica um usuário, um tipo de acesso e um tipo de permissão.

Exceções

Erro ao acessar um método do serviço de Enfileiramento de Mensagens.

Exemplos

O exemplo de código a seguir demonstra o uso de 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);

Comentários

Use essa sobrecarga para conceder, negar ou revogar direitos usando uma entrada de controle de acesso para especificar informações de administrador e direitos.

O administrador especificado ao construir o ace parâmetro pode ser um usuário individual, um grupo de usuários ou um computador. Se o administrador for um indivíduo, use o formato DOMAIN\user. Você pode especificar "." para o administrador indicar o computador local.

As permissões que você atribui por meio SetPermissions da adição de direitos à lista existente. Por padrão, o criador de uma fila pública ou privada tem controle total e o grupo de domínio Todos têm permissão para obter propriedades da fila, obter permissões e gravar na fila. Quando você chama SetPermissions, as informações de usuário e permissões são acrescentadas à parte inferior da lista existente.

O sistema examina cada AccessControlEntry um em sequência até que ocorra um dos seguintes eventos:

  • Um acesso negado AccessControlEntry nega explicitamente qualquer um dos direitos de acesso solicitados a um dos administradores listados no token de acesso do thread.

  • Um ou mais itens permitidos AccessControlEntry pelo acesso para os administradores listados no token de acesso do thread concedem explicitamente todos os direitos de acesso solicitados.

  • Todos os AccessControlEntry itens foram verificados e ainda há pelo menos um direito de acesso solicitado que não foi explicitamente permitido, nesse caso, o acesso é negado implicitamente.

Os direitos de uma fila, que você especifica no rights parâmetro ao construir seu MessageQueueAccessControlEntry, podem ser qualquer combinação do seguinte:

  • Controle Total

  • Excluir mensagem

  • Receber mensagem

  • Espiar mensagem

  • Receber mensagem de Diário

  • Obter propriedades da fila

  • Definir propriedades da fila

  • Obter permissões

  • Definir as permissões

  • Assumir a propriedade da fila

  • Gravar Mensagem

O rights parâmetro especificado no construtor para o ace parâmetro é um sinalizador da MessageQueueAccessRights enumeração . Ele representa um conjunto de sinalizadores de bits que você pode combinar usando o operador OR bit a bit ao compilar o rights parâmetro .

A tabela a seguir mostra se esse método está disponível em vários modos de Grupo de Trabalho.

Modo de grupo de trabalho Disponível
Computador local Yes
Nome do computador local e do formato direto Yes
Computador remoto Não
Computador remoto e nome de formato direto Não

Confira também

Aplica-se a

SetPermissions(String, MessageQueueAccessRights)

Fornece os direitos de acesso especificados a um computador, grupo ou usuário.

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)

Parâmetros

user
String

O indivíduo, grupo ou computador que recebe direitos adicionais para a fila.

rights
MessageQueueAccessRights

Um MessageQueueAccessRights que indica o conjunto de direitos para a fila que o Enfileiramento de Mensagens atribui ao user passado.

Exceções

O user é null.

Erro ao acessar um método do serviço de Enfileiramento de Mensagens.

Exemplos

O exemplo de código a seguir demonstra o uso de 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);

Comentários

Use essa sobrecarga para conceder direitos especificados a um usuário individual. O usuário pode ser qualquer administrador válido, que inclua usuários individuais, grupos de usuários ou um computador. Se o usuário for um indivíduo, use o formato DOMAIN\user para o user parâmetro . Você pode especificar "." para o user parâmetro indicar o computador local.

As permissões que você atribui por meio SetPermissions da adição de direitos à lista existente. Por padrão, o criador de uma fila pública ou privada tem controle total e o grupo de domínio Todos têm permissão para obter propriedades da fila, obter permissões e gravar na fila. Quando você chama SetPermissions, as informações de usuário e permissões são acrescentadas à parte inferior da lista existente.

O sistema examina cada AccessControlEntry um em sequência até que ocorra um dos seguintes eventos:

  • Um acesso negado AccessControlEntry nega explicitamente qualquer um dos direitos de acesso solicitados a um dos administradores listados no token de acesso do thread.

  • Um ou mais itens permitidos AccessControlEntry pelo acesso para os administradores listados no token de acesso do thread concedem explicitamente todos os direitos de acesso solicitados.

  • Todos os AccessControlEntry itens foram verificados e ainda há pelo menos um direito de acesso solicitado que não foi explicitamente permitido, nesse caso, o acesso é negado implicitamente.

Os direitos de uma fila, especificados no rights parâmetro , podem ser qualquer combinação do seguinte:

  • Controle Total

  • Excluir mensagem

  • Receber mensagem

  • Espiar mensagem

  • Receber mensagem de Diário

  • Obter propriedades da fila

  • Definir propriedades da fila

  • Obter permissões

  • Definir as permissões

  • Assumir a propriedade da fila

  • Gravar Mensagem

A MessageQueueAccessRights enumeração representa um conjunto de sinalizadores de bits que você pode combinar usando o operador bit a bit OR para compilar o rights parâmetro.

Com essa sobrecarga, você só pode conceder permissões; você não pode revogá-los ou negá-los. Você deve usar uma sobrecarga diferente para conceder explicitamente qualquer AccessControlEntryType outra que não Allowseja .

A tabela a seguir mostra se esse método está disponível em vários modos de Grupo de Trabalho.

Modo de grupo de trabalho Disponível
Computador local Yes
Nome do computador local e do formato direto Yes
Computador remoto Não
Computador remoto e nome de formato direto Não

Confira também

Aplica-se a

SetPermissions(String, MessageQueueAccessRights, AccessControlEntryType)

Fornece a um computador, grupo ou usuário os direitos de acesso especificados, com o tipo de controle de acesso especificado (permitir, negar, revogar ou definir).

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)

Parâmetros

user
String

O indivíduo, grupo ou computador que recebe direitos adicionais para a fila.

rights
MessageQueueAccessRights

Um MessageQueueAccessRights que indica o conjunto de direitos para a fila que o Enfileiramento de Mensagens atribui ao user passado.

entryType
AccessControlEntryType

Um AccessControlEntryType que especifica se as permissões especificadas pelo parâmetro rights serão concedidas, negadas ou revogadas.

Exceções

Erro ao acessar um método do serviço de Enfileiramento de Mensagens.

Exemplos

O exemplo de código a seguir demonstra o uso de 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);

Comentários

Use essa sobrecarga para conceder, negar ou revogar direitos especificados para um usuário individual. O usuário pode ser qualquer administrador válido, que inclua usuários individuais, grupos de usuários ou um computador. Se o usuário for um indivíduo, use o formato DOMAIN\user para o user parâmetro . Você pode especificar "." para o user parâmetro indicar o computador local.

As permissões que você atribui por meio SetPermissions da adição de direitos à lista existente. Por padrão, o criador de uma fila pública ou privada tem controle total e o grupo de domínio Todos têm permissão para obter propriedades da fila, obter permissões e gravar na fila. Quando você chama SetPermissions, as informações de usuário e permissões são acrescentadas à parte inferior da lista existente.

O sistema examina cada AccessControlEntry um em sequência até que ocorra um dos seguintes eventos:

  • Um acesso negado AccessControlEntry nega explicitamente qualquer um dos direitos de acesso solicitados a um dos administradores listados no token de acesso do thread.

  • Um ou mais itens permitidos AccessControlEntry pelo acesso para os administradores listados no token de acesso do thread concedem explicitamente todos os direitos de acesso solicitados.

  • Todos os AccessControlEntry itens foram verificados e ainda há pelo menos um direito de acesso solicitado que não foi explicitamente permitido, nesse caso, o acesso é negado implicitamente.

Os direitos de uma fila, especificados no rights parâmetro , podem ser qualquer combinação do seguinte:

  • Controle Total

  • Excluir mensagem

  • Receber mensagem

  • Espiar mensagem

  • Receber mensagem de Diário

  • Obter propriedades da fila

  • Definir propriedades da fila

  • Obter permissões

  • Definir as permissões

  • Assumir a propriedade da fila

  • Gravar Mensagem

A MessageQueueAccessRights enumeração representa um conjunto de sinalizadores de bits que você pode combinar usando o operador bit a bit OR para compilar o rights parâmetro.

A tabela a seguir mostra se esse método está disponível em vários modos de Grupo de Trabalho.

Modo de grupo de trabalho Disponível
Computador local Yes
Nome do computador local e do formato direto Yes
Computador remoto Não
Computador remoto e nome de formato direto Não

Confira também

Aplica-se a