Вот же дурь. Это теперь любой человек становится фактически оператором ПД. У каждого есть как минимум телефон, в котором хранятся контакты (то есть ПД). Номер телефона, e-mail, месенджер, а иногда адрес и фотография еще, это все подпадает под «любая информация, относящаяся к прямо или косвенно определенному или определяемому физическому лицу». Причем все это структурировано, с возможностью поиска, получения доступа и даже, О УЖАС, возможностью передачи третьим лицам прямо в электронном виде.
Так что, мне теперь нужно защищать эти ПД согласно этому ФЗ?! Так еще, по-хорошему, нужно согласие спрашивать, так как номер телефона/e-mail/фотография/адрес — не всегда публичная информация и передается мне лично. А иногда так даже не мне. Например общие контакты клиентов из Exchange.
Это как раз очевидный момент. Пускай всех узнает. Эту информацию фейсбук будет в своих целях использовать? Как? Максимум таргетинг улучшить.
Но самое интересное то, что даже если они уберут предложения из интерфейса ничего им не помешает делать это молча.
В любом случаи не вижу в этом ничего ужасного.
Если я все правильно понимаю, то система сама никого на фотках не отмечает. А всего навсего упрощает самому пользователю этот процесс. И если пользователь не отметит (не заэпрувит результат распознавания) то ничего не произойдет. Более того, система подсказывает только твоих друзей, которых ты (по идее) и так знаешь и можешь отметить. Чего кипишить-то? Кому какая разница кто именно отметит? У гугла такой функционал в пикасе был еще черти когда, и ничего никто не поднимал бучу.
ИМХО Дуростью пахнет очередной. Раньше бодали майкросфт, теперь фейсбук.
И даже если система перестанет предлагать, никто не сможет поручится, что она при этом перестанет распознавать и агрегировать эти данные, для себя с какой-нить целью.
ошибка возникает потому, что в переменную $ev не загружено ни одного события.
Вариянтов два. Либо не верно указано имя сервера(компьютера) с которого нужно получть eventLog.
Либо нет ни одного нужного события. Если целевая ОС — не серверная. Нужно повышать уровень логирования. События успешной печати по-умолчанию включены только в серверных ОС-ях.
Попробуйте просто вывести список событий:
$tm1 = get-date 6:00 #ставим дату на 6:00 сегодня
Get-EventLog -ComputerName servername -LogName System -Source Print -InstanceId 1073741834 -after $tm1
Скорее всего он будет пуст. Если будет пуст, попробуйте убрать ключ -after, чтобы вывести все.
Я тестил на WinServ2003R2 и 2008R2, работает. Когда выклдывал сам скрипт — немного его отредактировал (привел в божеский вид), но проверил перед тем как выкладывать.
Нет. не думал об этом, если честно. Просто другого способа посчитать кто сколько печатал я не нашел. А про количество копий — не подумал вообще, если честно.
У меня ситуция другая. Принтеры все сетевые, но установлены на одном сервере, а пользователям шарятся как сетевой ресурс, причем насовываются политикой. То есть печатают все через один сервер.
Возникала задача подсчитать не просто сколько печатают. а кто именно сколько печатает. В решении этой задачи SNMP не поможет, по крайней мере не очень представляю как.
В итоге воспользовался тем, что Windows Server каждый чих — пишет в лог. Вообще связка PowerShell + EventLog дает очень много возможностей разных по сбору статичтики и агрегации информации.
Далее приведу скриптик, который агрегирует информацию из системного лога сервера печати и строит статистику по пользователям. Если таких серверов больше одного, то не фокус модифицировать скрипт, для сбора логов с нескольких серверов. Также можно агрегировать логи еще и с машин пользователей, но Spooler на десктопных версиях Window по-умолчанию использует более низкий уровень логирования и не пишет в лог события удачной распечатки. Повысить его можно насунув политикой некий ключ реестра (не помню какой именно за давностью, но легко нагуглить).
Сразу оговорюсь. Глубоко в Powershell не лазил, так что может можно и красивее реализовать. Делал как знаю или как догадался сам.
-------------------------------------------------------------------------------------
$tm1 = get-date 6:00 #ставим дату на 6:00 сегодня
$ev = Get-EventLog -ComputerName servername -LogName System -Source Print -InstanceId 1073741834 -after $tm1
$typedef = "public struct userCntr {public string usr; public int cnt;}" #Описываем структуру
Add-Type -TypeDefinition $typedef #создаем тип по описанию
$allusers = $buf1,$buf2 #не нашел более простого способа создать массив объектов. Лень было разбираться, как конструктор кастомный написать. Проще потом отфильтровать две пустые записи в начале массива, которые возникнут при таком его создании. Они никак не мешеют, только глаза мазолят
foreach ($el in $ev)
{
$buf3 = New-Object userCntr;
$buf3.usr = $el.replacementstrings[2];
$buf3.cnt = $el.replacementstrings[6];
$mrk = 0
for ($i=0; $i -lt $allusers.Length; $i++)
{
if ($allusers[$i].usr -eq $buf3.usr) {$allusers[$i].cnt += $buf3.cnt; $mrk = 1}
}
if ($mrk -ne 1) {$allusers += $buf3} else {$mrk = 0}
}
$allusers | ? {$_.usr -ne $buf1.usr} > ("C:\PrintStat\" + (get-date -UFormat "%d-%m-%Y") + ".txt") #фильтр нужен, чтобы убрать первые две пустые записи, которые возникают при создании массива объектов
Если запускать скрипт на машине, на которой установлены расширения PowerShell для работы с AD, то можно еще по логинам и имена из AD выдергивать (Get-ADUser user1).name
По поводу ISP — не совсем правда. Иметь своего человека в структуре провайдера, желательно повыше, чем просто саппорт — гораздо лучшее подспорье, чем куча бумажек с подписями и печатями. Проверено не однократно.
У меня пользователей не много, поэтому спокойно обхожусь списком в txt. Поиском нахожу по логину. Но в принципе, если заморочится, можно по всякому оформить. Дописать, чтобы не перетирались данные в файле, а просто обновлялись. Или запускать не в конце дня, я в 10:00 чтобы иметь картинку на сегодня. В общем крутить дальше есть куда.
Вообще, если немного продолжить тему. То до глобального перехода на Windows Server 2008/2008R2 и Windows 7 на клиентских машинах. Был еще удобный способ.
Поднимается WINS. На машинах включается NetBIOS и по DHCP насовывается адрес WINS сервера. И в базе WINS сервера каждый компьютер регистрирует при входе еще и имя пользователя. Удобно было смотреть практически в реальном времени. К сожалению в Windows Vista, 7, 2008 и 2008R2 WINS поддерживается чисто символически, по стольку поскольку. И имя пользователя не регистрирует. Ну или я просто не раскопал как сделать так, чтобы регистрировал.
Ну скрипт — это громко сказано.
Выглядит как-то так:
$tm1 = get-date 7:00 #ставим дату на 7:00 сегодня
$tm2 = get-date 10:00 #ставим дату на 10:00 сегодня
$au = Get-EventLog -ComputerName DC01 -LogName Security -After $tm1 -Before $tm2 -InstanceId 4776 #выгребаем нужные события за нужный период
$lst = $au | foreach {$_.replacementstrings[1] + " | " + $_.replacementstrings[2]} #выдергиваем нужные данные
$lst3 = "","" #самый простой способ создать массив строк
foreach ($ls in $lst) {$poi = [regex]::match($lst3,$ls); $poi.Success ; if ($poi.Success -ne "True") {$lst3 += $ls}} #вычленяем повторения
$lst3 > C:\<путь>\uc.txt
Запускается в конце дня.
Только в большой системе за три часа размер лога может быть весьма большой, так что первый этап работает медленно. Запускать кстати можно не на сервере.
Также в этот спсок попадают даже компьютеры, не входящие в домен, но пытающиеся обращаться к AD за авторизацией, например удаленные пользователи, заходящие в терминал.
А у меня пользователи все сидят за одними и теме-же машинами. Меняется не часто.
Я просто по расписанию запускаю коротенький ps-скриптик, который ил лога Безопасност на контролеле домена выгребает все события по категории «Проверка учетных данных». И из свойств события выбираются связка User — Computer. Затем просто убираются дубликаты и скалдывается в файлик. Раз в неделю вполне достаточно.
Лучший плеер для Android-а, да и не только для него — iPod.
Вообще для музыки (очень редко пригождается) использую HTC-шный родной. Плюс BeyondPod для подкастов. Иногда под руками нет Wi-Fi или ipod просто сел. Во всех остальных случаях отдельный плеер — удобнее в разы.
Просто мне в наследство досталась 406-ая. Сам я от телефонии далек. Но возникла нужда подключить комнату а другом конце здания. Вынес туда один из блоков, а потом выяснилось, что 406-ая, в отличии от 500-й, требует для соединения блоков экранированный кабель, в итоге спалил порт на одном и блоков.
У меня вопрос возник, не совсем в тему.
Стоят ли у Вас все модули АТС-ки в одной стойке, или разнесены по разным помешениям. Если второй вариант, то расскажите каими кабелями, и какой длины у вас экстеншены с головой соединяются.
Так что, мне теперь нужно защищать эти ПД согласно этому ФЗ?! Так еще, по-хорошему, нужно согласие спрашивать, так как номер телефона/e-mail/фотография/адрес — не всегда публичная информация и передается мне лично. А иногда так даже не мне. Например общие контакты клиентов из Exchange.
Но самое интересное то, что даже если они уберут предложения из интерфейса ничего им не помешает делать это молча.
В любом случаи не вижу в этом ничего ужасного.
ИМХО Дуростью пахнет очередной. Раньше бодали майкросфт, теперь фейсбук.
И даже если система перестанет предлагать, никто не сможет поручится, что она при этом перестанет распознавать и агрегировать эти данные, для себя с какой-нить целью.
Вариянтов два. Либо не верно указано имя сервера(компьютера) с которого нужно получть eventLog.
Либо нет ни одного нужного события. Если целевая ОС — не серверная. Нужно повышать уровень логирования. События успешной печати по-умолчанию включены только в серверных ОС-ях.
Попробуйте просто вывести список событий:
$tm1 = get-date 6:00 #ставим дату на 6:00 сегодня
Get-EventLog -ComputerName servername -LogName System -Source Print -InstanceId 1073741834 -after $tm1
Скорее всего он будет пуст. Если будет пуст, попробуйте убрать ключ -after, чтобы вывести все.
Я тестил на WinServ2003R2 и 2008R2, работает. Когда выклдывал сам скрипт — немного его отредактировал (привел в божеский вид), но проверил перед тем как выкладывать.
Возникала задача подсчитать не просто сколько печатают. а кто именно сколько печатает. В решении этой задачи SNMP не поможет, по крайней мере не очень представляю как.
В итоге воспользовался тем, что Windows Server каждый чих — пишет в лог. Вообще связка PowerShell + EventLog дает очень много возможностей разных по сбору статичтики и агрегации информации.
Далее приведу скриптик, который агрегирует информацию из системного лога сервера печати и строит статистику по пользователям. Если таких серверов больше одного, то не фокус модифицировать скрипт, для сбора логов с нескольких серверов. Также можно агрегировать логи еще и с машин пользователей, но Spooler на десктопных версиях Window по-умолчанию использует более низкий уровень логирования и не пишет в лог события удачной распечатки. Повысить его можно насунув политикой некий ключ реестра (не помню какой именно за давностью, но легко нагуглить).
Сразу оговорюсь. Глубоко в Powershell не лазил, так что может можно и красивее реализовать. Делал как знаю или как догадался сам.
-------------------------------------------------------------------------------------
$tm1 = get-date 6:00 #ставим дату на 6:00 сегодня
$ev = Get-EventLog -ComputerName servername -LogName System -Source Print -InstanceId 1073741834 -after $tm1
$typedef = "public struct userCntr {public string usr; public int cnt;}" #Описываем структуру
Add-Type -TypeDefinition $typedef #создаем тип по описанию
$buf1 = New-Object userCntr;
$buf2 = New-Object userCntr;
$allusers = $buf1,$buf2 #не нашел более простого способа создать массив объектов. Лень было разбираться, как конструктор кастомный написать. Проще потом отфильтровать две пустые записи в начале массива, которые возникнут при таком его создании. Они никак не мешеют, только глаза мазолят
foreach ($el in $ev)
{
$buf3 = New-Object userCntr;
$buf3.usr = $el.replacementstrings[2];
$buf3.cnt = $el.replacementstrings[6];
$mrk = 0
for ($i=0; $i -lt $allusers.Length; $i++)
{
if ($allusers[$i].usr -eq $buf3.usr) {$allusers[$i].cnt += $buf3.cnt; $mrk = 1}
}
if ($mrk -ne 1) {$allusers += $buf3} else {$mrk = 0}
}
$allusers | ? {$_.usr -ne $buf1.usr} > ("C:\PrintStat\" + (get-date -UFormat "%d-%m-%Y") + ".txt") #фильтр нужен, чтобы убрать первые две пустые записи, которые возникают при создании массива объектов
-------------------------------------------------------------------------------------
Если запускать скрипт на машине, на которой установлены расширения PowerShell для работы с AD, то можно еще по логинам и имена из AD выдергивать (Get-ADUser user1).name
Вообще, если немного продолжить тему. То до глобального перехода на Windows Server 2008/2008R2 и Windows 7 на клиентских машинах. Был еще удобный способ.
Поднимается WINS. На машинах включается NetBIOS и по DHCP насовывается адрес WINS сервера. И в базе WINS сервера каждый компьютер регистрирует при входе еще и имя пользователя. Удобно было смотреть практически в реальном времени. К сожалению в Windows Vista, 7, 2008 и 2008R2 WINS поддерживается чисто символически, по стольку поскольку. И имя пользователя не регистрирует. Ну или я просто не раскопал как сделать так, чтобы регистрировал.
Выглядит как-то так:
$tm1 = get-date 7:00 #ставим дату на 7:00 сегодня$tm2 = get-date 10:00 #ставим дату на 10:00 сегодня
$au = Get-EventLog -ComputerName DC01 -LogName Security -After $tm1 -Before $tm2 -InstanceId 4776 #выгребаем нужные события за нужный период
$lst = $au | foreach {$_.replacementstrings[1] + " | " + $_.replacementstrings[2]} #выдергиваем нужные данные
$lst3 = "","" #самый простой способ создать массив строк
foreach ($ls in $lst) {$poi = [regex]::match($lst3,$ls); $poi.Success ; if ($poi.Success -ne "True") {$lst3 += $ls}} #вычленяем повторения
$lst3 > C:\<путь>\uc.txt
Запускается в конце дня.
Только в большой системе за три часа размер лога может быть весьма большой, так что первый этап работает медленно. Запускать кстати можно не на сервере.
Также в этот спсок попадают даже компьютеры, не входящие в домен, но пытающиеся обращаться к AD за авторизацией, например удаленные пользователи, заходящие в терминал.
Я просто по расписанию запускаю коротенький ps-скриптик, который ил лога Безопасност на контролеле домена выгребает все события по категории «Проверка учетных данных». И из свойств события выбираются связка User — Computer. Затем просто убираются дубликаты и скалдывается в файлик. Раз в неделю вполне достаточно.
МТС в Ростове. Правда мерил пару месяцев назад. На андроиде программа рисует в старом формате.
Тоже сделано до обновления еще. Сейчас скорость просела сильно из-за проблем на оборудовании которые уже две недели не могут устранить.
Вообще для музыки (очень редко пригождается) использую HTC-шный родной. Плюс BeyondPod для подкастов. Иногда под руками нет Wi-Fi или ipod просто сел. Во всех остальных случаях отдельный плеер — удобнее в разы.
Стоят ли у Вас все модули АТС-ки в одной стойке, или разнесены по разным помешениям. Если второй вариант, то расскажите каими кабелями, и какой длины у вас экстеншены с головой соединяются.