Bạn hiện đang ngoại tuyến, hãy chờ internet để kết nối lại

Làm thế nào để thiết lập Exchange Server 2000 và 2003 hộp thư quyền lúc sáng tạo hộp thư

Hỗ trợ cho Windows Server 2003 đã kết thúc vào ngày 14 tháng 7 năm 2015

Microsoft đã kết thúc hỗ trợ cho Windows Server 2003 vào ngày 14 tháng 7 năm 2015. Thay đổi này đã ảnh hưởng đến các bản cập nhật phần mềm và tùy chọn bảo mật của bạn. Tìm hiểu ý nghĩa của điều này với bạn và cách thực hiện để luôn được bảo vệ.

QUAN TRỌNG: Bài viết này được dịch bằng phần mềm dịch máy của Microsoft chứ không phải do con người dịch. Microsoft cung cấp các bài viết do con người dịch và cả các bài viết do máy dịch để bạn có thể truy cập vào tất cả các bài viết trong Cơ sở Kiến thức của chúng tôi bằng ngôn ngữ của bạn. Tuy nhiên, bài viết do máy dịch không phải lúc nào cũng hoàn hảo. Loại bài viết này có thể chứa các sai sót về từ vựng, cú pháp hoặc ngữ pháp, giống như một người nước ngoài có thể mắc sai sót khi nói ngôn ngữ của bạn. Microsoft không chịu trách nhiệm về bất kỳ sự thiếu chính xác, sai sót hoặc thiệt hại nào do việc dịch sai nội dung hoặc do hoạt động sử dụng của khách hàng gây ra. Microsoft cũng thường xuyên cập nhật phần mềm dịch máy này.

Nhấp chuột vào đây để xem bản tiếng Anh của bài viết này:304935
TÓM TẮT
Bài viết này cho bạn thấy làm thế nào để lập trình chỉnh sửa hộp thư quyền trên một Microsoft Exchange Server 2000 hoặc hộp thư 2003 đồng thời cho rằng bạn hộp thư-phép đối tượng người dùng trong dịch vụ thư mục Microsoft Active Directory.

Bài viết này bao gồm các mẫu mã đó cho bạn thấy làm thế nào để thiết lập quyền hộp thư cho một Exchange 2000 hoặc hộp thư 2003 trước khi hộp thư thực tế đã được tạo ra cho người sử dụng trong Exchange 2000 hoặc lưu trữ thông tin năm 2003 nhưng sau khi đối tượng người dùng được kích hoạt hộp thư trong Active Directory.

Chú ý Mã này không có hiệu lực nếu hộp thư đã tồn tại trong Exchange 2000 hoặc lưu trữ thông tin năm 2003. Nói cách khác, nó không ảnh hưởng quyền thực tế hộp thư vào hộp thư của người dùng nếu hộp thư của người dùng đã được truy cập.Để biết thêm thông tin về làm thế nào để hộp thư quyền vào hộp thư Exchange 2000 cả trước và sau khi nó đã được tạo ra trong các cửa hàng thông tin, nhấp vào số bài viết sau đây để xem bài viết trong cơ sở kiến thức Microsoft:
310866Làm thế nào để thiết lập Exchange 2000 hộp thư quyền trên một hộp thư mà tồn tại trong các cửa hàng thông tin
THÔNG TIN THÊM
Một hộp thư có hai phần trong một trao đổi 2000 hoặc tổ chức năm 2003 trong Microsoft Windows 2000 hoặc Microsoft Windows Server 2003 môi trường tên miền.
  • Active Directory kích hoạt hộp thư người sử dụng: đây là chỉ là một đối tượng người dùng trong Active Directory. Một vài thư liên quan đến tài sản và tài sản liên quan đến hộp thư được đặt trên đối tượng người dùng này.
  • Thư mục hộp thư trong kho thông tin Exchage: đây là vị trí nơi người sử dụng thực tế thư được lưu trữ và nơi nhiều thuộc tính cụ thể đối với hộp thư được thiết lập.
