View Issue Details

IDProjectCategoryView StatusLast Update
0002072WishesPanel.Panel Modespublic2013-02-03 00:31
Reporteralexmitin Assigned To 
PrioritynormalSeverityfeatureReproducibilityN/A
Status newResolutionopen 
Platformx64OSWindowsOS VersionVista SP2
Product Version2.0 
Summary0002072: Показывать колонку Owner в виде SID строки
DescriptionДобавить возможность показывать колонку Owner в виде SID строки.

Тип колонки: OS (O - owner, S - SID)

http://msdn.microsoft.com/en-us/library/windows/desktop/aa376399%28v=vs.85%29.aspx
------------

Также при типе колонки O или OL показывать SID для случаев, когда нельзя определить имя Owner. Например, файлы были созданы пользователем, а потом его учетная запись удалена.


TagsNo tags attached.
Build

Activities

DrKnS

2012-04-13 16:41

administrator   bugnote:0008893

Last edited: 2012-04-13 16:52

> Добавить возможность показывать колонку Owner в виде SID строки.

Зачем?

> Также при типе колонки O или OL показывать SID для случаев, когда нельзя определить имя Owner.

Это есть, начиная с 1813

alexmitin

2012-04-16 16:52

reporter   bugnote:0008912

>> Добавить возможность показывать колонку Owner в виде SID строки.
> Зачем?

Для больших файл серверов существовует большое количество пользователей. При этом пользователи из разных доменов. Трансляция SID в имя занимает длительное время.

Хотелось бы избежать трансляции и просто видеть SID, как он есть в Security Descriptor.

Тип колонки OS - это в дополнение к существующим типам, а не вместо них.

DrKnS

2012-04-17 08:20

administrator   bugnote:0008918

Ок, мотив понятен, но в виде флага к колонке O это не лезет в концепцию фаровских колонок: дизайн таков, что флаги влияют на отображение уже полученной информации, а тут надо влиять на само получение.
Пока хз что с этим делать.

alexmitin

2012-04-17 18:31

reporter   bugnote:0008942

Я думаю можно использовать такой подход:

1) В типе FileListItem
   вместо: string strOwner;
   добавить: PSID pOwnerSid;

2) В функции ReadFileNames заполнять NewPtr->pOwnerSid, используя модифицированную версию функции GetFileOwner. Например такую:

bool GetFileOwner(const wchar_t *Computer, const wchar_t *Name, PSID &pOwnerSid)
Эта функция, также как и старая GetFileOwner() добавляет SID в кэш.

3) Функция ShowList использует:

  pOwnerSid=ListData[ListPos]->pOwnerSid;

и в зависимости от флага показывает имя:
'O' - AfterFirstSlash(GetNameFromSIDCache(pOwnerSid))
'OL' - GetNameFromSIDCache(pOwnerSid)
'OS' - ConvertSidToStringSid(pOwnerSid)

DrKnS

2012-04-17 18:43

administrator   bugnote:0008943

> Эта функция, также как и старая GetFileOwner() добавляет SID в кэш.

А как такой подход поможет избежать тормозов из-за трансляции, если добавление SID'ов в кеш как раз и подразумевает трансляцию?

alexmitin

2012-04-17 18:56

reporter   bugnote:0008944

Верно, я забыл про это. Ну тогда без добавления в кеш.
А добавлять в кеш можно при отображении в режимах 'O' и 'OL'.

Issue History

Date Modified Username Field Change
2012-04-13 15:30 alexmitin New Issue
2012-04-13 16:41 DrKnS Note Added: 0008893
2012-04-13 16:52 DrKnS Note Edited: 0008893
2012-04-16 16:52 alexmitin Note Added: 0008912
2012-04-17 08:20 DrKnS Note Added: 0008918
2012-04-17 18:31 alexmitin Note Added: 0008942
2012-04-17 18:43 DrKnS Note Added: 0008943
2012-04-17 18:56 alexmitin Note Added: 0008944
2013-02-03 00:31 alexy Severity minor => feature