/* * Utility function for checking if a user is internal. If they are on the internal IP list they get to skip login * The internal ip list must have defined roles */ private void CreateVirtualUserIfInternal() { var internalAccessItem = Sitecore.Data.Database.GetDatabase(Database).GetItem(InternalAccessItem); NameValueCollection accessList = WebUtil.ParseUrlParameters(internalAccessItem.Fields["Access List"].Value); var virtualUserRoles = internalAccessItem.Fields["Virtual User Roles"].Value; var loginService = new LoginService(accessList, virtualUserRoles); var internalRangeMatch = loginService.InternalMatchCheck(); if (!internalRangeMatch.Equals(default(KeyValuePair <string, string>))) { var virtualUsername = string.Format("vUser\\{0}_{1}", internalRangeMatch.Key, internalRangeMatch.Value.Replace(".", "_")); var virtualUser = AuthenticationManager.BuildVirtualUser(virtualUsername, true); var virtualRoles = loginService.GetVirtualUserRoles(); if (!virtualRoles.Any()) { Log.Error("No Virtual Roles defined", this); } foreach (var virtualUserRole in virtualRoles) { virtualUser.Roles.Add(virtualUserRole); } AuthenticationManager.LoginVirtualUser(virtualUser); } }
public static void Error(object owner, Database database, string format, params object[] args) { SLog.Error(Format(database, format, args), owner); }
public static void Error(object owner, string format, params object[] args) { SLog.Error(Format(format, args), owner); }