source: trunk/sources/HeuristicLab.Security.Contracts/3.2/Interfaces/ISecurityManager.cs @ 1729

Last change on this file since 1729 was 1729, checked in by svonolfe, 12 years ago

Fixed some bugs in the Security DAL (#597)

File size: 1.8 KB
Line 
1using System;
2using System.Collections.Generic;
3using System.Text;
4using System.ServiceModel;
5using HeuristicLab.Security.Contracts.BusinessObjects;
6
7namespace HeuristicLab.Security.Contracts.Interfaces {
8
9  [ServiceContract]
10  public interface ISecurityManager {
11
12    [OperationContract]
13    Permission AddPermission(Permission permission);
14
15    [OperationContract]
16    bool RemovePermission(Guid permissionId);
17
18    [OperationContract]
19    Permission UpdatePermission(Permission permission);
20
21    [OperationContract]
22    User AddNewUser(User user);
23
24    [OperationContract]
25    bool RemoveUser(Guid userId);
26
27    [OperationContract]
28    User UpdateUser(User user);
29
30    [OperationContract]
31    ICollection<User> GetAllUsers();
32
33    [OperationContract]
34    User GetUserByName(string name);
35
36    [OperationContract]
37    UserGroup AddNewUserGroup(UserGroup group);
38
39    [OperationContract]
40    bool RemoveUserGroup(Guid userGroupId);
41
42    [OperationContract]
43    UserGroup UpdateUserGroup(UserGroup group);
44
45    [OperationContract]
46    ICollection<UserGroup> GetAllUserGroups();
47
48    [OperationContract]
49    UserGroup GetUserGroupByName(string name);
50
51    [OperationContract]
52    PermissionOwner UpdatePermissionOwner(PermissionOwner permissionOwner);
53
54    [OperationContract]
55    bool AddPermissionOwnerToGroup(Guid userGroupId, Guid permissionOwnerId);
56
57    [OperationContract]
58    bool RemovePermissionOwnerFromGroup(Guid userGroupId, Guid permissionOwnerId);
59
60    [OperationContract]
61    bool GrantPermission(Guid permissionOwnerId, Guid permissionId, Guid entityId);
62
63    [OperationContract]
64    Permission GetPermissionById(Guid permissionId);
65
66    [OperationContract]
67    bool RevokePermission(Guid permissionOwnerId, Guid permissionId, Guid entityId);
68  }
69}
Note: See TracBrowser for help on using the repository browser.