Quyền hộp thư được lưu trữ trên một bất động sản mô tả bảo mật được đặt trên hộp thư trong kho thông tin. Đó cũng là một thuộc tính vào đối tượng người dùng thư mục hoạt động, được gọi là các msExchMailboxSecurityDescriptor. Thuộc tính này được thiết kế chỉ để phản ánh các quyền hộp thư vào hộp thư của người dùng.

Một tổng quan nhanh chóng của quá trình tạo điều kiện cho hộp thư Exchange 2000 hoặc 2003

Dưới đây là các bước mà thường được thực hiện để tạo ra trao đổi 2000 hoặc 2003 kích hoạt hộp thư người dùng trong Active Directory:
  1. Một quản trị tên miền tạo ra đối tượng người dùng thư mục hoạt động và cho phép các tài khoản người dùng, hoặc từ các "hoạt động thư mục người dùng và máy tính" (ADUnC)-theo hoặc từ mã có sử dụng Active Directory dịch vụ giao diện (ADSI).
  2. Cho người quản trị vùng sau đó hộp thư-phép người sử dụng này, hoặc là từ ADUnC hoặc lập trình thông qua giao diện IMailboxStore trong nghiên cứu khoa học Data Objects cho trao đổi quản lý (CDOEXM). Một liên kết đến tài liệu hướng dẫn cho giao diện IMailboxStore được bao gồm trong phần "Tham khảo" của bài viết này. Bất kỳ phương pháp khác với CDOEXM được sử dụng để lập trình hộp thư-enable đối tượng người dùng không được hỗ trợ.

    Hai phương pháp đảm bảo rằng các msExchMailboxSecurityDescriptor thuộc tính và một số các thuộc tính khác được thiết lập đúng trên đối tượng người dùng khi họ hộp thư-bật nó. Bước này, về cơ bản, đặt một tập hợp con nhỏ của thuộc tính thư và các thuộc tính hộp thư trên đối tượng người dùng trong Active Directory. Tại thời điểm này, người sử dụng hộp thư là không được nêu ra đã sẵn sàng để truy cập.
  3. Nhận Cập Nhật dịch vụ (Nga) chạy trên Exchange 2000 hoặc 2003 server, tùy thuộc vào khi nó được lập biểu để chạy, tem tất cả các còn lại thư liên quan và liên quan đến hộp thư thuộc tính đối tượng người dùng này. Tại thời điểm này, hộp thư của người dùng đã không được nêu ra được tạo trong Exchange 2000 hoặc 2003 thông tin lưu trữ. Tuy nhiên, người sử dụng là hoàn toàn kích hoạt hộp thư. Bây giờ, hộp thư sẵn sàng để được truy cập.
  4. Khi người sử dụng đầu tiên truy cập hộp thư hay khi thông báo đầu tiên được định tuyến đến hộp thư, hộp thư thực tế được tạo ra trong Exchange 2000 hoặc lưu trữ thông tin năm 2003. Tại thời điểm này, khi Exchange tạo hộp thư cho người sử dụng, quyền hộp thư được đặt trên mô tả bảo mật của hộp thư trong các cửa hàng. Điều này dựa trên các truy cập mục điều khiển (ACEs) được đặt trên các msExchMailboxSecurityDescriptor thuộc tính.

Thuộc tính msExchMailboxSecurityDesciptor

Thuộc tính này tồn tại trên đối tượng người dùng trong Active Directory. Nó lưu giữ một bản sao một phần của mô tả bảo mật của người dùng hộp thư. Thuộc tính này không phải là liên kết trở lại với mô tả bảo mật của người dùng hộp thư.

Nói cách khác, nếu bạn sửa đổi các thuộc tính này trực tiếp, bạn không Cập Nhật mô tả bảo mật thực tế hộp thư vào hộp thư của người dùng trong kho thông tin Exchage, trừ khi bạn đặt thuộc tính này trước khi hộp thư thực tế đã được tạo ra trong các cửa hàng thông tin.

