* sec_auth.cc (verify_token): Disable code which returns false if
the token contains additional groups not requested by setgroups. Explain why.
This commit is contained in:
parent
17bfd1e083
commit
2827371898
@ -1,3 +1,9 @@
|
|||||||
|
2008-07-09 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
|
* sec_auth.cc (verify_token): Disable code which returns false if
|
||||||
|
the token contains additional groups not requested by setgroups.
|
||||||
|
Explain why.
|
||||||
|
|
||||||
2008-07-08 Corinna Vinschen <corinna@vinschen.de>
|
2008-07-08 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
* fhandler_socket.cc (fhandler_socket::bind): Don't run explicit
|
* fhandler_socket.cc (fhandler_socket::bind): Don't run explicit
|
||||||
|
@ -714,9 +714,20 @@ verify_token (HANDLE token, cygsid &usersid, user_groups &groups, bool *pintern)
|
|||||||
saw[pos] = true;
|
saw[pos] = true;
|
||||||
else if (groups.pgsid == gsid)
|
else if (groups.pgsid == gsid)
|
||||||
sawpg = true;
|
sawpg = true;
|
||||||
|
#if 0
|
||||||
|
/* With this `else', verify_token returns false if we find
|
||||||
|
groups in the token, which are not in the group list set
|
||||||
|
with setgroups(). That's rather dangerous. What we're
|
||||||
|
really interested in is that all groups in the setgroups()
|
||||||
|
list are in the token. A token created through ADVAPI
|
||||||
|
should be allowed to contain more groups than requested
|
||||||
|
through setgroups(), esecially since Vista and the
|
||||||
|
addition of integrity groups. So we disable this statement
|
||||||
|
for now. */
|
||||||
else if (gsid != well_known_world_sid
|
else if (gsid != well_known_world_sid
|
||||||
&& gsid != usersid)
|
&& gsid != usersid)
|
||||||
goto done;
|
goto done;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
/* user.sgsids groups must be in the token */
|
/* user.sgsids groups must be in the token */
|
||||||
for (int gidx = 0; gidx < groups.sgsids.count (); gidx++)
|
for (int gidx = 0; gidx < groups.sgsids.count (); gidx++)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user