Active-Directory

使用 Active Directory 欄位在 Exchange 2003 中實施簽名策略

  • September 19, 2020

我們的組織已決定需要根據所有使用者的姓名、職位、聯繫方式和辦公地點為所有使用者設置一個標準簽名塊,所有這些都儲存在 Active Directory 中。

有沒有人找到一個基於 Active Directory 欄位自動生成 Outlook/Exchange 2003 簽名的巧妙解決方案?

我是Exclaimer Mail Utilities的長期客戶和粉絲。

它位於您的 Exchange 伺服器上,並具有許多可自定義的規則,用於確定是否應用固定式。我將它添加到外部發送的所有電子郵件的頂部,我們的公司徽標,以及底部的人名、職位和各種電話號碼——所有這些都是從 Active Directory 中提取的。

我只使用過一次支持,但他們非常友好、知識淵博,並且很快解決了我的問題。

我寫的腳本非常好運。它從各種 AD 欄位寫入不可見的 Word 文件,然後將其複製到 Outlook 2007 作為預設和回复簽名。

我不再讓它在每次登錄時自動執行。我很少會在使用者第一次登錄機器時遇到問題,如果不通過嚮導就無法打開 Outlook。到目前為止,它是一個 GPO,它只是將一個名為“重置電子郵件簽名”的快捷方式推送到使用者桌面。這也允許使用者擁有非預設簽名,而不會每次都被覆蓋。

On Error Resume Next

Set objSysInfo = CreateObject("ADSystemInfo")

strUser = objSysInfo.UserName
Set objUser = GetObject("LDAP://" & strUser)

strName = objUser.FullName
strTitle = objUser.Title
strDepartment = objUser.Department
strCompany = objUser.Company
strPhone = objUser.telephoneNumber
strFax = objUser.faxNumber

strStreet = objUser.StreetAddress
strCity = objUser.L
strState = objUser.St
strPOBox = objUser.postalCode

strFirstName = objUser.givenName
strInitials = objUser.initials
strLastName = objUser.sn
If strInitials = "" Then
   strFullName = strFirstName & " " & strLastName
Else
   strFullName = strFirstName & " " & strInitials & ". " & strLastName
End If

Set objWord = CreateObject("Word.Application")

Set objDoc = objWord.Documents.Add()
Set objSelection = objWord.Selection
objSelection.Style = "No Spacing" 
objSelection.Font.Name = "Calibri"
objSelection.Font.Size = "11"

Set objEmailOptions = objWord.EmailOptions
Set objSignatureObject = objEmailOptions.EmailSignature

Set objSignatureEntries = objSignatureObject.EmailSignatureEntries

objSelection.TypeParagraph()
objSelection.TypeText "Sincerely,"
objSelection.TypeParagraph()
objSelection.TypeParagraph()
objSelection.TypeText "ORGANIZATION NAME"
objSelection.TypeParagraph()
objSelection.TypeParagraph()
objSelection.TypeText strFullName & ", " & strTitle
'objSelection.TypeText strName & ", " & strTitle
objSelection.TypeParagraph()
objSelection.TypeParagraph()
objSelection.TypeText strStreet
objSelection.TypeParagraph()
objSelection.TypeText strCity & ", " & strState & " " & strPOBox
objSelection.TypeParagraph()
objSelection.TypeText "Desk: " & strPhone
objSelection.TypeParagraph()
objSelection.TypeText "Fax:    " & strFax
objSelection.TypeParagraph()

'Hyperlink below
objDoc.Hyperlinks.Add objSelection.Range, "www.yoursitename.com", "", "", "www.yoursitename.com", ""

objSelection.TypeParagraph()
objSelection.TypeParagraph()

'Picture below
Set objShape = objSelection.InlineShapes.AddPicture("\\fileserver\path\to\image.BMP")

Set objSelection = objDoc.Range()

objSignatureEntries.Add "AD Signature", objSelection
objSignatureObject.NewMessageSignature = "AD Signature"
objSignatureObject.ReplyMessageSignature = "AD Signature"

objDoc.Saved = True
objWord.Quit

如果您有任何問題,請告訴我!

引用自:https://serverfault.com/questions/149180