Trong thực tế, nếu có một cuộc xung đột giữa mô tả bảo mật được phản ánh bởi các msExchMailboxSecurityDescriptor thuộc tính vào đối tượng người dùng trong Active Directory và mô tả bảo mật được lưu trữ trên hộp thư của người sử dụng trong các cửa hàng thông tin, trao đổi bản sửa lỗi các msExchMailboxSecurityDescriptor thuộc tính để phản ánh mô tả bảo mật vào hộp thư của người dùng. Nếu bạn sửa đổi mô tả bảo mật của hộp thư của người dùng từ ADUnC hoặc thông qua giao diện CDOEXM IExchangeMailbox, các msExchMailboxSecurityDescriptor thuộc tính được cập nhật tự động để phản ánh những thay đổi này.

Những hạn chế của việc sử dụng các thuộc tính msExchMailboxSecurityDescriptor

  • Những thay đổi bạn thực hiện trên thuộc tính này được phản ánh trên mô tả bảo mật của hộp thư của người sử dụng chỉ khi bạn đặt thuộc tính này trước khi hộp thư được tạo ra trong các cửa hàng thông tin. Lưu ý rằng Exchange 2000 và 2003 hộp thư cho người dùng kích hoạt hộp thư trong Active Directory được tạo ra trong một cửa hàng trao đổi khi người sử dụng đầu tiên truy cập hộp thư hay khi bất kỳ thư được gửi đến người dùng này.
  • Giới hạn một số thuộc tính này là rằng các thuộc tính không phản ánh bất kỳ ACEs được thừa kế trên mô tả bảo mật hộp thư thực tế. Do đó, đọc thuộc tính thư mục này không phải là cách tiếp cận chính xác nhất để đọc một người sử dụng hộp thư quyền.

Lợi thế của việc sử dụng các thuộc tính msExchMailboxSecurityDescriptor

  • Thuộc tính này được định nghĩa trên một đối tượng người dùng trong Active Directory. Vì vậy, nó có thể được truy cập bằng cách sử dụng bất kỳ API là tương thích với Lightweight Directory Access giao thức (LDAP) mà, chẳng hạn như các API ADSI hoặc các API LDAP.
  • Bởi vì mã này không yêu cầu CDOEXM, bạn có thể chạy nó từ một máy chủ mà không có Microsoft Exchange 2000 và 2003 công cụ quản lý hệ thống cài đặt. Tuy nhiên, một lần nữa, bạn phải thiết lập quyền hộp thư trước khi hộp thư của người dùng được tạo ra trong các cửa hàng thông tin. Ngoài ra, bạn có thể đọc các hộp thư quyền bất kỳ lúc nào vào hộp thư của người dùng này. Tuy nhiên, ghi nhớ những hạn chế được đề cập trong bài viết này. (Xem các "hạn chế của việc sử dụng các msExchMailboxSecurityDescriptor Thuộc tính"phần.)
Nếu bạn không đặt các msExchMailboxSecurityDescriptor thuộc tính trên hộp thư cho phép người sử dụng trước khi hộp thư thực tế được tạo ra trong các cửa hàng thông tin, bất động sản mô tả bảo mật thực tế trên hộp thư trong kho thông tin không bao gồm một ACE với những điều sau đây:
  • Các Ủy thác bất động sản thiết lập để Tự
  • Các Truy cập Mask bất động sản thiết lập để Truy cập hộp thư đầy đủ
  • Các Đọc sự cho phép thiết lập để Cho phép
  • Các ACE loại thiết lập để Cho phép
Nếu đây là trường hợp, người dùng có thể gặp vấn đề khi người dùng cố gắng truy cập thư mục công cộng hoặc bất kỳ tài nguyên nào được bên ngoài máy chủ Exchange địa phương. Đây là một trong những lý do tại sao giao diện IMailboxStore trong thư viện CDOEXM là cơ chế được hỗ trợ duy nhất để bay với tốc độ lập trình hộp thư-enable là người dùng thư mục hoạt động chống lại một Exchange 2000 hoặc cửa hàng năm 2003.Đây là một mẫu cho bạn thấy làm thế nào để sử dụng ADSI và CDOEXM làm cho một đối tượng người dùng kích hoạt hộp thư trong Active Directory. Sau đó bạn đặt thủ công các msExchMailboxSecurityDescriptor giao diện để bao gồm một ACE với ủy thác được chỉ rõ trong các mã. Mục đích duy nhất của mẫu này là để cho bạn thấy làm thế nào để thiết lập các thuộc tính này trước khi hộp thư của người dùng đã được truy cập và tạo ra trong các cửa hàng thông tin nếu các thuộc tính không được đặt đúng trong quá khứ.

