extern const struct dom_sid global_sid_World;
extern const struct dom_sid global_sid_Creator_Owner_Domain;
extern const struct dom_sid global_sid_NT_Authority;
+extern const struct dom_sid global_sid_Enterprise_DCs;
extern const struct dom_sid global_sid_System;
extern const struct dom_sid global_sid_NULL;
extern const struct dom_sid global_sid_Authenticated_Users;
bool security_token_is_system(const struct security_token *token)
{
- return security_token_is_sid_string(token, SID_NT_SYSTEM);
+ return security_token_is_sid(token, &global_sid_System);
}
bool security_token_is_anonymous(const struct security_token *token)
{
- return security_token_is_sid_string(token, SID_NT_ANONYMOUS);
+ return security_token_is_sid(token, &global_sid_Anonymous);
}
bool security_token_has_sid(const struct security_token *token, const struct dom_sid *sid)
bool security_token_has_builtin_administrators(const struct security_token *token)
{
- return security_token_has_sid_string(token, SID_BUILTIN_ADMINISTRATORS);
+ return security_token_has_sid(token, &global_sid_Builtin_Administrators);
}
bool security_token_has_nt_authenticated_users(const struct security_token *token)
{
- return security_token_has_sid_string(token, SID_NT_AUTHENTICATED_USERS);
+ return security_token_has_sid(token, &global_sid_Authenticated_Users);
}
bool security_token_has_enterprise_dcs(const struct security_token *token)
{
- return security_token_has_sid_string(token, SID_NT_ENTERPRISE_DCS);
+ return security_token_has_sid(token, &global_sid_Enterprise_DCs);
}
#define SRVSVC_CHECK_ADMIN_ACCESS do { \
struct security_token *t = dce_call->conn->auth_state.session_info->security_token; \
if (!security_token_has_builtin_administrators(t) && \
- !security_token_has_sid_string(t, SID_BUILTIN_SERVER_OPERATORS)) { \
+ !security_token_has_sid(t, &global_sid_Builtin_Server_Operators)) { \
return WERR_ACCESS_DENIED; \
} \
} while (0)