Share via


MessageQueue.SetPermissions Yöntem

Tanım

Geçerli kümeye izinler ekler. Bu, kuyruktaki kuyruk özelliklerine ve iletilerine erişim haklarına sahip olan kişilerin kim olduğunu denetler.

Aşırı Yüklemeler

SetPermissions(AccessControlList)

Erişim denetim listesinin içeriğine göre kuyruğa erişim hakları atar.

SetPermissions(MessageQueueAccessControlEntry)

Erişim denetimi girdisinin içeriğine göre kuyruğa erişim hakları atar.

SetPermissions(String, MessageQueueAccessRights)

Bir bilgisayara, gruba veya kullanıcıya belirtilen erişim haklarını verir.

SetPermissions(String, MessageQueueAccessRights, AccessControlEntryType)

Bir bilgisayara, gruba veya kullanıcıya belirtilen erişim denetim türüyle (izin ver, reddet, iptal et veya ayarla) belirtilen erişim haklarını verir.

SetPermissions(AccessControlList)

Erişim denetim listesinin içeriğine göre kuyruğa erişim hakları atar.

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)

Parametreler

dacl
AccessControlList

AccessControlList Güvenenleri ve verilmesi gereken izinleri belirten bir veya daha fazla erişim denetimi girdisi içeren.

Özel durumlar

Message Queuing yöntemine erişilirken bir hata oluştu.

Örnekler

Aşağıdaki kod örneğinde kullanımı gösterilmektedir 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);

Açıklamalar

Güvenen ve izin bilgilerini belirtmek üzere bir erişim denetimi girdileri koleksiyonu kullanarak hakları vermek, reddetmek veya iptal etmek için bu aşırı yüklemeyi kullanın. Bu, örneğin, aynı anda birden çok kullanıcıya izin vermek için kullanılır.

Parametreyi oluştururken belirttiğiniz mütevelli ace tek bir kullanıcı, bir kullanıcı grubu veya bir bilgisayar olabilir. Mütevelli bir kişiyse biçimini DOMAIN\userkullanın. Yerel bilgisayarı belirtmek üzere mütevelli için "." belirtebilirsiniz.

Aracılığıyla SetPermissions atadığınız izinler var olan listeye haklar ekler. Varsayılan olarak, ortak veya özel kuyruğu oluşturan tam denetime sahiptir ve Herkes etki alanı grubunun kuyruk özelliklerini alma, izin alma ve kuyruğa yazma izni vardır. çağrısı SetPermissionsyaptığınızda, kullanıcı ve izin bilgileri var olan listenin en altına eklenir.

Sistem, aşağıdaki olaylardan biri gerçekleşene kadar her AccessControlEntry birini sırayla inceler:

  • Erişim reddedildi AccessControlEntry , iş parçacığının erişim belirtecinde listelenen güvenenlerden birine yönelik istenen erişim haklarından herhangi birini açıkça reddeder.

  • İş parçacığının erişim belirtecinde listelenen güvenenler için erişime izin verilen AccessControlEntry bir veya daha fazla öğe, istenen tüm erişim haklarını açıkça verir.

  • Tüm AccessControlEntry öğeler denetlendi ve hala açıkça izin verilmeyen en az bir istenen erişim hakkı vardır ve bu durumda erişim örtük olarak reddedilir.

parametresini dacl oluştururken koleksiyonunuza örnekler eklersiniz AccessControlEntryAccessControlList . Her erişim denetimi girdisini oluştururken genel veya standart erişim hakları belirtebilirsiniz. Bir kuyruğun hakları aşağıdakilerin herhangi bir bileşimi olabilir:

  • Sil

  • Güvenlik Okuma

  • Yazma Güvenliği

  • Eşitle

  • Sahibi Değiştir

  • Okuma

  • Yazma

  • Yürütme

  • Gerekli

  • Tümü

  • Hiçbiri