Thiết lập môi trường Visual Basic chạy mẫu Visual Basic

  1. Bắt đầu Microsoft Visual Basic 6.0 trên Exchange 2000 hoặc máy chủ năm 2003.
  2. Tạo một dự án mới EXE tiêu chuẩn. Để làm điều này, bấm Mới trên các Tệp trình đơn, và sau đó double-click Tiêu chuẩn EXE.
  3. Trên các Dự án trình đơn, nhấp vào Tham khảo, và chọn Thư viện DS kiểu hoạt độngMicrosoft CDO cho quản lý Exchange.
  4. Trong giao diện mã nguồn của các hình thức, gõ hay dán đoạn mã sau vì vậy mà nó sẽ thay thế các Form_Load() chương trình con.
  5. Thay đổi giá trị được đặt trên các biến sUserADsPath đường dẫn LDAP cho đối tượng người dùng thư mục hoạt động hộp thư mà quyền lợi bạn muốn xem hoặc sửa đổi.
CHÚ Ý: Mẫu này cho bạn thấy làm thế nào để đọc các bản sao của các quyền hộp thư được lưu trữ trên các msExchMailboxSecurityDescriptor thuộc tính. Nó cũng cho thấy bạn làm thế nào để sửa đổi các quyền hộp thư và thêm một ACE cho hộp thư đầy đủ quyền truy cập vào các Tự ACE như là sự ủy thác.

Mã Visual Basic

