Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Экспорт SID из AD  [new]
st0m
Member

Откуда:
Сообщений: 14
день добрый!

Подскажите пожалуйста, никак не могу понять в чем ошибка. У меня достаточно тривиальная для этого форма задача, однако решение своей проблемы найти не смог. Мне необходима выгрузить некоторые поля из AD, в том числе и objectSID, а вот с ним чтото не получается. Вот мой код

Public Overrides Sub CreateNewOutputRows()
        Dim de As New DirectoryEntry
        Dim searcher As New DirectorySearcher
        Dim search_result As SearchResultCollection
        Dim result As SearchResult
        Dim MemberOfList As StringBuilder
        Dim props As ResultPropertyCollection
        Dim PropertiesList, s, sid As String
        Dim i As Integer




        Using (de)
            de.Path = Me.ReadOnlyVariables("gLDAPQuery").Value.ToString()

            Using (searcher)
                searcher.SearchRoot = de
                searcher.Filter = Me.ReadOnlyVariables("gLDAPFilter").Value.ToString()
                searcher.SearchScope = SearchScope.Subtree
                searcher.PropertiesToLoad.Add("name")
                searcher.PropertiesToLoad.Add("objectSID")
                

                searcher.Sort = New SortOption("name", SortDirection.Ascending)

                searcher.PageSize = 1000

                search_result = searcher.FindAll()

                For Each result In search_result
                    props = result.Properties
                    ActiveDirectoryOutputBuffer.Name = props("name")(0).ToString()
                    
                    sid = props("objectSID")(0).ToString

                    ActiveDirectoryOutputBuffer.objectSID = Encoding.ASCII.GetString(props("objectSID"))
                   Next
            End Using
        End Using

        de = Nothing
        searcher = Nothing
        search_result = Nothing
        result = Nothing
        props = Nothing
     
    End Sub

End Class


Нашел информацию о том что objectSID выгружается как массив, но вот преобразовать его в string никак не получается.
23 янв 13, 15:50    [13816263]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт SID из AD  [new]
Glory
Member

Откуда:
Сообщений: 104751
А MSSQL тут с какой стороны ?
23 янв 13, 15:52    [13816290]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт SID из AD  [new]
st0m
Member

Откуда:
Сообщений: 14
ну выгружвю я в SQL. )) Да, наверное я ошибся веткой...
23 янв 13, 15:55    [13816336]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт SID из AD  [new]
LogrusAS
Member

Откуда: Киев
Сообщений: 197
Веткой конечно ошибся, но вот ответ:
    ActiveDirectoryOutputBuffer.objectSID = new SecurityIdentifier((byte[])props("objectSID")(0), 0).ToString();
23 янв 13, 17:42    [13817186]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт SID из AD  [new]
st0m
Member

Откуда:
Сообщений: 14
Спасибо за ответ, не думал что в этой ветке ответят..

написал практичски тоже самое
sid = (byte[])props("objectSID")(0) 
                    ActiveDirectoryOutputBuffer.objectSID = New SecurityIdentifier(sid, 0).ToString()



но что в вашем варианте, что в моем подчеркивает byte и выдает ошибку "byte is a type and cannot be used as an expression"
24 янв 13, 13:19    [13821156]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить