A felhasználói attribútumok között, a Windows Server 2000 Active Directory sémájának verziójától kezdve, van egy speciális attribútum thumbnailPhoto, ahol a felhasználó fotóit (vagy bármilyen más képet 🙂) bináris adatként tárolhatja. Az Lync 2010-től kezdődő Outlook, a SharePoint (és más alkalmazások) felhasználhatják az attribútumban tárolt adatokat a felhasználói fénykép megjelenítéséhez a felületen. Ezenkívül ezeket a képeket a Windows felhasználók avatárának is lehet használni..
Nézzünk néhány egyszerű forgatókönyvet a felhasználói fotók feltöltésére az AD-be és az adatok exportálására egy tartományból a képfájlokba.
A felhasználói fotók fő jellemzői és korlátozásai az AD-ben:
- Az a felhasználó, amelyben a letöltött fényképet tárolja, a thumbnailPhoto attribútumértékének maximális mérete 100 Kb. Általános javaslat azonban, hogy AD méretű képfájlt használjunk felhasználói fényképként AD-ben 10 Kb-ig és mérete 96 × 96 képpont
- a fényképek megjelenítéséhez az Outlook 2010 vagy újabb verziókban legalább az AD 2008 séma egyik verziójára van szükség
- Az AD-ben található sok felhasználói fotó esetén replikációs problémák merülhetnek fel az NTDS.DIT adatbázis növekedése miatt
- A felhasználóknak joguk van megváltoztatni saját fotóikat AD-ben. Ha delegálnia kell a fényképek feltöltésének képességét más felhasználók számára (például a HR-osztály számára), akkor meg kell adnia a Írási miniatűr fotót a kívánt OU-nak.
Tartalom:
- Felhasználói fénykép telepítése az AD-ben a PowerShell használatával
- Töltse fel az AD felhasználói fotót az Exchange Shell segítségével
- Kép kötegelt importálása az AD-be
- Töltse fel a felhasználói fényképeket az Active Directory-ból egy fájlba
Felhasználói fénykép telepítése az AD-ben a PowerShell használatával
Ahhoz, hogy egy felhasználói fényképet betölthessen az Active Directory-ban a PowerShell használatával, be kell töltenie a modult aktív telefonkönyv modul mert A windows PowerShell és a Set-ADUser parancsmag segítségével frissítse a thumbnailPhoto attribútumot azáltal, hogy értékként betölti a képfájl tartalmát.
Importmodul ActiveDirectory
$ photo = [byte []] (Get-Content C: \ PS \ admin_photo.jpg -Kódolási bájt)
Set-ADUser vvkuzmin -Csere @ thumbnailPhoto = $ photo
Ugyanaz a sorban:
Set-ADUser vvkuzmin -Csere @ thumbnailPhoto = ([byte []] (Get-Content "C: \ ps \ admin_photo.jpg" - kódolási bájt))
Ezeknek a parancsoknak a végrehajtása után az Active Directory-ban tárolt ügyfélfájl megjelenik az Outlook, Lync, OWA stb. Kliensekben (a replikáció befejezése és a GAL frissítése eltarthat egy ideig)..
Töltse fel az AD felhasználói fotót az Exchange Shell segítségével
A felhasználói fényképek AD-re történő feltöltésének hasonló funkcióit az Exchange Management Shell konzol támogatja. Ezekre a célokra a parancsmag használható Import-RecipientDataProperty.
megjegyzés. Az Exchange 2010 Import-RecipientDataProperty parancsmagja nem tudja betölteni a 10 KB-nál nagyobb képet.A vvkuzmin fotójának frissítésére szolgáló parancs így néz ki:
Import-RecipientDataProperty -Azonosság „vvkuzmin” -Kép -FileData ([Byte []] $ (Get-Content -Path „C: \ PS \ admin_photo.jpg” -Kódolási bájt -ReadCount 0))
Kép kötegelt importálása az AD-be
A képek kötegelt importálásához sok Active Directory-felhasználó egyszerre szükség van egy CSV-fájlra, amely tartalmazza a fiókok listáját és a hozzájuk tartozó fényképfájlokat. Az import.csv fájl formátuma a következő lehet:
AD_felhasználónév, fénykép
avivanov, C: \ PS \ avivanov.jpg
[email protected], C: \ PS \ jsmith.jpg
pppetrov, C: \ PS \ pppetrov.png
A következő parancs betölti a felhasználók listáját a CSV-fájlból, és frissíti fotóit AD-ben:
Import-Csv C: \ PS \ import.csv |% Set-ADUser -Identity $ _. AD_felhasználónév -Csere @ @ thumbnailPhoto = ([byte []] (Get-Content $ _. Photo -Encoding byte))
Töltse fel a felhasználói fényképeket az Active Directory-ból egy fájlba
Az AD-ből származó felhasználói fénykép menthető grafikus fájlba. Ehhez válassza ki a kívánt felhasználót a Get-ADUser segítségével:
$ ADuser = Get-ADUser vvkuzmin -Properties thumbnailPhoto
És mentse a thumbnailPhoto attribútum tartalmát egy jpg fájlba:
$ ADuser.thumbnailPhoto | Set-Content vvkuzmin.jpg -Kódolási bájt
A következő szkript segítségével töltse fel a képet minden a felhasználók egy adott tárolóból (OU) egy fájlba:
Importmodul ActiveDirectory
$ ADusers = Get-ADUser -Filter * -SearchBase "OU = Felhasználók, OU = Ufa, DC = winitpro, DC = hu" -Tulajdonságok thumbnailPhoto | ? $ _. thumbnailPhoto
foreach ($ ADuser $ ADusers-ben)
$ name = $ ADuser.SamAccountName + ".jpg"
$ ADuser.thumbnailPhoto | Set-Content $ name -Kódolási bájt
És végül, néhány hasznos kérdés. Az első lehetővé teszi azon felhasználók kiválasztását, akiknek fotókészlete van az AD thumbnailPhoto attribútumban
Get-ADUser -Filter * -tulajdonságok bélyegképePhoto | ? $ _. thumbnailPhoto | válassza a Név lehetőséget
A második kérelem lehetővé teszi fotó nélküli felhasználók kiválasztását:
Get-ADUser -Filter * -tulajdonságok bélyegképePhoto | ? (-nem ($ _. indexkép)) | válassza a Név lehetőséget
Nagyon sok harmadik féltől származó segédprogram, amelyek lehetővé teszik a grafikus szerkesztők számára, hogy az AD felhasználók számára fényképeket kényelmesebb formában állítsanak be. Általában azonban működésük felesleges, és a harmadik féltől származó AD-szerkesztő szoftver használatának kockázata meglehetősen jelentős. Sőt, minden változtatás könnyen elvégezhető a PowerShell segítségével.