MessageQueue.SetPermissions Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Adiciona permissões ao conjunto atual. Isso controla quem tem direitos de acesso às propriedades e mensagens da fila 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 à fila com base no conteúdo de uma entrada de controle de acesso. |
SetPermissions(String, MessageQueueAccessRights) |
Fornece a um computador, grupo ou usuário os direitos de acesso especificados. |
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 administradores e as permissões a serem concedidas.
Exceções
Ocorreu um erro ao acessar um método 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 parâmetro ace
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 adicionar 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 em sequência até que um dos seguintes eventos ocorra:
Um AccessControlEntry negado pelo acesso nega explicitamente qualquer um dos direitos de acesso solicitados a um dos administradores listados no token de acesso do thread.
Um ou mais itens de AccessControlEntry permitidos 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 parâmetro dacl
, adicione AccessControlEntry instâncias à coleção AccessControlList. 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
Escrever
Executar
Necessário
Todo
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 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 | Sim |
Nome do computador local e do formato direto | Sim |
Computador remoto | Não |
Computador remoto e nome do formato direto | Não |
Confira também
Aplica-se a
SetPermissions(MessageQueueAccessControlEntry)
Atribui direitos de acesso à 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
Um MessageQueueAccessControlEntry que especifica um usuário, um tipo de acesso e um tipo de permissão.
Exceções
Ocorreu um erro ao acessar um método 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 direitos e de administrador.
O administrador especificado ao construir o parâmetro ace
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 adicionar 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 em sequência até que um dos seguintes eventos ocorra:
Um AccessControlEntry negado pelo acesso nega explicitamente qualquer um dos direitos de acesso solicitados a um dos administradores listados no token de acesso do thread.
Um ou mais itens de AccessControlEntry permitidos 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 parâmetro rights
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 permissões
Assumir a propriedade da fila
Gravar mensagem
O parâmetro rights
especificado no construtor para o parâmetro ace
é um sinalizador da enumeração MessageQueueAccessRights. Ele representa um conjunto de sinalizadores de bits que você pode combinar usando o operador or bit a bit ao criar o parâmetro rights
.
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 | Sim |
Nome do computador local e do formato direto | Sim |
Computador remoto | Não |
Computador remoto e nome do formato direto | Não |
Confira também
Aplica-se a
SetPermissions(String, MessageQueueAccessRights)
Fornece a um computador, grupo ou usuário os direitos de acesso especificados.
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, o grupo ou o computador que obtém 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
.
Ocorreu um erro ao acessar um método 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 parâmetro user
. Você pode especificar "." para o parâmetro user
para indicar o computador local.
As permissões que você atribui por meio SetPermissions adicionar 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 em sequência até que um dos seguintes eventos ocorra:
Um AccessControlEntry negado pelo acesso nega explicitamente qualquer um dos direitos de acesso solicitados a um dos administradores listados no token de acesso do thread.
Um ou mais itens de AccessControlEntry permitidos 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 parâmetro rights
, 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 permissões
Assumir a propriedade da fila
Gravar mensagem
A enumeração MessageQueueAccessRights representa um conjunto de sinalizadores de bits que você pode combinar usando o operador bit a bit OR para criar o parâmetro rights
.
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 diferente de Allow
.
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 | Sim |
Nome do computador local e do formato direto | Sim |
Computador remoto | Não |
Computador remoto e nome do 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, o grupo ou o computador que obtém 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
devem ser concedidas, negadas ou revogadas.
Exceções
Ocorreu um erro ao acessar um método 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 parâmetro user
. Você pode especificar "." para o parâmetro user
para indicar o computador local.
As permissões que você atribui por meio SetPermissions adicionar 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 em sequência até que um dos seguintes eventos ocorra:
Um AccessControlEntry negado pelo acesso nega explicitamente qualquer um dos direitos de acesso solicitados a um dos administradores listados no token de acesso do thread.
Um ou mais itens de AccessControlEntry permitidos 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 parâmetro rights
, 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 permissões
Assumir a propriedade da fila
Gravar mensagem
A enumeração MessageQueueAccessRights representa um conjunto de sinalizadores de bits que você pode combinar usando o operador bit a bit OR para criar o parâmetro rights
.
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 | Sim |
Nome do computador local e do formato direto | Sim |
Computador remoto | Não |
Computador remoto e nome do formato direto | Não |