2012-05-08 1 views
1

현재 나의 직업에서 Windows의 Everyone, Interactive User 등과 같이 잘 알려진 그룹의 구성원을 열거해야합니다. 나를 "정의하는 방법은 사용자가 Everyone의 구성원인지 평가하는 방법이지만 다른 그룹의 정보를 얻는 것이 훨씬 어렵습니다. 나는 (내가 그녀/그의 암호를 모르기 때문에) 로그인하지 않고 사용자 액세스 토큰을 가져와야하기 때문에 내가 필요한 것을 수행하는 http://msdn.microsoft.com/en-us/library/windows/desktop/aa379554(v=vs.85).aspx을 만났다. 로그인 사용자없이 액세스 토큰과 같은 것을 얻을 수 있습니까? 그리고 .NET 없이도이 문제를 해결하고 싶습니다.Well-known-groups의 사용자를 Everyone으로 결정하는 방법

+0

로컬 사용자입니까, 아니면 AD 사용자입니까? – Benj

+0

@Benj : 두 번째 질문입니다. Everyone 그룹의 구성원 인 각 사용자에 대한 것입니다. – MSalters

답변

3

모든 사용자, 대화 형 사용자, 인증 된 사용자는 실제로 그룹이 아닙니다. 그들은 귀하의 토큰에 나타나는 SID이지만 귀하는 이들의 회원이 아닙니다.

인증 된 경우, 대화 형인 경우 등의 이유로 토큰에 특성이 추가됩니다. 따라서 동일한 사용자가 네트워크를 통해 연결할 수 있으며 토큰에 대화식 사용자가 포함되지 않습니다. 그러나 터미널 서비스를 통해 로그온하면 토큰에 대화 형 사용자가 생깁니다.

이 예제에서 은 이러한 의사 그룹이 사용자의 특성이 아니라 로그온 세션임을 알 수 있습니다. 따라서 해당 속성을 가진 사용자를 열거 할 수 없습니다.

+0

그래서 익명의 토큰을 제외하고 모두가 그들의 토큰에'Everyone' SID를 추가 할 것입니다. – MSalters

0

this URL을 살펴 봐야합니다. 이것은 SID, 그룹, 멤버십 등에 관한 기사의 세리입니다. C++의 샘플을 사용합니다.