US20080320563A1 - System and program product for associating event categorization and routing with security authorization roles - Google Patents
System and program product for associating event categorization and routing with security authorization roles Download PDFInfo
- Publication number
- US20080320563A1 US20080320563A1 US12/204,441 US20444108A US2008320563A1 US 20080320563 A1 US20080320563 A1 US 20080320563A1 US 20444108 A US20444108 A US 20444108A US 2008320563 A1 US2008320563 A1 US 2008320563A1
- Authority
- US
- United States
- Prior art keywords
- event
- group
- acl
- server
- destinations
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Definitions
- the present invention relates to a method, system and program product for associating event categorization and routing with security authorization roles. Specifically, the present invention alleviates the need for separate processing to route events and to determine authorization rights for interacting with the event.
- IT information technology
- the present invention provides a method, system and program product for associating event categorization and routing with security authorization roles.
- an event when an event is received on a server, it is stored and then categorized. In being categorized, an event group pertaining to the event is identified. Based on the group of events, a set (e.g., one or more) of destinations to which the event should be routed can be determined. The group of events is then associated with an access control list (ACL) that contains entries identifying users (or groups of users) and their permissions to interact with events in that group. Once the association is made, the event (and optionally the ACL itself) is routed/published to the appropriate destinations.
- ACL access control list
- the destinations Based on the permissions contained in the ACL, the destinations will interact with the event accordingly.
- the present invention also accommodates synchronous operations whereby a user or group of users can query the server about an event and interact therewith according to their listed permissions.
- a first aspect of the present invention provides a method for associating event categorization and routing with security authorization roles, comprising: receiving an event on a server; identifying an event group pertaining to the event; determining a set of destinations associated with the event group for receiving the event; and associating the event group with an access control list (ACL) corresponding to the set of destinations, wherein the ACL includes a set of entries that each identify at least one user and a permission of the at least one user for interacting with the event.
- ACL access control list
- a second aspect of the present invention provides a system for associating event categorization and routing with security authorization roles, comprising: an event reception system for receiving an event on a server; a categorization system for categorizing the event by identifying an event group pertaining to the event; a destination system for determining a set of destinations associated with the event group for receiving the event; and a list association system for associating the event group with an access control list (ACL) corresponding to the set of destinations, wherein the ACL includes a set of entries that each identify at least one user and a permission of the at least one user for interacting with the event.
- ACL access control list
- a third aspect of the present invention provides a program product stored on a recordable medium for associating event categorization and routing with security authorization roles, which when executed, comprises: program code for receiving an event on a server; program code for categorizing the event by identifying an event group pertaining to the event; program code for determining a set of destinations associated with the event group for receiving the event; and program code for associating the event group with an access control list (ACL) corresponding to the set of destinations, wherein the ACL includes a set of entries that each identify at least one user and a permission of the at least one user for interacting with the event.
- ACL access control list
- the present invention provides a method, system and program product for associating event categorization and routing with security authorization roles.
- FIG. 1 depicts a system for associating event categorization and routing with security authorization roles according to the present invention.
- FIG. 2 depicts the association of an event group with an ACL according to the present invention.
- FIG. 3 depicts a method flow diagram according to the present invention.
- the present invention provides a method, system and program product for associating event categorization and routing with security authorization roles.
- an event group pertaining to the event is identified.
- a set (e.g., one or more) of destinations to which the event should be routed can be determined.
- the group of events is then associated with an access control list (ACL) that contains entries identifying users (or groups of users) and their permissions to interact with events in that group.
- ACL access control list
- the event and optionally the ACL
- the destinations will interact with the event accordingly.
- the present invention also accommodates synchronous operations whereby a user or group of users can query the server about an event and interact therewith according to their listed permissions.
- system 10 for associating event categorization and routing with security authorization roles according to the present invention is shown.
- system 10 includes server 12 in communication with clients 50 A-C (operated by users 52 A-C.
- clients 50 A-C operated by users 52 A-C.
- system 10 is intended to represent only an illustrative computer infrastructure. To this extent, any quantity of clients and servers could be shown.
- system 10 should be understood to include other resources (e.g., hardware and software) not shown.
- communication between server 12 and clients 50 A-C could occur over any type of network such as the Internet, a local area network (LAN), a wide area network (WAN), a virtual private network (VPN), etc.
- Such communication could occur via a direct hardwired connection (e.g., serial port), or via an addressable connection that may utilize any combination of wireline and/or wireless transmission methods.
- conventional network connectivity such as Token Ring, Ethernet, WiFi or other conventional communications standards could be used.
- connectivity could be provided by conventional TCP/IP sockets-based protocol.
- clients 50 A-C could utilize an Internet Service Provider to establish connectivity to server 12 .
- Server 12 generally comprises central processing unit (CPU) 14 , memory 16 , bus 18 , input/output (I/O) interfaces 20 , external devices/resources 22 and storage unit 24 .
- CPU 14 may comprise a single processing unit, or be distributed across one or more processing units in one or more locations, e.g., on a client and server.
- Memory 16 may comprise any known type of data storage and/or transmission media, including magnetic media, optical media, random access memory (RAM), read-only memory (ROM), a data cache, etc.
- memory 16 may reside at a single physical location, comprising one or more types of data storage, or be distributed across a plurality of physical systems in various forms.
- I/O interfaces 20 may comprise any system for exchanging information to/from an external source.
- External devices/resources 22 may comprise any known type of external device, including speakers, a CRT, LCD screen, handheld device, keyboard, mouse, voice recognition system, speech output system, printer, monitor/display, facsimile, pager, etc.
- Bus 18 provides a communication link between each of the components in server 12 and likewise may comprise any known type of transmission link, including electrical, optical, wireless, etc.
- Storage unit 24 can be any system (e.g., database) capable of providing storage for information under the present invention. Such information could include, for example, events 60 , etc. As such storage unit 24 could include one or more storage devices, such as a magnetic disk drive or an optical disk drive. In another embodiment, storage unit 24 includes data distributed across, for example, a local area network (LAN), wide area network (WAN) or a storage area network (SAN) (not shown). Although not shown, additional components, such as cache memory, communication systems, system software, etc., maybe incorporated into server 12 .
- LAN local area network
- WAN wide area network
- SAN storage area network
- additional components such as cache memory, communication systems, system software, etc., maybe incorporated into server 12 .
- event handling system 30 Shown in memory 16 of server 12 is event handling system 30 .
- event handling system 30 allows the categorization and routing of events to be associated with security authorization roles on server 12 .
- the term “event” is intended to refer to any type of behavior or message related thereto occurring within system 10 that requires notification of clients 50 A-C and/or some type of corrective action. For example, if an application program loaded on server 12 that is used by one or more clients 50 A-C fails, an event would be generated. Similarly, if a client or an application program loaded thereon fails, and event would be generated (and communicated to server 12 ). Accordingly, in a typical embodiment, the term “event” refers to an information technology (IT) event occurring within system 10 and its corresponding notification/message detailing the failure.
- IT information technology
- event handling system 30 generally includes event reception system 32 , storage system 34 , categorization system 36 , destination system 38 , list association system 40 , routing system 42 , query reception system 44 and event retrieval system 46 .
- event reception system 32 or a system loaded thereon has failed.
- an event would be generated and communicated to server 12 .
- the event would be received by event reception system 32 , and then optionally stored in storage unit 24 by storage system 34 .
- the storage of events allows for the synchronous access thereof in the future.
- categorization system 36 will categorize the event by determining an event group pertaining thereto.
- each event group 72 has a group name field, a group description field and a selector expression field.
- the group name field of the event group 72 will set forth the host name of the corresponding client 50 A-C.
- the name of event group 72 could be the host name of client 50 C. As such, all events occurring on client 50 C could fall under event group 72 .
- the description field of event group 72 allows a specific explanation of the event group to be set forth.
- the selector expression field of event group 72 allows certain criteria to be set forth for determining whether event 70 is part of that event group 72 .
- the selector expression could indicate that any events originating from a client 50 C having a host name matching that set forth in the name field belongs to that event group 72 . In such a case, any event that occurred on client 50 C could be categorized under event group 72 .
- a set e.g., one or more destinations for receiving the event will be determined by destination system 38 .
- the failure of one system could have ramifications on other systems. Accordingly, such other systems should receive the event.
- Determination of the set of destinations is performed based on the event group. Specifically, each event group has a particular set of destinations to which event should be routed. A destination could include a single user/client or a group of users/clients. In this example, assume that the set of destinations includes other users 52 A-B. As such, the event will be routed to clients 50 A-B.
- list association system 40 will associate/link an access control list (ACL) corresponding to the identified set of destinations with the identified event group 72 ( FIG. 2 ). Specifically, the list association system 40 will locate the one or more ACL(s) that correspond to the set of destinations and associate the same therewith.
- ACL access control list
- ACL 78 includes a list name field and a set of entries 80 .
- ACL 78 will be associated with event group 72 based on its name field. Accordingly, ACL 78 could be assigned the same name as event group 72 (e.g., the host name of client 50 C).
- each entry 80 has a type field, an identifier field and a permission field. The type field indicates whether entry 80 pertains to a “user” or a “group of users.” For example, entry 80 could be made applicable to both users 52 A-B, or only to a single user such as user 52 A.
- the identifier field will specifically identify the user or group of users described in the type field. For example, the identifier could indicate users “ 52 A and 52 B” (or a single user depending on what is specified in the type field).
- the permission field sets forth a permission for the applicable user(s) to interact with events falling within the event group 72 . Such permission could be “read,” “write,” or “read/write.” The “read” permission would give the applicable user(s) the authority to subscribe to the queue 74 or topic 76 associated with that event group 72 . It also grants the applicable user(s) the authority to query events associated with that event group 72 .
- the “write” permission has no bearing on queue 74 or topic 76 for event group 72 , but it grants the applicable user(s) the authority to update or delete events associated with event group 72 .
- the “read/write” permission would grant the applicable user(s) both “read” and “write” permissions.
- routing system 42 will route the event 70 ( FIG. 2 ), and optionally the ACL 78 ( FIG. 2 ) associated with event group 72 , to the set of destinations previously determined by destination system 38 . If clients 50 A-B receive both event 70 and ACL 78 , this alleviates the need for either client 50 A-B to query or otherwise independently access ACL 78 . Based on the permissions in ACL 78 , users 52 A-B will interact with event 70 accordingly.
- users 52 A-B could access the permissions contained therein on a subscription basis (e.g., by communicating with server 12 ). For example, upon receiving event 70 , users 50 A-B could communicate with server 12 . Such a communication could specifically identify event 70 (e.g., according to a unique identifier assigned thereto by event handling system 30 upon initial receipt by server 12 ). Since event 70 has been associated with ACL 78 on server 12 , the permissions for users 50 A-B are easily and efficiently determined. Similarly, users 52 A-C could subscribe to certain “topics” for which they will receive related events.
- storage system 34 could also store the determined set of destinations, the identified event group 72 pertaining to event 70 and/or the ACL 78 (or its association with event group 72 ) in storage unit 24 .
- clients 50 A-C could also be provided with the capability to query server 12 to further interact with events. For example, assume that client 50 A wishes to later query server 12 to interact with event 70 ( FIG. 2 ). In this case, the query would be received by query reception system 44 . Event retrieval system 46 would then retrieve event 70 and the ACL 78 from storage unit 24 . Based on the permissions in ACL 78 , user 50 A could attempt to further interact with event 70 .
- the present invention can be realized in hardware, software, or a combination of hardware and software. Any kind of computer system(s)—or other apparatus adapted for carrying out the methods described herein—is suited.
- a typical combination of hardware and software could be a general purpose computer system with a computer program that, when loaded and executed, carries out the respective methods described herein.
- a specific use computer containing specialized hardware for carrying out one or more of the functional tasks of the invention, could be utilized.
- the present invention can also be embedded in a computer program product, which comprises all the respective features enabling the implementation of the methods described herein, and which—when loaded in a computer system—is able to carry out these methods.
- Computer program, software program, program, or software in the present context mean any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: (a) conversion to another language, code or notation; and/or (b) reproduction in a different material form.
- first step S 1 is to receive an event on a server.
- Second step S 2 is to identify an event group pertaining to the event.
- Third step S 3 is to determine a set of destinations associated with the event group for receiving the event.
- Fourth step S 4 is to associate the event group with an access control list (ACL) corresponding to the set of destinations.
- Fifth step S 5 is to route the event (and optionally the ACL associated with the event group) to the set of destinations after the associating step.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Bioethics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
Under the present invention, when an event is received on a server, it is stored and then categorized. In being categorized, an event group pertaining to the event is identified. Based on the group of events, a set (e.g., one or more) of destinations to which the event should be routed can be determined. The group of events is then associated with an access control list (ACL) that contains entries identifying users (or groups of users) and their permissions to interact with events in that group. Once the association is made, the event and optionally the ACL is routed to the appropriate destinations. Based on the permissions contained in the ACL, the destinations will interact with the event accordingly.
Description
- This application is a continuation application of co-pending U.S. patent application Ser. No. 10/808,847, filed on Mar. 25, 2004, which is hereby incorporated by reference.
- 1. Field of the Invention
- In general, the present invention relates to a method, system and program product for associating event categorization and routing with security authorization roles. Specifically, the present invention alleviates the need for separate processing to route events and to determine authorization rights for interacting with the event.
- 2. Related Art
- As computer infrastructures have become more advanced, increased functionality has been provided. One function common within many infrastructures is the capability to generate alerts or events as changes to the resources within the infrastructures occur. For example, if a client or application within the infrastructure fails, an information technology (IT) event detailing the failure can be generated and transmitted to the server. Once received, the server handles the categorization and routing of the event to appropriate destinations (e.g., users or groups of users).
- Current event management solutions separate the concepts of categorizing and routing events from the security of the events. Specifically, it is normally left up to secondary processing to determine whether a client application has the correct credentials to interact (e.g., read and/or write) with an event (or group of events). That is, the security authorization process is not performed at the time the event is received/retrieved or routed to the client. Accordingly, after an event is received and categorized, it is routed to the client where security permissions are determined and enforced. This not only increases the amount of processing that must be performed at the client side, but it could also lead to unnecessary routing of events to clients that are not authorized to interact therewith.
- To this extent, no existing solution allows security authorization to be performed on the server side as categorization is occurring. That is, no existing solution allows security permission determination to occur prior to the routing of an event to its destination. In view of the foregoing, there exists a need for a method, system and program product for associating event categorization and routing with security authorization roles. Specifically, a need exists for a system whereby association of security authorization roles occurs on the server side. A further need exists for the association of security authorization roles to occur prior to the routing of events to the appropriate destinations.
- In general, the present invention provides a method, system and program product for associating event categorization and routing with security authorization roles. Specifically, under the present invention, when an event is received on a server, it is stored and then categorized. In being categorized, an event group pertaining to the event is identified. Based on the group of events, a set (e.g., one or more) of destinations to which the event should be routed can be determined. The group of events is then associated with an access control list (ACL) that contains entries identifying users (or groups of users) and their permissions to interact with events in that group. Once the association is made, the event (and optionally the ACL itself) is routed/published to the appropriate destinations. Based on the permissions contained in the ACL, the destinations will interact with the event accordingly. In addition, because the association is performed on the server side, the present invention also accommodates synchronous operations whereby a user or group of users can query the server about an event and interact therewith according to their listed permissions.
- A first aspect of the present invention provides a method for associating event categorization and routing with security authorization roles, comprising: receiving an event on a server; identifying an event group pertaining to the event; determining a set of destinations associated with the event group for receiving the event; and associating the event group with an access control list (ACL) corresponding to the set of destinations, wherein the ACL includes a set of entries that each identify at least one user and a permission of the at least one user for interacting with the event.
- A second aspect of the present invention provides a system for associating event categorization and routing with security authorization roles, comprising: an event reception system for receiving an event on a server; a categorization system for categorizing the event by identifying an event group pertaining to the event; a destination system for determining a set of destinations associated with the event group for receiving the event; and a list association system for associating the event group with an access control list (ACL) corresponding to the set of destinations, wherein the ACL includes a set of entries that each identify at least one user and a permission of the at least one user for interacting with the event.
- A third aspect of the present invention provides a program product stored on a recordable medium for associating event categorization and routing with security authorization roles, which when executed, comprises: program code for receiving an event on a server; program code for categorizing the event by identifying an event group pertaining to the event; program code for determining a set of destinations associated with the event group for receiving the event; and program code for associating the event group with an access control list (ACL) corresponding to the set of destinations, wherein the ACL includes a set of entries that each identify at least one user and a permission of the at least one user for interacting with the event.
- Therefore, the present invention provides a method, system and program product for associating event categorization and routing with security authorization roles.
- These and other features of this invention will be more readily understood from the following detailed description of the various aspects of the invention taken in conjunction with the accompanying drawings in which:
-
FIG. 1 depicts a system for associating event categorization and routing with security authorization roles according to the present invention. -
FIG. 2 depicts the association of an event group with an ACL according to the present invention. -
FIG. 3 depicts a method flow diagram according to the present invention. - The drawings are not necessarily to scale. The drawings are merely schematic representations, not intended to portray specific parameters of the invention. The drawings are intended to depict only typical embodiments of the invention, and therefore should not be considered as limiting the scope of the invention. In the drawings, like numbering represents like elements.
- As indicated above, the present invention provides a method, system and program product for associating event categorization and routing with security authorization roles. Specifically, under the present invention, when an event is received on a server, it is stored and then categorized. In being categorized, an event group pertaining to the event is identified. Based on the group of events, a set (e.g., one or more) of destinations to which the event should be routed can be determined. The group of events is then associated with an access control list (ACL) that contains entries identifying users (or groups of users) and their permissions to interact with events in that group. Once the association is made, the event (and optionally the ACL) is routed to the appropriate destinations. Based on the permissions contained in the ACL, the destinations will interact with the event accordingly. In addition, because the association is performed on the server side, the present invention also accommodates synchronous operations whereby a user or group of users can query the server about an event and interact therewith according to their listed permissions.
- Referring now to
FIG. 1 , asystem 10 for associating event categorization and routing with security authorization roles according to the present invention is shown. As depicted,system 10 includesserver 12 in communication withclients 50A-C (operated byusers 52A-C. It should be understood thatsystem 10 is intended to represent only an illustrative computer infrastructure. To this extent, any quantity of clients and servers could be shown. In addition,system 10 should be understood to include other resources (e.g., hardware and software) not shown. - In any event, communication between
server 12 andclients 50A-C could occur over any type of network such as the Internet, a local area network (LAN), a wide area network (WAN), a virtual private network (VPN), etc. Such communication could occur via a direct hardwired connection (e.g., serial port), or via an addressable connection that may utilize any combination of wireline and/or wireless transmission methods. Moreover, conventional network connectivity, such as Token Ring, Ethernet, WiFi or other conventional communications standards could be used. Still yet, connectivity could be provided by conventional TCP/IP sockets-based protocol. In this instance,clients 50A-C could utilize an Internet Service Provider to establish connectivity toserver 12. These concepts also apply to any direct (e.g., peer-to-peer) communication that could optionally be provided amongclients 50A-C. -
Server 12 generally comprises central processing unit (CPU) 14,memory 16,bus 18, input/output (I/O) interfaces 20, external devices/resources 22 andstorage unit 24.CPU 14 may comprise a single processing unit, or be distributed across one or more processing units in one or more locations, e.g., on a client and server.Memory 16 may comprise any known type of data storage and/or transmission media, including magnetic media, optical media, random access memory (RAM), read-only memory (ROM), a data cache, etc. Moreover, similar toCPU 14,memory 16 may reside at a single physical location, comprising one or more types of data storage, or be distributed across a plurality of physical systems in various forms. - I/O interfaces 20 may comprise any system for exchanging information to/from an external source. External devices/
resources 22 may comprise any known type of external device, including speakers, a CRT, LCD screen, handheld device, keyboard, mouse, voice recognition system, speech output system, printer, monitor/display, facsimile, pager, etc.Bus 18 provides a communication link between each of the components inserver 12 and likewise may comprise any known type of transmission link, including electrical, optical, wireless, etc. -
Storage unit 24 can be any system (e.g., database) capable of providing storage for information under the present invention. Such information could include, for example,events 60, etc. Assuch storage unit 24 could include one or more storage devices, such as a magnetic disk drive or an optical disk drive. In another embodiment,storage unit 24 includes data distributed across, for example, a local area network (LAN), wide area network (WAN) or a storage area network (SAN) (not shown). Although not shown, additional components, such as cache memory, communication systems, system software, etc., maybe incorporated intoserver 12. - Shown in
memory 16 ofserver 12 isevent handling system 30. Under the present invention,event handling system 30 allows the categorization and routing of events to be associated with security authorization roles onserver 12. It should be understood that, as used herein, the term “event” is intended to refer to any type of behavior or message related thereto occurring withinsystem 10 that requires notification ofclients 50A-C and/or some type of corrective action. For example, if an application program loaded onserver 12 that is used by one ormore clients 50A-C fails, an event would be generated. Similarly, if a client or an application program loaded thereon fails, and event would be generated (and communicated to server 12). Accordingly, in a typical embodiment, the term “event” refers to an information technology (IT) event occurring withinsystem 10 and its corresponding notification/message detailing the failure. - As indicated above, previous technologies separated the categorization and routing of events from the security authorization process. To this extent, although event routing was handled on a server, the security authorization processing for the events occurred on individual clients. This required the individual clients to access various permissions for interacting with the events. In sharp contrast, the present invention merges the two processes so that an event is routed to
clients 50A-C along with any applicable permissions. - The functions of the present invention will be described in conjunction with
FIGS. 1 and 2 collectively. As first shown inFIG. 1 ,event handling system 30 generally includesevent reception system 32,storage system 34,categorization system 36,destination system 38,list association system 40,routing system 42,query reception system 44 andevent retrieval system 46. Assume in an illustrative example thatclient 50C (or a system loaded thereon has failed). In such an instance, an event would be generated and communicated toserver 12. The event would be received byevent reception system 32, and then optionally stored instorage unit 24 bystorage system 34. As will be further described below, the storage of events allows for the synchronous access thereof in the future. Regardless, after the event has been received (and stored),categorization system 36 will categorize the event by determining an event group pertaining thereto. - Referring to
FIG. 2 , the relationship betweenevent 70 andevent group 72 is shown in greater detail. In general, eachevent group 72 has a group name field, a group description field and a selector expression field. Assume in this illustrative example that eachclient 50A-C has itsown event group 72. In a typical embodiment, the group name field of theevent group 72 will set forth the host name of thecorresponding client 50A-C. Accordingly, in this example, the name ofevent group 72 could be the host name ofclient 50C. As such, all events occurring onclient 50C could fall underevent group 72. The description field ofevent group 72 allows a specific explanation of the event group to be set forth. Still yet, the selector expression field ofevent group 72 allows certain criteria to be set forth for determining whetherevent 70 is part of thatevent group 72. For example, the selector expression could indicate that any events originating from aclient 50C having a host name matching that set forth in the name field belongs to thatevent group 72. In such a case, any event that occurred onclient 50C could be categorized underevent group 72. - Referring back to
FIG. 1 , once the event group for the event has been identified, a set (e.g., one or more) of destinations for receiving the event will be determined bydestination system 38. As is well known, the failure of one system could have ramifications on other systems. Accordingly, such other systems should receive the event. Determination of the set of destinations is performed based on the event group. Specifically, each event group has a particular set of destinations to which event should be routed. A destination could include a single user/client or a group of users/clients. In this example, assume that the set of destinations includesother users 52A-B. As such, the event will be routed toclients 50A-B. Before the event is routed, however,list association system 40 will associate/link an access control list (ACL) corresponding to the identified set of destinations with the identified event group 72 (FIG. 2 ). Specifically, thelist association system 40 will locate the one or more ACL(s) that correspond to the set of destinations and associate the same therewith. - Referring to
FIG. 2 , the association ofACL 78 toevent group 72 will be described in greater detail. As shown,ACL 78 includes a list name field and a set ofentries 80. In a typical embodiment,ACL 78 will be associated withevent group 72 based on its name field. Accordingly,ACL 78 could be assigned the same name as event group 72 (e.g., the host name ofclient 50C). As further shown inFIG. 2 , eachentry 80 has a type field, an identifier field and a permission field. The type field indicates whetherentry 80 pertains to a “user” or a “group of users.” For example,entry 80 could be made applicable to bothusers 52A-B, or only to a single user such asuser 52A. The identifier field will specifically identify the user or group of users described in the type field. For example, the identifier could indicate users “52A and 52B” (or a single user depending on what is specified in the type field). The permission field sets forth a permission for the applicable user(s) to interact with events falling within theevent group 72. Such permission could be “read,” “write,” or “read/write.” The “read” permission would give the applicable user(s) the authority to subscribe to thequeue 74 ortopic 76 associated with thatevent group 72. It also grants the applicable user(s) the authority to query events associated with thatevent group 72. The “write” permission has no bearing onqueue 74 ortopic 76 forevent group 72, but it grants the applicable user(s) the authority to update or delete events associated withevent group 72. The “read/write” permission would grant the applicable user(s) both “read” and “write” permissions. - Referring back to
FIG. 1 , once the ACL 78 (FIG. 2 ) has been associated with the applicable event group 72 (FIG. 2 ),routing system 42 will route the event 70 (FIG. 2 ), and optionally the ACL 78 (FIG. 2 ) associated withevent group 72, to the set of destinations previously determined bydestination system 38. Ifclients 50A-B receive bothevent 70 andACL 78, this alleviates the need for eitherclient 50A-B to query or otherwise independently accessACL 78. Based on the permissions inACL 78,users 52A-B will interact withevent 70 accordingly. Conversely, ifACL 78 is not routed withevent 70,users 52A-B could access the permissions contained therein on a subscription basis (e.g., by communicating with server 12). For example, upon receivingevent 70,users 50A-B could communicate withserver 12. Such a communication could specifically identify event 70 (e.g., according to a unique identifier assigned thereto byevent handling system 30 upon initial receipt by server 12). Sinceevent 70 has been associated withACL 78 onserver 12, the permissions forusers 50A-B are easily and efficiently determined. Similarly,users 52A-C could subscribe to certain “topics” for which they will receive related events. - It should be appreciated that in addition to storing
event 70,storage system 34 could also store the determined set of destinations, the identifiedevent group 72 pertaining toevent 70 and/or the ACL 78 (or its association with event group 72) instorage unit 24. This allows the present invention to easily accommodate synchronous querying of events (as well as the above example involving the asynchronous notification of events). Specifically,clients 50A-C could also be provided with the capability to queryserver 12 to further interact with events. For example, assume thatclient 50A wishes tolater query server 12 to interact with event 70 (FIG. 2 ). In this case, the query would be received byquery reception system 44.Event retrieval system 46 would then retrieveevent 70 and theACL 78 fromstorage unit 24. Based on the permissions inACL 78,user 50A could attempt to further interact withevent 70. - It should also be understood that the present invention can be realized in hardware, software, or a combination of hardware and software. Any kind of computer system(s)—or other apparatus adapted for carrying out the methods described herein—is suited. A typical combination of hardware and software could be a general purpose computer system with a computer program that, when loaded and executed, carries out the respective methods described herein. Alternatively, a specific use computer, containing specialized hardware for carrying out one or more of the functional tasks of the invention, could be utilized. The present invention can also be embedded in a computer program product, which comprises all the respective features enabling the implementation of the methods described herein, and which—when loaded in a computer system—is able to carry out these methods. Computer program, software program, program, or software, in the present context mean any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: (a) conversion to another language, code or notation; and/or (b) reproduction in a different material form.
- Referring now to
FIG. 3 , a method flow diagram 100 according to the present invention is shown. As depicted, first step S1 is to receive an event on a server. Second step S2 is to identify an event group pertaining to the event. Third step S3 is to determine a set of destinations associated with the event group for receiving the event. Fourth step S4 is to associate the event group with an access control list (ACL) corresponding to the set of destinations. Fifth step S5 is to route the event (and optionally the ACL associated with the event group) to the set of destinations after the associating step. - The foregoing description of the preferred embodiments of this invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed, and obviously, many modifications and variations are possible. Such modifications and variations that may be apparent to a person skilled in the art are intended to be included within the scope of this invention as defined by the accompanying claims. For example, the illustrative representation of
event handling system 30 shown inFIG. 1 is not intended to be limiting. That is, the functions of the present invention described herein could be represented by a different configuration of systems.
Claims (14)
1. A system for associating event categorization and routing with security authorization roles, comprising:
an event reception system for receiving an event on a server;
a categorization system for categorizing the event by identifying an event group pertaining to the event;
a destination system for determining a set of destinations associated with the event group for receiving the event; and
a list association system for associating the event group with an access control list (ACL) corresponding to the set of destinations, wherein the ACL includes a set of entries that each identify at least one user and a permission of the at least one user for interacting with the event,
wherein the event is an information technology (IT) event pertaining to a computer system in communication with the server.
2. The system of claim 1 , further comprising a routing system for routing the event to the set of destinations after the event group is associated with the ACL.
3. The system of claim 1 , wherein the computer system is a client.
4. The system of claim 1 , further comprising an event storage system for storing the event on the server.
5. The system of claim 4 , further comprising;
a query reception system for receiving a query for the event on the server from a requestor; and
an event retrieval system for retrieving the event from storage, wherein the event and the ACL associated with the event group are routed to the requestor.
6. The system of claim 1 , wherein the event group has a group name, a group description and a selector expression.
7. The system of claim 6 , wherein the list association system associates the group name of the event group with a list name of the ACL.
8. A program product stored on a recordable medium for associating event categorization and routing with security authorization roles, which when executed, comprises:
program code for receiving an event on a server;
program code for categorizing the event by identifying an event group pertaining to the event;
program code for determining a set of destinations associated with the event group for receiving the event; and
program code for associating the event group with an access control list (ACL) corresponding to the set of destinations, wherein the ACL includes a set of entries that each identify at least one user and a permission of the at least one user for interacting with the event,
wherein the event is an information technology (IT) event pertaining to a computer system in communication with the server.
9. The program product of claim 8 , further comprising program code for routing the event to the set of destinations after the event group is associated with the ACL.
10. The program product of claim 8 , wherein the computer system is a client.
11. The program product of claim 8 , further comprising program code for storing the event on the server.
12. The program product of claim 11 , further comprising;
program code for receiving a query for the event on the server from a requestor; and
program code for retrieving the event from storage, wherein the event and the ACL associated with the event group are routed to the requester.
13. The program product of claim 8 , wherein the event group has a group name, a group description and a selector expression.
14. The program product of claim 13 , wherein the program code for associating associates the group name of the event group with a list name of the ACL.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/204,441 US20080320563A1 (en) | 2004-03-25 | 2008-09-04 | System and program product for associating event categorization and routing with security authorization roles |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/808,847 US7464263B2 (en) | 2004-03-25 | 2004-03-25 | Method, system and program product for associating event categorization and routing with security authorization roles |
US12/204,441 US20080320563A1 (en) | 2004-03-25 | 2008-09-04 | System and program product for associating event categorization and routing with security authorization roles |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/808,847 Continuation US7464263B2 (en) | 2004-03-25 | 2004-03-25 | Method, system and program product for associating event categorization and routing with security authorization roles |
Publications (1)
Publication Number | Publication Date |
---|---|
US20080320563A1 true US20080320563A1 (en) | 2008-12-25 |
Family
ID=34991574
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/808,847 Expired - Fee Related US7464263B2 (en) | 2004-03-25 | 2004-03-25 | Method, system and program product for associating event categorization and routing with security authorization roles |
US12/204,441 Abandoned US20080320563A1 (en) | 2004-03-25 | 2008-09-04 | System and program product for associating event categorization and routing with security authorization roles |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/808,847 Expired - Fee Related US7464263B2 (en) | 2004-03-25 | 2004-03-25 | Method, system and program product for associating event categorization and routing with security authorization roles |
Country Status (1)
Country | Link |
---|---|
US (2) | US7464263B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070067349A1 (en) * | 2005-08-24 | 2007-03-22 | Microsoft Corporation | Security in peer to peer synchronization applications |
US20110138298A1 (en) * | 2009-12-08 | 2011-06-09 | Joseph Anderson Alfred | Method and apparatus for providing control of social networking sites |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8250518B2 (en) * | 2006-03-30 | 2012-08-21 | Microsoft Corporation | Per user file associations |
US9769177B2 (en) * | 2007-06-12 | 2017-09-19 | Syracuse University | Role-based access control to computing resources in an inter-organizational community |
US9699205B2 (en) | 2015-08-31 | 2017-07-04 | Splunk Inc. | Network security system |
US10797964B2 (en) * | 2016-11-26 | 2020-10-06 | Amazon Technologies, Inc. | System event notification service |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5321837A (en) * | 1991-10-11 | 1994-06-14 | International Business Machines Corporation | Event handling mechanism having a process and an action association process |
US5615135A (en) * | 1995-06-01 | 1997-03-25 | International Business Machines Corporation | Event driven interface having a dynamically reconfigurable counter for monitoring a high speed data network according to changing traffic events |
US5751933A (en) * | 1990-09-17 | 1998-05-12 | Dev; Roger H. | System for determining the status of an entity in a computer network |
US5761085A (en) * | 1996-11-12 | 1998-06-02 | The United States Of America As Represented By The Secretary Of The Navy | Method for monitoring environmental parameters at network sites |
US6044372A (en) * | 1997-07-18 | 2000-03-28 | Dazel Corporation | Method and apparatus for publishing information to a communications network and enabling subscriptions to such information |
US6158007A (en) * | 1997-09-17 | 2000-12-05 | Jahanshah Moreh | Security system for event based middleware |
US20030135382A1 (en) * | 2002-01-14 | 2003-07-17 | Richard Marejka | Self-monitoring service system for providing historical and current operating status |
US20040010718A1 (en) * | 1998-11-09 | 2004-01-15 | Porras Phillip Andrew | Network surveillance |
US20050044411A1 (en) * | 2003-08-20 | 2005-02-24 | Microsoft Corporation | Peer-to-peer authorization method |
US6985901B1 (en) * | 1999-12-23 | 2006-01-10 | Accenture Llp | Controlling data collection, manipulation and storage on a network with service assurance capabilities |
US7272646B2 (en) * | 2000-06-16 | 2007-09-18 | Securify, Inc. | Network monitor internals description |
US7487550B2 (en) * | 2002-12-12 | 2009-02-03 | International Business Machines Corporation | Methods, apparatus and computer programs for processing alerts and auditing in a publish/subscribe system |
-
2004
- 2004-03-25 US US10/808,847 patent/US7464263B2/en not_active Expired - Fee Related
-
2008
- 2008-09-04 US US12/204,441 patent/US20080320563A1/en not_active Abandoned
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5751933A (en) * | 1990-09-17 | 1998-05-12 | Dev; Roger H. | System for determining the status of an entity in a computer network |
US5321837A (en) * | 1991-10-11 | 1994-06-14 | International Business Machines Corporation | Event handling mechanism having a process and an action association process |
US5615135A (en) * | 1995-06-01 | 1997-03-25 | International Business Machines Corporation | Event driven interface having a dynamically reconfigurable counter for monitoring a high speed data network according to changing traffic events |
US5761085A (en) * | 1996-11-12 | 1998-06-02 | The United States Of America As Represented By The Secretary Of The Navy | Method for monitoring environmental parameters at network sites |
US6044372A (en) * | 1997-07-18 | 2000-03-28 | Dazel Corporation | Method and apparatus for publishing information to a communications network and enabling subscriptions to such information |
US6158007A (en) * | 1997-09-17 | 2000-12-05 | Jahanshah Moreh | Security system for event based middleware |
US20040010718A1 (en) * | 1998-11-09 | 2004-01-15 | Porras Phillip Andrew | Network surveillance |
US6985901B1 (en) * | 1999-12-23 | 2006-01-10 | Accenture Llp | Controlling data collection, manipulation and storage on a network with service assurance capabilities |
US7272646B2 (en) * | 2000-06-16 | 2007-09-18 | Securify, Inc. | Network monitor internals description |
US20030135382A1 (en) * | 2002-01-14 | 2003-07-17 | Richard Marejka | Self-monitoring service system for providing historical and current operating status |
US7487550B2 (en) * | 2002-12-12 | 2009-02-03 | International Business Machines Corporation | Methods, apparatus and computer programs for processing alerts and auditing in a publish/subscribe system |
US20050044411A1 (en) * | 2003-08-20 | 2005-02-24 | Microsoft Corporation | Peer-to-peer authorization method |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070067349A1 (en) * | 2005-08-24 | 2007-03-22 | Microsoft Corporation | Security in peer to peer synchronization applications |
US7930346B2 (en) * | 2005-08-24 | 2011-04-19 | Microsoft Corporation | Security in peer to peer synchronization applications |
US20110138298A1 (en) * | 2009-12-08 | 2011-06-09 | Joseph Anderson Alfred | Method and apparatus for providing control of social networking sites |
US8935614B2 (en) * | 2009-12-08 | 2015-01-13 | At&T Intellectual Property I, L.P. | Method and apparatus for navigating a video program via a transcript of spoken dialog |
US20150106465A1 (en) * | 2009-12-08 | 2015-04-16 | At&T Intellectual Property I, L.P. | Method and apparatus for providing control of social networking sites |
US10110698B2 (en) * | 2009-12-08 | 2018-10-23 | At&T Intellectual Property I, L.P. | Method and apparatus for providing control of social networking sites |
US20190058778A1 (en) * | 2009-12-08 | 2019-02-21 | At&T Intellectual Property I, L.P. | Method and apparatus for providing control of social networking sites |
US10778804B2 (en) * | 2009-12-08 | 2020-09-15 | At&T Intellectual Property I, L.P. | Method and apparatus for providing control of social networking sites |
Also Published As
Publication number | Publication date |
---|---|
US7464263B2 (en) | 2008-12-09 |
US20050216766A1 (en) | 2005-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7234032B2 (en) | Computerized system, method and program product for managing an enterprise storage system | |
US10681026B2 (en) | Secure shell public key audit system | |
US7716263B2 (en) | Scalable method and system for providing real time indications of currently open documents | |
US8286157B2 (en) | Method, system and program product for managing applications in a shared computer infrastructure | |
US7487550B2 (en) | Methods, apparatus and computer programs for processing alerts and auditing in a publish/subscribe system | |
EP2156308B1 (en) | Extensible and programmable multi-tenant service architecture | |
CN100462957C (en) | Information route method and system based on secret strategy | |
US20080320563A1 (en) | System and program product for associating event categorization and routing with security authorization roles | |
KR20030047856A (en) | Data processing system, data processing method, information processing device, and computer program | |
US20170337391A1 (en) | Enabling session-based permission sets | |
US20040064572A1 (en) | Digital service system | |
US20040117621A1 (en) | System and method for managing resource sharing between computer nodes of a network | |
US9563482B2 (en) | Method for imposing policy modification constraints | |
JP3994059B2 (en) | Clustered computer system | |
US9325679B2 (en) | Method and apparatus for communicating information between devices | |
WO2022071946A1 (en) | Data transformations based on policies | |
JP2020095434A (en) | Communication device, communication method, and communication program | |
CN116842546B (en) | Distributed data access authorization and data service method and device, equipment and medium | |
JP6798737B1 (en) | Personal information management system and personal information management method | |
EP4227820A1 (en) | System for managing data | |
JP2006048493A (en) | Location search server device and service information system | |
JPH11252066A (en) | Security server and security operation method | |
Rajendra Prasad et al. | An Integrated Methodology of TsF-KNN-Based Automated Data Classification and Security for Mobile Cloud Computing | |
CN115203670A (en) | Service access processing method and device, computer readable medium and electronic equipment | |
Almutairi et al. | Enforcement of CA-UCON Model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION |