|
|
|
Помогите с функцией API
|
|||
|---|---|---|---|
|
#18+
В продолжении темы ввода одного пароля, разбираюсь с индентификацие юзера в Activedirectory Кто поможет правильно описать внешную функцию API MSDNBOOL GetTokenInformation( HANDLE TokenHandle, TOKEN_INFORMATION_CLASS TokenInformationClass, LPVOID TokenInformation, DWORD TokenInformationLength, PDWORD ReturnLength ); Parameters TokenHandle [in] Handle to an access token from which information is retrieved. If TokenInformationClass specifies TokenSource, the handle must have TOKEN_QUERY_SOURCE access. For all other TokenInformationClass values, the handle must have TOKEN_QUERY access. TokenInformationClass [in] Specifies a value from the TOKEN_INFORMATION_CLASS enumerated type to identify the type of information the function retrieves. TokenInformation [out] Pointer to a buffer the function fills with the requested information. The structure put into this buffer depends upon the type of information specified by the TokenInformationClass parameter, as shown in the following table. Что я пытаюсь написать в Local External function Function BOOLEAN GetTokenInformation(HANDLE TokenHandle,uint TokenInformationClass, ref string TokenInformation, ref ulong TokenInformationLength, ref ulong ReturnLength ) Как правильно описать HANDLE TokenHandle, что это должно быть? TokenInformationClass = 1 (Token_user) Link to MSDN http://msdn.microsoft.com/library/default.asp?url=/library/en-us/secauthz/security/gettokeninformation.asp ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2006, 11:17 |
|
||
|
Помогите с функцией API
|
|||
|---|---|---|---|
|
#18+
PashaКак правильно описать HANDLE TokenHandle, что это должно быть? Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2006, 11:48 |
|
||
|
Помогите с функцией API
|
|||
|---|---|---|---|
|
#18+
Есть еще дополнительный вопрос. вот что у меня получается: Код: plaintext 1. 2. 3. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. и в приложении: Код: plaintext 1. 2. 3. 4. 5. 6. какое значение должно принимать переменная li_handle ???? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2006, 11:57 |
|
||
|
Помогите с функцией API
|
|||
|---|---|---|---|
|
#18+
Pashaкакое значение должно принимать переменная li_handle ???? Судя по тому, что это тип handle указатель на объект данного класса вам кто-то должен вернуть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2006, 12:17 |
|
||
|
Помогите с функцией API
|
|||
|---|---|---|---|
|
#18+
На сколько я знаю uint в PB может принимать значения от 0 до 65535 (2 байта). Все HANDLE и int и uint в 32-х разрядной системе - 4 байта. Т.е. вам все надо обьявлять в билдере long или ulong. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2006, 12:19 |
|
||
|
Помогите с функцией API
|
|||
|---|---|---|---|
|
#18+
PB после описания не ругается, но возвращает пустоту все это делается чтобы получить SecurityID пользователя из access token ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2006, 12:36 |
|
||
|
Помогите с функцией API
|
|||
|---|---|---|---|
|
#18+
помоему я ушел в бредни и не на правильном пути, чтобы определить что это пользователь из нашего домена. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2006, 13:11 |
|
||
|
Помогите с функцией API
|
|||
|---|---|---|---|
|
#18+
PashaPB после описания не ругается, но возвращает пустоту все это делается чтобы получить SecurityID пользователя из access token получить handle должна функция OpenЧтотоТамToken(...ref ulong handle) ( и закрывать потом надо CloseHandle(...) ) буфер это не ref string а структура, причем какая именно зависит от uint TokenInformationClass. причем там могут быть вложенные массивы структур с указателями на структуры или что-то не менее шизоидное. того кто проектировал это API надо было убить прежде чем он дорвался до проектирования. тут даже зная Си и точно зная чего и как хочешь получить и то трудно справиться. так что на вызовах API из PB - дохлый номер. только если писать свой DLL на Си с простым интерфейсом для PB а внутри уже крутить вызовы эти безумные со структурами разного формата. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2006, 13:21 |
|
||
|
Помогите с функцией API
|
|||
|---|---|---|---|
|
#18+
Dmitry.На сколько я знаю uint в PB может принимать значения от 0 до 65535 (2 байта). Да, все верно, это я типа опечатался. Указатели действительно 4 байта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2006, 13:38 |
|
||
|
Помогите с функцией API
|
|||
|---|---|---|---|
|
#18+
Я начал разбираться вначале нужно вызвать OpenProcessToken, которая и вызывает этот хандле, с помощью которго уже можно вызвать GetTokenInformation, и конешно же в конце нужно сделать CloseHandle. Эти команды как я понял из MSDN вызывают сам процес аутентификации. А мне это не нужно. Мне нужно проверить 2 вещи: 1) пользователь из нашего домена 2) коректно ли залогинился в наш домен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2006, 13:39 |
|
||
|
Помогите с функцией API
|
|||
|---|---|---|---|
|
#18+
Pashaпомоему я ушел в бредни и не на правильном пути, чтобы определить что это пользователь из нашего домена. посмотри мой пост тут ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2006, 14:39 |
|
||
|
Помогите с функцией API
|
|||
|---|---|---|---|
|
#18+
alexis glinski Pashaпомоему я ушел в бредни и не на правильном пути, чтобы определить что это пользователь из нашего домена. посмотри мой пост тут ... Да да спасибо как раз разбираюсь с этим точнее разобрался, разюбираюсь как вытащить Security Identifier ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2006, 14:43 |
|
||
|
|

start [/forum/topic.php?fid=15&fpage=75&tid=1337931]: |
0ms |
get settings: |
6ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
22ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 205ms |
| total: | 290ms |

| 0 / 0 |