Bu haklar, OR bit düzeyinde işlecini kullanarak birleştirebileceğiniz bit bayrakları kümesidir.

  • Tam Denetim

  • İletiyi Sil

  • İleti Al

  • İletiyi Gözatma

  • Journal İleti al

  • Kuyruk Özelliklerini Alma

  • Kuyruk Özelliklerini Ayarlama

  • İzinleri Alma

  • İzinleri Ayarlama

  • Kuyruk Sahipliğini Alma

  • İleti Yazma

Aşağıdaki tabloda bu yöntemin çeşitli Çalışma Grubu modlarında kullanılabilir olup olmadığı gösterilmektedir.

Çalışma grubu modu Kullanılabilir
Yerel bilgisayar Yes
Yerel bilgisayar ve doğrudan biçim adı Yes
Uzak bilgisayar No
Uzak bilgisayar ve doğrudan biçim adı No

Ayrıca bkz.

Şunlara uygulanır

SetPermissions(MessageQueueAccessControlEntry)

Erişim denetimi girdisinin içeriğine göre kuyruğa erişim hakları atar.

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)

Parametreler

ace
MessageQueueAccessControlEntry

Bir MessageQueueAccessControlEntry kullanıcıyı, erişim türünü ve izin türünü belirten bir.

Özel durumlar

Message Queuing yöntemine erişilirken bir hata oluştu.

Örnekler

Aşağıdaki kod örneğinde kullanımı gösterilmektedir 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);

Açıklamalar

Güvenen ve hak bilgilerini belirtmek üzere bir erişim denetimi girdisi kullanarak hakları vermek, reddetmek veya iptal etmek için bu aşırı yüklemeyi kullanın.

Parametreyi oluştururken belirttiğiniz mütevelli ace tek bir kullanıcı, bir kullanıcı grubu veya bir bilgisayar olabilir. Mütevelli bir kişiyse biçimini DOMAIN\userkullanın. Yerel bilgisayarı belirtmek üzere mütevelli için "." belirtebilirsiniz.

Aracılığıyla SetPermissions atadığınız izinler var olan listeye haklar ekler. Varsayılan olarak, ortak veya özel kuyruğu oluşturan tam denetime sahiptir ve Herkes etki alanı grubunun kuyruk özelliklerini alma, izin alma ve kuyruğa yazma izni vardır. çağrısı SetPermissionsyaptığınızda, kullanıcı ve izin bilgileri var olan listenin en altına eklenir.

Sistem, aşağıdaki olaylardan biri gerçekleşene kadar her AccessControlEntry birini sırayla inceler:

  • Erişim reddedildi AccessControlEntry , iş parçacığının erişim belirtecinde listelenen güvenenlerden birine yönelik istenen erişim haklarından herhangi birini açıkça reddeder.

  • İş parçacığının erişim belirtecinde listelenen güvenenler için erişime izin verilen AccessControlEntry bir veya daha fazla öğe, istenen tüm erişim haklarını açıkça verir.

  • Tüm AccessControlEntry öğeler denetlendi ve hala açıkça izin verilmeyen en az bir istenen erişim hakkı vardır ve bu durumda erişim örtük olarak reddedilir.

öğesini oluştururken MessageQueueAccessControlEntryparametresinde rights belirttiğiniz bir kuyruğun hakları, aşağıdakilerin herhangi bir bileşimi olabilir:

  • Tam Denetim

  • İletiyi Sil

  • İleti Al

  • İletiyi Gözatma

  • Journal İleti al

  • Kuyruk Özelliklerini Alma

  • Kuyruk Özelliklerini Ayarlama

  • İzinleri Alma

  • İzinleri Ayarlama

  • Kuyruk Sahipliğini Alma

  • İleti Yazma

Parametresinin rights oluşturucusunda ace belirttiğiniz parametre, numaralandırmanın MessageQueueAccessRights bayrağıdır. Bit düzeyinde işlecini kullanarak veya parametresini oluştururken rights birleştirebileceğiniz bir bit bayrağı kümesini temsil eder.