'********************************************************************'*'* Function AddAce(dacl, TrusteeName, gAccessMask, gAceType,'*            gAceFlags, gFlags, gObjectType, gInheritedObjectType)'*'* Purpose: Adds an ACE to a DACL'* Input:       dacl            Object's Discretionary Access Control List'*              TrusteeName     SID or Name of the trustee user account'*              gAccessMask     Access Permissions'*              gAceType        ACE Types'*              gAceFlags       Inherit ACEs from the owner of the ACL'*              gFlags          ACE has an object type or inherited object type'*              gObjectType     Used for Extended Rights'*              gInheritedObjectType'*'* Output:  Object - New DACL with the ACE added'*'********************************************************************Function AddAce(dacl, TrusteeName, gAccessMask, gAceType, gAceFlags, gFlags, gObjectType, gInheritedObjectType)    Dim Ace1    ' Create a new ACE object    Set Ace1 = CreateObject("AccessControlEntry")    Ace1.AccessMask = gAccessMask    Ace1.AceType = gAceType    Ace1.AceFlags = gAceFlags    Ace1.Flags = gFlags    Ace1.Trustee = TrusteeName    'Check to see if ObjectType needs to be set    If CStr(gObjectType) <> "0" Then       Ace1.ObjectType = gObjectType    End If    'Check to see if InheritedObjectType needs to be set    If CStr(gInheritedObjectType) <> "0" Then        Ace1.InheritedObjectType = gInheritedObjectType    End If    dacl.AddAce Ace1    ' Destroy objects    Set Ace1 = NothingEnd FunctionPrivate Sub Form_Load()Dim objContainer As IADsContainerDim objUser As IADsUserDim objMailbox As CDOEXM.IMailboxStoreDim oSecurityDescriptor As SecurityDescriptorDim dacl As AccessControlListDim ace As AccessControlEntry' ********************************************************************' You must change this variable according to your environment'sContainerADsPath = "LDAP://domain.com/cn=Users,DC=domain,DC=com"sUserLoginName = "testUser"sUserFirstName = "Test"sUserLastName = "User"sMBXStoreDN = "CN=Mailbox Store (ExServer),CN=First Storage Group," & _   "CN=InformationStore,CN=ExServer,CN=Servers,CN=AdminGP," & _   "CN=Administrative Groups,CN=Microsoft,CN=Microsoft Exchange," & _   "CN=Services,CN=Configuration,DC=domain,DC=com"sTrustee = "domainName\userName"' ********************************************************************' Get directory container object objectSet objContainer = GetObject(sContainerADsPath)' Create the user object in the target container in Active DirectorySet objUser = objContainer.Create("User", "CN=" & sUserFirstName & " " & _              sUserLastName)objUser.Put "samAccountName", sUserLoginNameobjUser.Put "givenName", sUserFirstNameobjUser.Put "sn", sUserLastNameobjUser.SetInfoobjUser.SetPassword "password"objUser.SetInfo' Mailbox-enable the user object by using the CDOEXM::IMailboxStore ' interface' This also sets the msExchMailboxSecurityDescriptor appropriatelySet objMailbox = objUserobjMailbox.CreateMailbox sMBXStoreDNobjUser.SetInfo'**************************************************************************'  The msExchMailboxSecurityDescriptor attribute is a backlink attribute '   from the Exchange Mailbox in the Web store to the directory. What this'   implies is that the mailbox rights are stored on the actual mailbox in'   the Web store and this directory attribute reflects these mailbox '   rights.'  By default, changing this attribute does not affect the mailbox rights '   in the store. This attribute can only be modified before the actual '   mailbox in the store is created. If it is set before the mailbox in '   the Web store is created, Exchange will use the DACL set on this '   attribute as the DACL for mailbox rights on the mailbox in the store.'   Therefore, it can only be set before the mailbox-creation time.'  On installing Exchange 2000 SP2 on the Exchange Server where this code'   is being run, that would enable modifying the actual mailbox rights '   even after mailbox creation.'**************************************************************************' Get the copy Mailbox Security Descriptor (SD) stored on the' msExchMailboxSecurityDescriptor attributeobjUser.GetInfoEx Array("msExchMailboxSecurityDescriptor"), 0Set oSecurityDescriptor = objUser.Get("msExchMailboxSecurityDescriptor")' Extract the Discretionary Access Control List (ACL) using the ' IADsSecurityDescriptor interfaceSet dacl = oSecurityDescriptor.DiscretionaryAcl''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''  The following block of code demonstrates reading all the ACEs on a '  DACL for the Exchange 2000 mailbox.'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''Debug.Print "Here are the existing ACEs the mailbox's DACL - "' Enumerate all the access control entries (ACEs) in the ACL using ' the IADsAccessControlList interface, thus displaying the current ' mailbox rightsDebug.Print "Trustee, AccessMask, ACEType, ACEFlags, Flags, ObjectType, InheritedObjectType"Debug.Print "-------  ----------  -------  --------  -----  ----------" & _            " -------------------"Debug.PrintFor Each ace In dacl' Display all the ACEs' properties by using the IADsAccessControlEntry ' interface    Debug.Print ace.Trustee & ", " & ace.AccessMask & ", " & _       ace.AceType & ", " & ace.AceFlags & ", " & ace.Flags & ", " & _      ace.ObjectType & ", " & ace.InheritedObjectTypeNext''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''  The following block of code demonstrates adding a new ACE to the DACL '  for the Exchange 2000 mailbox with the Trustee specified in sTrustee, '  giving allow "Full Control" over this mailbox.'  This is the same task that is performed by ADUnC when selecting Add, '  specifying the Trustee, and checking the "Full Mailbox Access" Rights '  checkbox under the Mailbox Rights in the Exchange Advanced tab on the '  properties of a user.'  Similarly, you could remove ACEs from this ACL as well using the '  IADsAccessControlEntry interfaces.'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Template: AddAce(TrusteeName, gAccessMask, gAceType, gAceFlags, gFlags, gObjectType, gInheritedObjectType)' Setting the Access Mask to 131075 enables "full mailbox access" and ' "read" privilegesAddAce dacl, sTrustee, 131075, _       ADS_ACETYPE_ACCESS_ALLOWED, ADS_ACEFLAG_INHERIT_ACE, 0, 0, 0' Add the modified DACL back onto the Security DescriptoroSecurityDescriptor.DiscretionaryAcl = dacl' Save New SD onto the userobjUser.Put "msExchMailboxSecurityDescriptor", oSecurityDescriptor' Commit changes from the property cache to the Information StoreobjUser.SetInfoMsgBox "Done viewing and modifying the copy of the Mailbox Security Descriptor"End Sub				

