D>Я так понимаю речь идёт про token? D>из сида его получить нельзя.
хм. тогда другой вопрос, у меня есть учетная запись на удаленном компьтере (я могу получить ее дескриптор безопасности), но мне надо маркер (токен), чтобы потом создать контекст этой учетной записи у себя на машине.
это как-то возможно?
4>хм. тогда другой вопрос, у меня есть учетная запись на удаленном компьтере (я могу получить ее дескриптор безопасности), но мне надо маркер (токен), чтобы потом создать контекст этой учетной записи у себя на машине. 4>это как-то возможно?
Без, грубо говоря, LogonUser это сделать нельзя, а что бы сделать LU нужно знать пароль. А как вы собираетесь создавать "контекст" у себя по SD? Я чего-то не понимаю, наверное.
D>Без, грубо говоря, LogonUser это сделать нельзя, а что бы сделать LU нужно знать пароль. А как вы собираетесь создавать "контекст" у себя по SD? Я чего-то не понимаю, наверное.
мне надо выполнить процесс на системе БЕТА в контексте пользователя удаленной системы АЛЬФА. на АЛЬФА есть учетная запись и пароль.
вот этот грубо говоря LU мне и нужен. только LogonUser не проходит на удаленный компьтер.
4>мне надо выполнить процесс на системе БЕТА в контексте пользователя удаленной системы АЛЬФА. на АЛЬФА есть учетная запись и пароль. 4>вот этот грубо говоря LU мне и нужен. только LogonUser не проходит на удаленный компьтер.
Здравствуйте, 4apai, Вы писали:
D>>Без, грубо говоря, LogonUser это сделать нельзя, а что бы сделать LU нужно знать пароль. А как вы собираетесь создавать "контекст" у себя по SD? Я чего-то не понимаю, наверное.
4>мне надо выполнить процесс на системе БЕТА в контексте пользователя удаленной системы АЛЬФА. на АЛЬФА есть учетная запись и пароль.
Такое невозможно. Чтобы система БЕТА могла выполнить что-то в контексте какого-то пользователя это должен быть либо а) локальная учетная запись системы БЕТА, либо
б) учетная запись из домена, которому БЕТА принадлежит, либо
в) учетная запись из trusted домена.
В любом случае LogonUser выполняется на системе БЕТА.
AF>Такое невозможно. Чтобы система БЕТА могла выполнить что-то в контексте какого-то пользователя это должен быть либо а) локальная учетная запись системы БЕТА, либо AF>б) учетная запись из домена, которому БЕТА принадлежит, либо AF>в) учетная запись из trusted домена.
AF>В любом случае LogonUser выполняется на системе БЕТА.
А альтернатив LogonUser нет (потому что LogonUser проводит аутенфикацию учетной записи пользователя только на локальном компьтере)? Например тa же LsaLogonUser: только используя ее мне тоже не удаеться получить маркер!
AF>Такое невозможно.
Меня тогда удивляет, как же операционная система на БЕТА может входить в удаленную систему АЛЬФА, если ни а ни б ни в не выполняеться. Понятное дело, что аутенфикация проходит на системе АЛЬФА, но работаем то мы в контексте локальной учетной записи АЛЬФА на БЕТЕ (доступаемся до ресурсов АЛЬФА).
Здравствуйте, 4apai, Вы писали:
AF>>Такое невозможно. Чтобы система БЕТА могла выполнить что-то в контексте какого-то пользователя это должен быть либо а) локальная учетная запись системы БЕТА, либо AF>>б) учетная запись из домена, которому БЕТА принадлежит, либо AF>>в) учетная запись из trusted домена.
AF>>В любом случае LogonUser выполняется на системе БЕТА.
4>А альтернатив LogonUser нет (потому что LogonUser проводит аутенфикацию учетной записи пользователя только на локальном компьтере)? Например тa же LsaLogonUser: только используя ее мне тоже не удаеться получить маркер!
LsaLogonUser ничем в этом плане не отличается.
AF>>Такое невозможно.
4>Меня тогда удивляет, как же операционная система на БЕТА может входить в удаленную систему АЛЬФА, если ни а ни б ни в не выполняеться. Понятное дело, что аутенфикация проходит на системе АЛЬФА, но работаем то мы в контексте локальной учетной записи АЛЬФА на БЕТЕ (доступаемся до ресурсов АЛЬФА).
Если речь идет о SMB, то когда мы доступаемся до ресурсов АЛЬФА, мы общаемся со службой сервера на этой машине. В процессе общения, мы передаем какие-то имя пользователя и пароль (credentials), а служба сервера делает LogonUser локально. В дальнейшем, служба сервера использует полученный токен, чтобы определять к каким (локальным для АЛЬФА) ресурсам у нас есть доступ.
Откуда берутся credentials, которые передаются на машину АЛЬФА? По умолчанию, это те же самые credentials, которые использовались для входа в систему пользователя машины БЕТА. Чтобы машина АЛЬФА могла аутентифицировать эти credentials, должно выполняться одно из следующих условий:
a) на машине АЛЬФА существует учетная запись, имя пользователя и пароль которой в точности совпадают текущему пользователю машины БЕТА, либо
б) текущий пользователь машины БЕТА принадлежит домену, которому АЛЬФА доверяет.
Эти условия становятся очевидны, если подумать, что машина АЛЬФА должна каким-то образом проверить эти credentials (она это может сделать самостоятельно, либо доверить домену).
С другой стороны, можно изменить credentials, которые используются для доступа к SMB-ресурсам c помощью WNetAddConnection3 или NetUseAdd. Возможно, это то, что вам нужно.