IP Library Granted Patent US 9,774,603
Granted Patent B2
US 9,774,603 · App. 14/724,348 · Granted Sep 26, 2017

Managing user permissions in relation to system events occurring in a database system

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,774,603
App. No.
14/724,348
Granted
Sep 26, 2017
Kind
B2
Abstract

Disclosed are examples of systems, apparatus, methods and computer program products for managing user permissions in relation to system events occurring in a database system. In some implementations, a server can listen for system events. Based on at least one system event criterion, a system event can be determined to occur. A user can be identified as matching a user criterion. A permission set can be identified as matching a permission criterion. Based on a permission set, a permission may be added, updated, or removed from a user.

Claims (63)

1. A system comprising:

a database system implemented using a server system comprising at least one hardware processor, the database system configurable to cause:

maintaining at least one database storing data objects identifying a plurality of permission sets for a plurality of users;

processing user input identifying a type of system event and identifying at least one user type;

processing a plurality of system events using at least one event processing component, the processing comprising:

identifying, using an event listener of the at least one event processing component, a subset of the system events as satisfying a first one of a plurality of system event criteria, the event listener configured to listen for system events according to the first system event criterion, the event listener having been generated based on the system event type, the at least one user type and a user-identified one of the permission sets, and

identifying, using the event listener, a first system event of the subset of system events as satisfying a second one of the system event criteria, the event listener specifying the system event type as the second system event criterion;

responsive to identifying the first system event:

determining, using the database system, that a first one of the users matches at least one user criterion, and

determining, using the database system, that at least one of the permission sets matches at least one permission criterion; and

modifying at least one permission of the first user based on the at least one permission set.

2. The system of claim 1 , the database system further configurable to cause:

determining that the at least one permission of the first user was successfully or unsuccessfully added, updated, or removed.

3. The system of claim 2 , the database system further configurable to cause:

generating a record based on the determined successfully or unsuccessfully added, updated, or removed at least one permission of the first user, the record having data corresponding to changes made to permissions of users; and

displaying, in a user interface on a display of a user device, the record data.

4. The system of claim 1 , the database system further configurable to cause:

determining, using a scheduler, that a system event of the system event type has occurred based on at least one time criterion.

5. The system of claim 1 , wherein the event listener has an event listener ID.

6. The system of claim 1 , the database system further configurable to cause:

initiating performance of the event listener.

7. The system of claim 1 , wherein the specified system event type is one of a plurality of system event types comprising at least one of: a login system event, an export system event, a workflow approval system event, or a custom system event.

8. The system of claim 1 , wherein the user-identified user type is one of a plurality of user types comprising at least one of: a user role, a user profile, a user group, a user manager, a user list, or a custom user.

9. A method comprising:

maintaining at least one database storing data objects identifying a plurality of permission sets for a plurality of users;

processing user input identifying a type of system event and identifying at least one user type;

processing a plurality of system events using at least one event processing component, the processing comprising:

identifying, using an event listener of the at least one event processing component, a subset of the system events as satisfying a first one of a plurality of system event criteria, the event listener configured to listen for system events according to the first system event criterion, the event listener having been generated based on the system event type, the at least one user type and a user-identified one of the permission sets, and

identifying, using the event listener, a first system event of the subset of system events as satisfying a second one of the system event criteria, the event listener specifying the system event type as the second system event criterion;

responsive to identifying the first system event:

determining, using a database system implemented using a server system comprising at least one hardware processor, that a first one of the users matches at least one user criterion, and

determining, using the database system, that at least one of the permission sets matches at least one permission criterion; and

modifying at least one permission of the first user based on the at least one permission set.

10. The method of claim 9 , further comprising:

determining that the at least one permission of the first user was successfully or unsuccessfully added, updated, or removed.

11. The method of claim 10 , further comprising:

generating a record based on the determined successfully or unsuccessfully added, updated, or removed at least one permission of the first user, the record having data corresponding to changes made to permissions of users; and

causing display, in a user interface on a display of a user device, of the record data.

12. The method of claim 9 , further comprising:

determining, using a scheduler, that a system event of the system event type has occurred based on at least one time criterion.

13. The method of claim 9 , wherein the event listener has an event listener ID.

14. The method of claim 9 , further comprising:

initiating performance of the event listener.

15. The method of claim 9 , wherein the specified system event type is one of a plurality of system event types comprising at least one of: a login system event, an export system event, a workflow approval system event, or a custom system event.

16. A computer program product comprising computer-readable program code to be executed by at least one processor when retrieved from a non-transitory computer-readable medium, the program code comprising instructions configured to cause:

maintaining at least one database storing data objects identifying a plurality of permission sets for a plurality of users;

processing user input identifying a type of system event and identifying at least one user type;

processing a plurality of system events using at least one event processing component, the processing comprising:

identifying, using an event listener of the at least one event processing component, a subset of the system events as satisfying a first one of a plurality of system event criteria, the event listener configured to listen for system events according to the first system event criterion, the event listener having been generated based on the system event type, the at least one user type and a user-identified one of the permission sets, and

identifying, using the event listener, a first system event of the subset of system events as satisfying a second one of the system event criteria, the event listener specifying the system event type as the second system event criterion;

responsive to identifying the first system event:

determining, using a database system implemented using a server system comprising at least one hardware processor, that a first one of the users matches at least one user criterion, and

determining, using the database system, that at least one of the permission sets matches at least one permission criterion; and

modifying at least one permission of the first user based on the at least one permission set.

17. The computer program product of claim 16 , the instructions further configured to cause:

determining that the at least one permission of the first user was successfully or unsuccessfully added, updated, or removed.

18. The computer program product of claim 17 , the instructions further configured to cause:

generating a record based on the determined successfully or unsuccessfully added, updated, or removed at least one permission of the first user, the record having data corresponding to changes made to permissions of users; and

displaying, in a user interface on a display of a user device, of the record data.

19. The computer program product of claim 16 , the instructions further configured to cause:

determining using a scheduler, that a system event of the system event type has occurred based on at least one time criterion.

20. The computer program product of claim 16 , the instructions further configured to cause:

initiating performance of the event listener.

Assignments (2)
CHANGE OF NAME Recorded Oct 25, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069268/0034 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 28, 2015
From: BROCK, JOHN ARLAN
To: SALESFORCE.COM, INC.
Reel/Frame 035736/0414 →