Free cookie consent management tool by TermsFeed Policy Generator

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

Last change on this file since 2604 was 2020, checked in by svonolfe, 15 years ago

Added GetUserByLogin method for the SecurityManager (#532)

File size: 3.1 KB
RevLine 
[1378]1using System;
2using System.Collections.Generic;
3using System.Text;
[1520]4using System.ServiceModel;
[1378]5using HeuristicLab.Security.Contracts.BusinessObjects;
6
7namespace HeuristicLab.Security.Contracts.Interfaces {
[1520]8
9  [ServiceContract]
10  public interface ISecurityManager {
11
12    [OperationContract]
[1738]13    [FaultContractAttribute(typeof(CommunicationException))]
[1729]14    Permission AddPermission(Permission permission);
15
16    [OperationContract]
[1738]17    [FaultContractAttribute(typeof(CommunicationException))]
[1729]18    bool RemovePermission(Guid permissionId);
19
20    [OperationContract]
[1738]21    [FaultContractAttribute(typeof(CommunicationException))]
[1729]22    Permission UpdatePermission(Permission permission);
23
24    [OperationContract]
[1738]25    [FaultContractAttribute(typeof(CommunicationException))]
[1378]26    User AddNewUser(User user);
[1520]27
28    [OperationContract]
[1738]29    [FaultContractAttribute(typeof(CommunicationException))]
[1384]30    bool RemoveUser(Guid userId);
[1520]31
32    [OperationContract]
[1738]33    [FaultContractAttribute(typeof(CommunicationException))]
[1378]34    User UpdateUser(User user);
35
[1520]36    [OperationContract]
[1738]37    [FaultContractAttribute(typeof(CommunicationException))]
[1624]38    ICollection<User> GetAllUsers();
39
40    [OperationContract]
[1738]41    [FaultContractAttribute(typeof(CommunicationException))]
[1624]42    User GetUserByName(string name);
43
44    [OperationContract]
[1738]45    [FaultContractAttribute(typeof(CommunicationException))]
[2020]46    User GetUserByLogin(string login);
47
48    [OperationContract]
49    [FaultContractAttribute(typeof(CommunicationException))]
[1378]50    UserGroup AddNewUserGroup(UserGroup group);
[1520]51
52    [OperationContract]
[1738]53    [FaultContractAttribute(typeof(CommunicationException))]
[1624]54    bool RemoveUserGroup(Guid userGroupId);
[1520]55
56    [OperationContract]
[1738]57    [FaultContractAttribute(typeof(CommunicationException))]
[1378]58    UserGroup UpdateUserGroup(UserGroup group);
59
[1520]60    [OperationContract]
[1738]61    [FaultContractAttribute(typeof(CommunicationException))]
[1624]62    ICollection<UserGroup> GetAllUserGroups();
[1384]63
[1520]64    [OperationContract]
[1738]65    [FaultContractAttribute(typeof(CommunicationException))]
[1624]66    UserGroup GetUserGroupByName(string name);
[1520]67
68    [OperationContract]
[1738]69    [FaultContractAttribute(typeof(CommunicationException))]
[1624]70    PermissionOwner UpdatePermissionOwner(PermissionOwner permissionOwner);
[1520]71
72    [OperationContract]
[1738]73    [FaultContractAttribute(typeof(CommunicationException))]
[1624]74    bool AddPermissionOwnerToGroup(Guid userGroupId, Guid permissionOwnerId);
75
76    [OperationContract]
[1738]77    [FaultContractAttribute(typeof(CommunicationException))]
[1624]78    bool RemovePermissionOwnerFromGroup(Guid userGroupId, Guid permissionOwnerId);
79
80    [OperationContract]
[1738]81    [FaultContractAttribute(typeof(CommunicationException))]
[1624]82    bool GrantPermission(Guid permissionOwnerId, Guid permissionId, Guid entityId);
83
84    [OperationContract]
[1738]85    [FaultContractAttribute(typeof(CommunicationException))]
[1624]86    Permission GetPermissionById(Guid permissionId);
87
88    [OperationContract]
[1738]89    [FaultContractAttribute(typeof(CommunicationException))]
[1624]90    bool RevokePermission(Guid permissionOwnerId, Guid permissionId, Guid entityId);
[1378]91  }
92}
Note: See TracBrowser for help on using the repository browser.