Войти

Показать полную графическую версию : [решено] Outlook + LDAP адресная книга


dosperados
24-09-2012, 13:04
Уважаемые коллеги подскажите как мне с помощью powershell`а добавить адресную книгу LDAP.
http://forum.oszone.net/attachment.php?attachmentid=87919&stc=1&d=1348477033
и изменить настройки на такие.
http://forum.oszone.net/attachment.php?attachmentid=87920&stc=1&d=1348477178

у меня получилось только найти уже существующую книгу LDAP

try {
Write-Verbose "Подключаемся к Outlook"
$oOutlook = New-Object -ComObject Outlook.Application
} catch {
Write-Verbose "Если создать COM объект не удалось - ВЫХОД"
exit
}
$oNameSpace = $oOutlook.GetNamespace("MAPI")
$oNameSpace.AddressLists
$oNameSpace.AddressLists.Item("название адресной книги")

подскажите как сделать, если есть такая возможность...

Kazun
24-09-2012, 13:12
Как вариант использовать реестр,пример для vbscript - Adding an LDAP address book to MS Outlook (http://www.codeproject.com/Articles/14053/Adding-an-LDAP-address-book-to-MS-Outlook)

dosperados
24-09-2012, 14:37
Как вариант использовать реестр,пример для vbscript - Adding an LDAP address book to MS Outlook »

Спасибо, а как через powershell это сделать, есть вариант?

rudimko
02-04-2013, 15:01
Возобновлю немного тему по адресной книге на VBS. Использую с фильтром:
"(&(mail=*)(|(mail=%s*)(cn=%s*)(sn=%s*)(givenName=%s*)(displayName=%s*)))"

Как переделать фильтр, чтобы в книге были только не заблокированные пользователи?
Пробовал варианты с добавлением:
(&(objectCategory=person)(objectClass=user)(!userAccountControl:1.2.840.113556.1.4.803:=2))
не вышло. Возможно, я просто не умею его готовить ;)

Заранее спасибо за помощь...

Kazun
02-04-2013, 15:18
Попробовать установить фильтр в ключе 001e6624 :
HKCU\Software\Microsoft\Windows Nt\CurrentVersion\Windows Messaging Subsystem\Profiles\<ProfileName>\<ID>

rudimko
17-12-2013, 13:26
Всем доброго.
Народ, есть ли какое-нибудь решение для добавление адресной книги LDAP в Outlook 2013?

TokiMe
05-09-2014, 20:40
LDAP в Outlook 2013

On Error Resume Next
const HKEY_CURRENT_USER = &H80000001
strComputer = "."
Set oReg=GetObject( "winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\default:StdRegProv")
RegistryFolder = "Software\Microsoft\Office\15.0\Outlook\Profiles\Outlook\"

LDAPdisplayname = "Общая адресная книга"
LDAPserver = "dc.domen.loc"
LDAPport = "389"
LDAPsearchbase = "o=base"


'Add Ldap Type Key
sKeyPath = RegistryFolder & "e8cb48869c395445ade13e3c1c80d154\"
oReg.CreateKey HKEY_CURRENT_USER, sKeyPath
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "00033009", Array(0,0,0,0)
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "00033e03", Array(&H23,0,0,0)
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e3001", "Microsoft LDAP Directory"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e3006", "Microsoft LDAP Directory"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e300a", "EMABLT.DLL"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e3d09", "EMABLT"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e3d13", "{6485D268-C2AC-11D1-AD3E-10A0C911C9C0}"
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "01023d0c", Array(&H5c,&Hb9,&H3b,&H24,&Hff,&H71,&H07,&H41,&Hb7,&Hd8,&H3b,&H9c,&Hb6,&H31,&H79,&H92)

'Add Ldap connection settings key
sKeyPath = RegistryFolder & "5cb93b24ff710741b7d83b9cb6317992\"
oReg.CreateKey HKEY_CURRENT_USER, sKeyPath
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "00033009", Array(&H20,0,0,0)
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "000b6613", Array(0,0)
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "000b6615", Array(&H01,&H00)
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "000b6622", Array(&H01,&H00)
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e3001", LDAPdisplayname
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e3d09", "EMABLT"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e3d0a", "BJABLR.DLL"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e3d0b", "ServiceEntry"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e3d13", "{6485D268-C2AC-11D1-AD3E-10A0C911C9C0}"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6600", LDAPserver
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6601", LDAPport
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6602", ""
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6603", LDAPsearchbase
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6604", "(&(mail=*)(|(mail=%s*)(|(cn=%s*)(|(sn=%s*)(givenName=%s*)))))"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6605", "SMTP"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6606", "mail"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6607", "60"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6608", "100"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6609", "120"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e660a", "15"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e660b", ""
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e660c", "OFF"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e660d", "OFF"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e660e", "NONE"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e660f", "OFF"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6610", "postalAddress"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6611", "cn"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6612", "1"
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "001e67f1", Array(&H0a)
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "01023615", Array(&H50,&Ha7,&H0a,&H61,&H55,&Hde,&Hd3,&H11,&H9d,&H60,&H00,&Hc0,&H4f,&H4c,&H8e,&Hfa)
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "01023d01", Array(&He8,&Hcb,&H48,&H86,&H9c,&H39,&H54,&H45,&Had,&He1,&H3e,&H3c,&H1c,&H80,&Hd1,&H54)
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "01026631", Array(&H98,&H17,&H82,&H92,&H5b,&H43,&H03,&H4b,&H99,&H5d,&H5c,&Hc6,&H74,&H88,&H7b,&H34)
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "101e3d0f", Array(&H02,&H00,&H00,&H00,&H0c,&H00,&H00,&H00,&H17,&H00,&H00,&H00,&H45,&H4d,&H41,&H42,&H4c,&H54,&H2e,&H44,&H4c,&H4c,&H00,&H42,&H4a,&H41,&H42,&H4c,&H52,&H2e,&H44,&Hc,&H4c,&H00)

'Append to Backup Key for ldap types
sKeyPath = RegistryFolder & "9207f3e0a3b11019908b08002b2a56c2\"
oReg.getBinaryValue HKEY_CURRENT_USER,sKeyPath, "01023d01",Backup
Dim oldLength
oldLength = UBound (Backup)
ReDim Preserve Backup(oldLength+16)
Backup(oldLength+1) = &He8
Backup(oldLength+2) = &Hcb
Backup(oldLength+3) = &H48
Backup(oldLength+4) = &H86
Backup(oldLength+5) = &H9c
Backup(oldLength+6) = &H39
Backup(oldLength+7) = &H54
Backup(oldLength+8) = &H45
Backup(oldLength+9) = &Had
Backup(oldLength+10) = &He1
Backup(oldLength+11) = &H3e
Backup(oldLength+12) = &H3c
Backup(oldLength+13) = &H1c
Backup(oldLength+14) = &H80
Backup(oldLength+15) = &Hd1
Backup(oldLength+16) = &H54
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "01023d01", Backup


'Append to Backup Key for ldap connection settings
sKeyPath = RegistryFolder & "9207f3e0a3b11019908b08002b2a56c2\"
oReg.getBinaryValue HKEY_CURRENT_USER,sKeyPath, "01023d0e",Backup
oldLength = UBound (Backup)
ReDim Preserve Backup(oldLength+16)
Backup(oldLength+1) = &H5c
Backup(oldLength+2) = &Hb9
Backup(oldLength+3) = &H3b
Backup(oldLength+4) = &H24
Backup(oldLength+5) = &Hff
Backup(oldLength+6) = &H71
Backup(oldLength+7) = &H07
Backup(oldLength+8) = &H41
Backup(oldLength+9) = &Hb7
Backup(oldLength+10) = &Hd8
Backup(oldLength+11) = &H3b
Backup(oldLength+12) = &H9c
Backup(oldLength+13) = &Hb6
Backup(oldLength+14) = &H31
Backup(oldLength+15) = &H79
Backup(oldLength+16) = &H92
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "01023d0e", Backup


'Delete Active Books List Key
sKeyPath = RegistryFolder & "9375CFF0413111d3B88A00104B2A6676\{ED475419-B0D6-11D2-8C3B-00104B2A6676}"
oReg.DeleteKey HKEY_CURRENT_USER, sKeyPath

s-electro
10-01-2017, 15:15
TokiMe, спасибо большое - реально помогло без Excange централизованно развернуть почту. Поправил скрипт чтобы при загрузке проверял наличие адресной книги в реестре и не плодил в аутлуке несколько книг.
On Error Resume Next
const HKEY_CURRENT_USER = &H80000001
strComputer = "."
Set oReg=GetObject( "winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\default:StdRegProv")
RegistryFolder = "Software\Microsoft\Office\15.0\Outlook\Profiles\Outlook\"

LDAPdisplayname = "Общая адресная книга"
LDAPserver = "sepdc.sep.local"
LDAPport = "389"
LDAPsearchbase = "ou=sep,dc=sep,dc=local"


'Add Ldap Type Key
sKeyPath = RegistryFolder & "e8cb48869c395445ade13e3c1c80d154\"
If oReg.EnumKey(HKEY_CURRENT_USER, sKeyPath, "", "") = 0 Then
Wscript.Quit
Else
oReg.CreateKey HKEY_CURRENT_USER, sKeyPath
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "00033009", Array(0,0,0,0)
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "00033e03", Array(&H23,0,0,0)
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e3001", "Microsoft LDAP Directory"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e3006", "Microsoft LDAP Directory"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e300a", "EMABLT.DLL"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e3d09", "EMABLT"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e3d13", "{6485D268-C2AC-11D1-AD3E-10A0C911C9C0}"
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "01023d0c", Array(&H5c,&Hb9,&H3b,&H24,&Hff,&H71,&H07,&H41,&Hb7,&Hd8,&H3b,&H9c,&Hb6,&H31,&H79,&H92)

'Add Ldap connection settings key
sKeyPath = RegistryFolder & "5cb93b24ff710741b7d83b9cb6317992\"
oReg.CreateKey HKEY_CURRENT_USER, sKeyPath
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "00033009", Array(&H20,0,0,0)
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "000b6613", Array(0,0)
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "000b6615", Array(&H01,&H00)
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "000b6622", Array(&H01,&H00)
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e3001", LDAPdisplayname
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e3d09", "EMABLT"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e3d0a", "BJABLR.DLL"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e3d0b", "ServiceEntry"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e3d13", "{6485D268-C2AC-11D1-AD3E-10A0C911C9C0}"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6600", LDAPserver
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6601", LDAPport
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6602", ""
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6603", LDAPsearchbase
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6604", "(&(mail=*)(|(mail=%s*)(|(cn=%s*)(|(sn=%s*)(givenName=%s*)))))"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6605", "SMTP"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6606", "mail"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6607", "60"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6608", "100"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6609", "120"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e660a", "15"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e660b", ""
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e660c", "OFF"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e660d", "OFF"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e660e", "NONE"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e660f", "OFF"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6610", "postalAddress"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6611", "cn"
oReg.SetStringValue HKEY_CURRENT_USER, sKeyPath , "001e6612", "1"
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "001e67f1", Array(&H0a)
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "01023615", Array(&H50,&Ha7,&H0a,&H61,&H55,&Hde,&Hd3,&H11,&H9d,&H60,&H00,&Hc0,&H4f,&H4c,&H8e,&Hfa)
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "01023d01", Array(&He8,&Hcb,&H48,&H86,&H9c,&H39,&H54,&H45,&Had,&He1,&H3e,&H3c,&H1c,&H80,&Hd1,&H54)
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "01026631", Array(&H98,&H17,&H82,&H92,&H5b,&H43,&H03,&H4b,&H99,&H5d,&H5c,&Hc6,&H74,&H88,&H7b,&H34)
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "101e3d0f", Array(&H02,&H00,&H00,&H00,&H0c,&H00,&H00,&H00,&H17,&H00,&H00,&H00,&H45,&H4d,&H41,&H42,&H4c,&H54,&H2e,&H44,&H4c,&H4c,&H00,&H42,&H4a,&H41,&H42,&H4c,&H52,&H2e,&H44,&Hc,&H4c,&H00)

'Append to Backup Key for ldap types
sKeyPath = RegistryFolder & "9207f3e0a3b11019908b08002b2a56c2\"
oReg.getBinaryValue HKEY_CURRENT_USER,sKeyPath, "01023d01",Backup
Dim oldLength
oldLength = UBound (Backup)
ReDim Preserve Backup(oldLength+16)
Backup(oldLength+1) = &He8
Backup(oldLength+2) = &Hcb
Backup(oldLength+3) = &H48
Backup(oldLength+4) = &H86
Backup(oldLength+5) = &H9c
Backup(oldLength+6) = &H39
Backup(oldLength+7) = &H54
Backup(oldLength+8) = &H45
Backup(oldLength+9) = &Had
Backup(oldLength+10) = &He1
Backup(oldLength+11) = &H3e
Backup(oldLength+12) = &H3c
Backup(oldLength+13) = &H1c
Backup(oldLength+14) = &H80
Backup(oldLength+15) = &Hd1
Backup(oldLength+16) = &H54
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "01023d01", Backup


'Append to Backup Key for ldap connection settings
sKeyPath = RegistryFolder & "9207f3e0a3b11019908b08002b2a56c2\"
oReg.getBinaryValue HKEY_CURRENT_USER,sKeyPath, "01023d0e",Backup
oldLength = UBound (Backup)
ReDim Preserve Backup(oldLength+16)
Backup(oldLength+1) = &H5c
Backup(oldLength+2) = &Hb9
Backup(oldLength+3) = &H3b
Backup(oldLength+4) = &H24
Backup(oldLength+5) = &Hff
Backup(oldLength+6) = &H71
Backup(oldLength+7) = &H07
Backup(oldLength+8) = &H41
Backup(oldLength+9) = &Hb7
Backup(oldLength+10) = &Hd8
Backup(oldLength+11) = &H3b
Backup(oldLength+12) = &H9c
Backup(oldLength+13) = &Hb6
Backup(oldLength+14) = &H31
Backup(oldLength+15) = &H79
Backup(oldLength+16) = &H92
oReg.SetBinaryValue HKEY_CURRENT_USER, sKeyPath, "01023d0e", Backup

'Delete Active Books List Key
sKeyPath = RegistryFolder & "9375CFF0413111d3B88A00104B2A6676\{ED475419-B0D6-11D2-8C3B-00104B2A6676}"
oReg.DeleteKey HKEY_CURRENT_USER, sKeyPath
End If

ivldenis
26-02-2017, 22:05
а как авторизацию пользователя на сервере сделать?
И база поиска стоит на "по умолчанию".
А если несколько адресных книг ldap, как мне их в скрипт подставить? У всех сервер один и тот же.

snark
07-04-2017, 09:23
Кто скажет, какие значения Ldap Type Key и Ldap connection settings key нужно подставлять для Office 2016? При добавлении руками получились такие: f24ea1408a434e4e847c566187b9891b и b6934b5f986437469fe20de8ad3777f8. Где можно свериться, верные это ключи или нет?

Нашел утилиту для добавления LDAP профиля: https://blogs.msdn.microsoft.com/emeamsgdev/2016/06/09/mapi-utility-to-add-ldap-address-books-to-existing-outlook-profiles/ — так там идентификаторы тоже отличаются от тех, что создаются вручную.

zhuk09
16-05-2017, 12:45
Всем привет.
Появилась нужда групповыми политиками создать пользователям адресную книгу по LDAP. Да вот только отдельное OU для контактов создавать не хотелось бы, а хотелось бы, чтобы Outlook из LDAP вытаскивал контактную информацию из уже созданных пользователей в нескольких OUшках. Как задать реестровые значения VBSом и распространить по AD понятно... остался вопрос в фильтре контактов, а то в список попадают и всякие служебные записи/ящики.
Хотелось бы фильтровать, хотя бы, по полю "Компания" - если заполнено, то выбирать этот контакт.
Собственно запрос уже написан: "(&(&(|(&(company=*)(!(userAccountControl=66050)))(managedBy=*))(mail=*)))" (mangedBy -для групп рассылки) (В оснастке AD запрос протестирован - выдает как раз то что нужно)
Собственно вопрос в том как применить его к Outlook, чтобы выборка из LDAP проводилась по этому запросу, а не по запросу "по-умолчанию".

1. Знаю что мелкософт на текнете (https://technet.microsoft.com/en-us/library/cc179232%28v=office.12%29.aspx?f=255&MSPPError=-2147217396 ) пишет, что достаточно добавить в реестр значение "001e6624" Стринг со строкой запроса фильтра

2. Однако... Все скрипты, которые по этому поводу найдены на просторах интернета создают в реестре запись с именем "001e6604" и прописывают в нее строку фильтра....

И.. Главное !НО!..... не та ни другая запись мне не помогают, т.е. Оутглюку глубоко фиолетово и на ту и на другую запись в реестре - все равно выборка идет по стандартному запросу "по-умолчанию" т.е. с мусором в книге типа служебных ящиков.

У кого какие идеи есть по этому поводу, можт кто уже внедрял такое и сталкивался с такой проблемой?

ЗЫ: оутглюк 2007.

zhuk09
19-05-2017, 16:59
Коллеги, разве ни кто не делал у себя подобных вещей)))??

zhuk09
22-05-2017, 14:20
UP! еще раз поднимаю тему.

zhuk09
29-05-2017, 12:21
Вопрос еще актуальный)!

zhuk09
08-06-2017, 12:24
Хммммм, не ужели даже у тех кто изначально решал этот вопрос не возникло таких проблем???

DaffiSmik
25-09-2019, 07:31
Привет всем!!!
У нас используется нечто подобное.
Дело в том что у нас несколько территориально разнесённых доменов (лесов с разными именами), с потребностью формировать общую адресную книгу.
У пользователей используются почтовые клиенты Thundebird и Outlook.
Так же внутри компании используется в качестве внутрикорпоративной аськи сервер опенфайер и маленький сайт со списком контактов в регионах. Вручную всё это сводить с ума сойдешь, я одну телефонную книгу до автоматизации почти 4 дня в кучу собирал. И в 13 году пришло решение, потом оно обросло наработками и всякими полезными мелочами.
Общий механизм работы такой:
- По расписанию в каждом домене ежедневно скриптами формируется файл с данными из AD по пользователям, в нем содержатся поля из AD: Код домена, ФИО, должность, отдел, Организация, внутренний телефон, мобильный телефон, почтовый адрес.
- По расписанию центральный сервер скриптом собирает эти файлы со всех серверов, делает общий файл со всеми данными и копирует сформированный общий файл на все сервера.
- На основе общего файла скриптами по расписанию:
- центральный сервер формирует справочник на сайте
- в доменах выполняется офлайновое обновление ростера опенфайер
- на рабочих местах обновление адресных книг.
В скриптах тайны нет, могу поделиться если есть желание. Единственная проблема, скрипт по обновлению адресных книг на клиентах на VBS, все остальные на питоне. Просто скрипт по обновления адресов я писал, а остальные другой программист.
Насколько это подходит к данной теме не знаю :)
Вероятно проще в новую тему переехать.
Конкретно мой скрипт обновления адресных книг делает следующее:
'Скрипт обновления адресных книг Mozilla Thunderbird и Microsoft Outlook
'Протестирован на ОС: WinXP\Vista\7\8\8.1\10 32bit\64bit
'Версия: 2.2.4

'Скрипт производит обновление адресных книг Mozilla Thunderbird (методом копирования) и Microsoft Outlook (методом
'удаления старых адресных книг, создания и заполнения новых) из предварительно подготовленных файлов в формате .csv
'Помимо основной функции (обновление адресных книг) скрипт также выполняет формирование адресных книг Mozilla Thunderbird
'путем эмуляции импорта из файлов csv с последующей выгрузкой подготовленных адресных книг.
'"По умолчанию" предполагается что папка с контактами лежит на контроллере домена в папке %Net_f%, имя контроллера домена
'определяется скриптом из сетевых параметров компьютера. Если компьютер не заведен в домен возможны 2 варианта обновления:
' 1 Вариант. Необходимо в блоке настроек (см.ниже) файловой системы указать имя или IP-адрес компьютера/сервера (%NameServ%)
' с папкой общего доступа (%Net_f%) в которой лежат файлы импорта .
' 2 Вариант. Необходимо скопировать файлы импорта в папку из которой запускается скрипт, производить запуск скрипта
' с параметром "loc".
'!!! Для облегчения работы скрипта и меньшей нагрузки на систему с версии 2.1.1 требуется использование библиотеки AutoiX.
'!!! Библиотека регистрируется автоматически. Скрипт выполняет поиск библиотеки для установки в следующих папках:
'!!! 1 - сетевая папка с контактами на сервере \ вложенная папка AutoitX, т.е. %NameServ%\%Net_f%\AutoItX\AutoItx3.dll
'!!! 2 - папка откуда запускается скрипт
'!!! 3 - папка профиля пользователя
'!!!!При запуске скрипта с параметрами предополагается использование тихого режима - скрипт будет задавать вопросы только по
'!!!! ключевым моментам способным оказать влияние на работу пользователя.!!!!

'Параметры запуска скрипта (порядок параметров не имеет значения):
'imp - запуск скрипта в режиме создания адресных книг Mozilla Thunderbird с последующей выгрузкой на сервер
'exp - скрипта в режиме выгрузки адресных книг Mozilla Thunderbird на сервер
'kag - запуск скрипта в режиме обновления адресных книг сотрудников компании и контрагентов
'loc - файлы с контактами для импорта находятся в папке запуска скрипта
'
'Пример строки запуска: AdBookUpd.vbs imp kag

Iska
25-09-2019, 17:20
DaffiSmik, выкладывайте, почему нет. Будет интересно — покритикуем.

DaffiSmik
26-09-2019, 04:58
В моём посте текстовый файл, надо переименовать в vbs




© OSzone.net 2001-2012