Mã Visual Basic Script

Dim objContainerDim objUserDim objMailboxDim oSecurityDescriptorDim daclDim ace' ********************************************************************' You must change this variable according to your environment'sContainerADsPath = "LDAP://domain.com/cn=Users,DC=domain,DC=com"sUserLoginName = "testUser"sUserFirstName = "Test"sUserLastName = "User"sMBXStoreDN = "CN=Mailbox Store (ExServer),CN=First Storage Group," & _   "CN=InformationStore,CN=ExServer,CN=Servers,CN=AdminGP," & _   "CN=Administrative Groups,CN=Microsoft,CN=Microsoft Exchange," & _   "CN=Services,CN=Configuration,DC=domain,DC=com"sTrustee = "domainName\userName"' ********************************************************************' Get directory container object objectSet objContainer = GetObject(sContainerADsPath)' Create the user object in the target container in Active DirectorySet objUser = objContainer.Create("User", "CN=" & sUserFirstName & " " & _              sUserLastName)objUser.Put "samAccountName", sUserLoginNameobjUser.Put "givenName", sUserFirstNameobjUser.Put "sn", sUserLastNameobjUser.SetInfoobjUser.SetPassword "password"objUser.SetInfo' Mailbox enable the user object by using the CDOEXM::IMailboxStore ' interface' This also sets the msExchMailboxSecurityDescriptor appropriatelySet objMailbox = objUserobjMailbox.CreateMailbox sMBXStoreDNobjUser.SetInfo'**************************************************************************'  The msExchMailboxSecurityDescriptor attribute is a backlink attribute '   from the Exchange Mailbox in the Web Store to the directory. What this'   implies is that the mailbox rights are stored on the actual mailbox in'   the Web store and this directory attribute reflects these mailbox '   rights.'  By default, changing this attribute does not affect the mailbox rights '   in the store. This attribute can only be modified before the actual '   mailbox in the store is created. If it is set before the mailbox in '   the Web store is created, Exchange will use the DACL set on this '   attribute as the DACL for mailbox rights on the mailbox in the store.'   Therefore, it can only be set before the mailbox creation time.'  On installing Exchange 2000 SP2 on the Exchange Server where this code'   is being run, that would enable modifying the actual mailbox rights '   even after mailbox creation.'**************************************************************************' Get the copy Mailbox Security Descriptor (SD) stored on the' msExchMailboxSecurityDescriptor attributeobjUser.GetInfoEx Array("msExchMailboxSecurityDescriptor"), 0Set oSecurityDescriptor = objUser.Get("msExchMailboxSecurityDescriptor")' Extract the Discretionary Access Control List (ACL) using the ' IADsSecurityDescriptor interfaceSet dacl = oSecurityDescriptor.DiscretionaryAcl''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''  The following block of code demonstrates reading all the ACEs on a '  DACL for the Exchange 2000 mailbox.'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''Wscript.echo "Here are the existing ACEs the mailbox's DACL - "' Enumerate all the access control entries (ACEs) in the ACL using ' the IADsAccessControlList interface, thus displaying the current ' mailbox rightsWscript.echo "Trustee, AccessMask, ACEType, ACEFlags, Flags, ObjectType, InheritedObjectType"Wscript.echo "-------  ----------  -------  --------  -----  ----------" & _            " -------------------"Wscript.echoFor Each ace In dacl' Display all the ACEs' properties using the IADsAccessControlEntry ' interface    Wscript.echo ace.Trustee & ", " & ace.AccessMask & ", " & _       ace.AceType & ", " & ace.AceFlags & ", " & ace.Flags & ", " & _      ace.ObjectType & ", " & ace.InheritedObjectTypeNext''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''  The following block of code demonstrates adding a new ACE to the DACL '  for the Exchange 2000 mailbox with the Trustee specified in sTrustee, '  giving allow "Full Control" over this mailbox.'  This is the same task that is performed by ADUnC when selecting Add, '  specifying the Trustee, and checking the "Full Mailbox Access" Rights '  checkbox under the Mailbox Rights in the Exchange Advanced tab on the '  properties of a user.'  Similarly, you could remove ACEs from this ACL as well using the '  IADsAccessControlEntry interfaces.'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Template: AddAce(TrusteeName, gAccessMask, gAceType, gAceFlags, gFlags, gObjectType, gInheritedObjectType)' Setting the Access Mask to 131075 enables "full mailbox access" and ' "read" priviledgesAddAce dacl, sTrustee, 131075, _       ADS_ACETYPE_ACCESS_ALLOWED, ADS_ACEFLAG_INHERIT_ACE, 0, 0, 0' Add the modified DACL back onto the Security DescriptoroSecurityDescriptor.DiscretionaryAcl = dacl' Save New SD onto the userobjUser.Put "msExchMailboxSecurityDescriptor", oSecurityDescriptor' Commit changes from the property cache to the information storeobjUser.SetInfoMsgBox "Done viewing and modifying the copy of the Mailbox Security Descriptor"'********************************************************************'*'* Function AddAce(dacl, TrusteeName, gAccessMask, gAceType,'*            gAceFlags, gFlags, gObjectType, gInheritedObjectType)'*'* Purpose: Adds an ACE to a DACL'* Input:       dacl            Object's Discretionary Access Control List'*              TrusteeName     SID or Name of the trustee user account'*              gAccessMask     Access Permissions'*              gAceType        ACE Types'*              gAceFlags       Inherit ACEs from the owner of the ACL'*              gFlags          ACE has an object type or inherited object type'*              gObjectType     Used for Extended Rights'*              gInheritedObjectType'*'* Output:  Object - New DACL with the ACE added'*'********************************************************************Function AddAce(dacl, TrusteeName, gAccessMask, gAceType, gAceFlags, gFlags, gObjectType, gInheritedObjectType)    Dim Ace1    ' Create a new ACE object    Set Ace1 = CreateObject("AccessControlEntry")    Ace1.AccessMask = gAccessMask    Ace1.AceType = gAceType    Ace1.AceFlags = gAceFlags    Ace1.Flags = gFlags    Ace1.Trustee = TrusteeName    'Check to see if ObjectType needs to be set    If CStr(gObjectType) <> "0" Then       Ace1.ObjectType = gObjectType    End If    'Check to see if InheritedObjectType needs to be set    If CStr(gInheritedObjectType) <> "0" Then        Ace1.InheritedObjectType = gInheritedObjectType    End If    dacl.AddAce Ace1    ' Destroy objects    Set Ace1 = NothingEnd Function				
THAM KHẢO
Để biết thêm thông tin về CDOEXM IMailboxStore::CreateMailbox, ghé thăm Web site sau của Microsoft Developer Network (MSDN):Để biết thêm chi tiết về giao diện bảo mật liên quan trong ADSI, truy cập vào MSDN Web site sau: Adssecurity.dll là một phần của hoạt động thư mục dịch vụ giao diện (ADSI) 2.5 Resource Kit. Để tải về ADSI 2.5 Resource kit, ghé thăm Web site sau của Microsoft. Sử dụng Regsvr32 đăng ký ADsSecurity.dll. Cho biết thêm informationabout tài khoản liên kết bên ngoài, nhấp vào số bài viết sau đây để xem bài viết trong cơ sở kiến thức Microsoft:
278888Làm thế nào để gắn một hộp thư Exchange 2000 hoặc một hộp thư Exchange 2003 với một tài khoản Windows NT 4.0

Cảnh báo: Bài viết này đã được dịch tự động

Thuộc tính

ID Bài viết: 304935 - Xem lại Lần cuối: 08/27/2011 17:52:00 - Bản sửa đổi: 2.0

Microsoft Exchange Server 2003 Standard Edition, Microsoft Exchange 2000 Server Standard Edition, Microsoft Windows Server 2003, Standard Edition (32-bit x86), Microsoft Windows 2000 Server

  • kbdswadsi2003swept kbhowto kbmt KB304935 KbMtvi
Phản hồi