public override void OnAuthenticated(IServiceBase authService, IAuthSession session, IOAuthTokens tokens, Dictionary <string, string> authInfo) { base.OnAuthenticated(authService, session, tokens, authInfo); try { var mail = new MailAddress(session.Email); // We use a very simple authentification scheme for now solely based on a @xamarin.com email address if (mail.Host == "xamarin.com") { Roles.Add(RoleNames.Admin); Permissions.AddRange(new [] { "CanAccess", "CanModify" }); } } catch { // Log } }
public void AddPermission(SPBindingCollection bindingCol, bool forceBreak = false) { // This is the main "AddPermission" method that the other methods call. if (HasUniquePermissions.HasValue && !HasUniquePermissions.Value) { if (!forceBreak) { throw new NoForceBreakException(_li.Id); } else { _li.BreakRoleInheritance(true, true); } } else if (!HasUniquePermissions.HasValue) { throw new InvalidOperationException("This object's permissions cannot be modified!"); } var list = new List <RoleAssignment>(bindingCol.Count); for (int i = 0; i < bindingCol.Count; i++) { var binding = bindingCol[i]; var bCol = new RoleDefinitionBindingCollection(CTX.SP1) { binding.Definition }; list.Add(_li.RoleAssignments.Add( binding.Principal, bCol)); foreach (var ass in list) { CTX.Lae(ass, false); } _li.Update(); CTX.Lae(); } if (Permissions == null) { this.GetPermissions(); } else { Permissions.AddRange(list); } }
/// <summary> /// The load user. /// </summary> /// <param name="data"> /// The data. /// </param> private void LoadUser(SecurityObject data) { if (data != null) { UserId = data.SecurityObjectId; Name = data.Username; IsAuthenticated = true; AuthenticationType = "Membership"; Permissions.AddRange(data.SecurityObjectPermissions.Select(sop => sop.Permission).ToList()); UserProfile = data; } else { Name = string.Empty; IsAuthenticated = false; AuthenticationType = string.Empty; Permissions = new List <Permission>(); UserProfile = new SecurityObject(); } }
public UserManager() { Permissions.AddRange(new RbacPermission[] { new RbacPermission("view-public-plane", "View public planes"), // Currently not implemented. new RbacPermission("view-own-plane", "View your own planes."), new RbacPermission("view-any-plane", "View anyone's planes."), new RbacPermission("create-plane", "Create a new plane."), new RbacPermission("delete-own-plane", "Delete a plane."), new RbacPermission("delete-any-plane", "Delete a plane."), new RbacPermission("manage-own-plane-members", "Manage the users allowed to access one of your planes."), new RbacPermission("manage-any-plane-members", "Manage the users allowed to access one any plane.") }); Roles.Add(new RbacRole("Guest", new List <RbacPermission>() { ResolvePermission("view-public-plane") })); Roles.Add(new RbacRole("Member", new List <RbacPermission>() { ResolvePermission("view-own-plane"), ResolvePermission("create-plane"), ResolvePermission("delete-own-plane"), ResolvePermission("manage-own-plane-members") }, new List <RbacRole>() { ResolveRole("Guest") })); Roles.Add(new RbacRole("Root", new List <RbacPermission>() { ResolvePermission("view-any-plane"), ResolvePermission("delete-any-plane"), ResolvePermission("manage-any-plane-members") }, new List <RbacRole>() { ResolveRole("Member") })); }
public MissingPermissionsException(params Discord.GuildPermission[] permissions) : base("") { Permissions.AddRange(permissions); }
public MissingPermissionsException(string message, IEnumerable <Discord.GuildPermission> permissions, Exception inner) : base(message, inner) { Permissions.AddRange(permissions); }
public MissingPermissionsException(string message, params Discord.GuildPermission[] permissions) : base(message) { Permissions.AddRange(permissions); }
public MissingBotPermissionsException(params Discord.GuildPermission[] permissions) { Permissions.AddRange(permissions); }
public AskForPermissionsConsentCard(PermissionTypeEnum[] permissions) { Permissions.AddRange(permissions); }
public MissingBotChannelPermissionsException(params Discord.ChannelPermission[] permissions) { Permissions.AddRange(permissions); }
public MissingBotChannelPermissionsException(string message, params Discord.ChannelPermission[] permissions) : base(message) { Permissions.AddRange(permissions); }