Aşağıdaki tabloda bu yöntemin çeşitli Çalışma Grubu modlarında kullanılabilir olup olmadığı gösterilmektedir.

Çalışma grubu modu Kullanılabilir
Yerel bilgisayar Yes
Yerel bilgisayar ve doğrudan biçim adı Yes
Uzak bilgisayar No
Uzak bilgisayar ve doğrudan biçim adı No

Ayrıca bkz.

Şunlara uygulanır

SetPermissions(String, MessageQueueAccessRights)

Bir bilgisayara, gruba veya kullanıcıya belirtilen erişim haklarını verir.

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)

Parametreler

user
String

Kuyruğa ek haklar alan kişi, grup veya bilgisayar.

rights
MessageQueueAccessRights

MessageQueueAccessRights Message Queuing'in geçirilen kuyruğa atayabilecekleri user hak kümesini gösteren bir.

Özel durumlar

şeklindedir usernull.

Message Queuing yöntemine erişilirken bir hata oluştu.

Örnekler

Aşağıdaki kod örneğinde kullanımı gösterilmektedir 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);

Açıklamalar

Tek bir kullanıcıya belirtilen hakları vermek için bu aşırı yüklemeyi kullanın. Kullanıcı, tek tek kullanıcıları, kullanıcı gruplarını veya bir bilgisayarı içeren herhangi bir geçerli mütevelli olabilir. Kullanıcı bir kişiyse parametresinin user biçimini DOMAIN\user kullanın. Yerel bilgisayarı göstermek için parametresi için user "." belirtebilirsiniz.

Aracılığıyla SetPermissions atadığınız izinler var olan listeye haklar ekler. Varsayılan olarak, ortak veya özel kuyruğu oluşturan tam denetime sahiptir ve Herkes etki alanı grubunun kuyruk özelliklerini alma, izin alma ve kuyruğa yazma izni vardır. çağrısı SetPermissionsyaptığınızda, kullanıcı ve izin bilgileri var olan listenin en altına eklenir.

Sistem, aşağıdaki olaylardan biri gerçekleşene kadar her AccessControlEntry birini sırayla inceler:

  • Erişim reddedildi AccessControlEntry , iş parçacığının erişim belirtecinde listelenen güvenenlerden birine yönelik istenen erişim haklarından herhangi birini açıkça reddeder.

  • İş parçacığının erişim belirtecinde listelenen güvenenler için erişime izin verilen AccessControlEntry bir veya daha fazla öğe, istenen tüm erişim haklarını açıkça verir.

  • Tüm AccessControlEntry öğeler denetlendi ve hala açıkça izin verilmeyen en az bir istenen erişim hakkı vardır ve bu durumda erişim örtük olarak reddedilir.

parametresinde belirtilen bir kuyruğun rights hakları aşağıdakilerin herhangi bir bileşimi olabilir:

  • Tam Denetim

  • İletiyi Sil

  • İleti Al

  • İletiyi Gözatma

  • Journal İleti al

  • Kuyruk Özelliklerini Alma

  • Kuyruk Özelliklerini Ayarlama

  • İzinleri Alma

  • İzinleri Ayarlama

  • Kuyruk Sahipliğini Alma

  • İleti Yazma

Numaralandırma, MessageQueueAccessRights bit düzeyinde işleci veya parametresini derlemek rights için birleştirebileceğiniz bit bayrakları kümesini temsil eder.

Bu aşırı yükleme ile yalnızca izinler verilmektedir; bunları iptal edemez veya reddedemezsiniz. dışında Allowherhangi AccessControlEntryType birini açıkça vermek için farklı bir aşırı yükleme kullanmanız gerekir.

Aşağıdaki tabloda bu yöntemin çeşitli Çalışma Grubu modlarında kullanılabilir olup olmadığı gösterilmektedir.

Çalışma grubu modu Kullanılabilir
Yerel bilgisayar Yes
Yerel bilgisayar ve doğrudan biçim adı Yes
Uzak bilgisayar No
Uzak bilgisayar ve doğrudan biçim adı No

Ayrıca bkz.

Şunlara uygulanır

SetPermissions(String, MessageQueueAccessRights, AccessControlEntryType)

Bir bilgisayara, gruba veya kullanıcıya belirtilen erişim denetim türüyle (izin ver, reddet, iptal et veya ayarla) belirtilen erişim haklarını verir.

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)

Parametreler

user
String

Kuyruğa ek haklar alan kişi, grup veya bilgisayar.

rights
MessageQueueAccessRights

MessageQueueAccessRights Message Queuing'in geçirilen kuyruğa atayabilecekleri user hak kümesini gösteren bir.

entryType
AccessControlEntryType

AccessControlEntryType parametresi tarafından rights belirtilen izinlerin verilip verilmeyeceğini, reddedilip iptal edilmeyeceğini belirten bir.

Özel durumlar

Message Queuing yöntemine erişilirken bir hata oluştu.

Örnekler

Aşağıdaki kod örneğinde kullanımı gösterilmektedir 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);

Açıklamalar

Tek bir kullanıcıya belirtilen hakları vermek, reddetmek veya iptal etmek için bu aşırı yüklemeyi kullanın. Kullanıcı, tek tek kullanıcıları, kullanıcı gruplarını veya bir bilgisayarı içeren herhangi bir geçerli mütevelli olabilir. Kullanıcı bir kişiyse parametresinin user biçimini DOMAIN\user kullanın. Yerel bilgisayarı göstermek için parametresi için user "." belirtebilirsiniz.

Aracılığıyla SetPermissions atadığınız izinler var olan listeye haklar ekler. Varsayılan olarak, ortak veya özel kuyruğu oluşturan tam denetime sahiptir ve Herkes etki alanı grubunun kuyruk özelliklerini alma, izin alma ve kuyruğa yazma izni vardır. çağrısı SetPermissionsyaptığınızda, kullanıcı ve izin bilgileri var olan listenin en altına eklenir.

Sistem, aşağıdaki olaylardan biri gerçekleşene kadar her AccessControlEntry birini sırayla inceler:

  • Erişim reddedildi AccessControlEntry , iş parçacığının erişim belirtecinde listelenen güvenenlerden birine yönelik istenen erişim haklarından herhangi birini açıkça reddeder.

  • İş parçacığının erişim belirtecinde listelenen güvenenler için erişime izin verilen AccessControlEntry bir veya daha fazla öğe, istenen tüm erişim haklarını açıkça verir.

  • Tüm AccessControlEntry öğeler denetlendi ve hala açıkça izin verilmeyen en az bir istenen erişim hakkı vardır ve bu durumda erişim örtük olarak reddedilir.

parametresinde belirtilen bir kuyruğun rights hakları aşağıdakilerin herhangi bir bileşimi olabilir:

  • Tam Denetim

  • İletiyi Sil

  • İleti Al

  • İletiyi Gözatma

  • Journal İleti al

  • Kuyruk Özelliklerini Alma

  • Kuyruk Özelliklerini Ayarlama

  • İzinleri Alma

  • İzinleri Ayarlama

  • Kuyruk Sahipliğini Alma

  • İleti Yazma

Numaralandırma, MessageQueueAccessRights bit düzeyinde işleci veya parametresini derlemek rights için birleştirebileceğiniz bit bayrakları kümesini temsil eder.

Aşağıdaki tabloda bu yöntemin çeşitli Çalışma Grubu modlarında kullanılabilir olup olmadığı gösterilmektedir.

Çalışma grubu modu Kullanılabilir
Yerel bilgisayar Yes
Yerel bilgisayar ve doğrudan biçim adı Yes
Uzak bilgisayar No
Uzak bilgisayar ve doğrudan biçim adı No

Ayrıca bkz.

Şunlara uygulanır