US20040187029A1 - System and method for data and request filtering - Google Patents
System and method for data and request filtering Download PDFInfo
- Publication number
- US20040187029A1 US20040187029A1 US10/395,049 US39504903A US2004187029A1 US 20040187029 A1 US20040187029 A1 US 20040187029A1 US 39504903 A US39504903 A US 39504903A US 2004187029 A1 US2004187029 A1 US 2004187029A1
- Authority
- US
- United States
- Prior art keywords
- user
- data
- restriction information
- client computer
- server
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0861—Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
-
- 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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- 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/102—Entity profiles
-
- 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/2119—Authenticating web pages, e.g. with suspicious links
Definitions
- the invention relates generally to filtering data and requests during the use of a computer system. More specifically, in one embodiment, the invention relates to systems and methods for using a client-resident agent to filter data to be presented and requests to be made during a user's usage of a computer system.
- the present invention facilitates the filtering of data and data requests across multiple server and/or web-based applications.
- the functionality implementing the filtering is preferably resident on the user's client computer.
- the invention prevents the user from making an impermissible request, and further prevents the user from viewing impermissible data retrieved in response to a request. In this way, a user is allowed to make only authorized requests, and to view only data he is authorized to view.
- the invention comprises a method for controlling access to and/or requests for content provided to a user's computer.
- the method comprises identifying the user to a server, retrieving user requested data, monitoring the retrieved data, and filtering out particular requests and or/data based on the user's identity.
- a user profile stored on the server specifies the filtering criteria and can also include a reference set of biometric data associated with the user.
- the user can input biometric data to the client for transmission to the server, where it is compared to the reference set of biometric data.
- the user's identification is authenticated if the two sets of data match. Access to user-requested data may be limited on a screen-by-screen or finer basis in accordance with filtering criteria.
- the invention comprises a system for monitoring and restricting access to user-requested information.
- the system includes a first server for storing a user profile including a predetermined set of user-specific content restrictions, and for transmitting the user profile to a client computer.
- the system also includes a second server for storing a reference set of biometric data and comparing biometric data received from a client computer to the stored reference set of biometric data. If the received set of biometric data matches the stored set of biometric data, the server sends the user profile to the client computer.
- the data that can be stored in the user profile may include, in addition to filtering criteria, a password, user identification number, secure ID, or biometric data, and can be used to identify a user of the system.
- the system may further include a biometric input device whereby a user may, for example, present a fingerprint, retinal scan, or other biometric data to be sent to the server for authentication.
- an active agent resident on the client monitors data retrieved or requests made by the user.
- the agent may monitor incoming data as it is presented on screens to the user, blocking display of particular screens according to the content restrictions in the user's profile.
- the agent may monitor outgoing requests made by the user, blocking the transmission of particular requests according to the content restrictions in the user's profile.
- the active agent may reside on an application server, where it monitors data to be sent to or requests made by the client.
- FIG. 1 is a block diagram of a system to authenticate a user and automate login to one or more applications using a client-resident user profile and an identification server in accordance with the invention
- FIG. 2 is a flow diagram of a process to authenticate a user to one or more applications using a client-resident profile and an identification server in accordance with the invention
- FIG. 3 is a flow diagram of a process to disable a user from one or more applications and define events that require a user to re-authenticate themselves using a client-resident profile and an identification server in accordance with the invention.
- FIG. 4 is a flow diagram of a process to filter data and data requests of users within one or more applications using a client-resident profile and an identification server in accordance with the invention.
- FIG. 1 illustrates an embodiment of a system 100 to automate the login process to and to audit the user's activity within one or more applications in accordance with the invention.
- the system 100 includes a first computing system (a “client”) 104 , a second computing system (an “application server”) 106 and a third computing system (an “identification server”) 108 , all in communication with a network 1 10 .
- the client node 104 is used by one or more users, indicated graphically at 102 .
- the client node 104 , the application server 106 and the identification server 108 are in communication with the network 110 using communication channels 112 .
- the communication channels 112 can connect the client 104 to a local-area network (LAN), such as a company intranet, a wide area network (WAN) such as the Internet, or the like.
- LAN local-area network
- WAN wide area network
- the client 104 and servers 106 , 108 communicate with the network 110 through the communication channels 112 using any of a variety of connections including, for example, standard telephone lines, LAN or WAN links (e.g., T1, T3, 56 kb, X.25), broadband connections (ISDN, Frame Relay, ATM), wireless connections, and the like.
- connections can be established using a variety of communication protocols (e.g., HTTP(S), TCP/IP, SSL, IPX, SPX, NetBIOS, Ethernet, RS232, direct asynchronous connections, a proprietary protocol, and the like).
- HTTP HyperText Transfer Protocol
- TCP/IP Transmission Control Protocol
- SSL Secure Sockets Layer
- IPX IPX
- SPX NetBIOS
- Ethernet RS232
- direct asynchronous connections a proprietary protocol, and the like.
- Each of the servers 106 , 108 can be any computing device capable of providing the services requested by the client 104 . Particularly, this includes logging into secure applications, tracking user activities within applications, and terminating a user's access to applications as described in more detail below.
- the application server 106 includes one or more server-resident application modules 114 and one or more application database modules 116 .
- the application server 106 may also include an application web server module 118 to facilitate communication with the client 104 over the network 110 where the communication network 110 is the Internet, an intranet, or the like.
- the identification server 108 includes an identification application server module 120 , an identification web server module 122 , and an identification database module 124 .
- the modules throughout the specification can be implemented in whole or in part as a software program and/or a hardware device (e.g., ASIC, FPGA, processor, memory, storage and the like).
- FIG. 1 depicts an application server 106 as an entity separate and distinct from the identification server 108 and each server in independent communication with the network 110 .
- the servers 106 , 108 can also be implemented, for example, on a single server (e.g., as logically distinct modules), distributed on portions of several (i.e., more than two) servers, and/or as part of a single server node or server farm in communication with the network 110 through, for example, a single web server (not shown).
- the client 104 can be any computing device (e.g., a personal computer, set top box, wireless mobile phone, handheld device, personal digital assistant, kiosk, etc) used to provide a user interface to access the application server 106 .
- the client 104 includes one or more input/output devices 126 such as a keyboard, a mouse, a screen, a touch-pad, a biometric input device, and the like.
- the client 104 also includes an operating system 128 . Operating systems supported by the client 104 can include any member of the WINDOWS family of operating systems from Microsoft Corporation.
- the client 104 may also include one or more client-resident applications 130 , such as INTERNET EXPLORER developed by Microsoft Corporation, NETSCAPE NAVIGATOR developed by AOL Time Warner, or ATTACHMATE developed by Attachmate Corporation.
- a user 102 registers that user's authentication data for one or more applications with the application server 106 .
- the authentication data can include, for example, a password, a user identification number, or biometric data associated with the individual's fingerprint(s), facial characteristics, voice, and the like.
- the system 100 stores authentication data identifying the user to the system (e.g., username, logon ID, employee ID and the like) in the application database module 116 .
- the application database module 116 may also associate an alias with that stored data. For example, employee #2054 may be associated with the alias 719jLL01.
- an active agent 132 residing on the client 104 captures the authentication data entered by the user 102 using one or more input devices 126 and transmits (or causes the transmission of) the authentication data to the identification web server module 122 residing on the identification server 108 .
- the active agent 132 captures the data by, for example, monitoring a messaging queue for instructions sent to and from the operating system, intercepting HTTP requests sent to and from the network 110 , capturing screen images sent to the output device(s) 126 , as well as other methods.
- the identification web server module 122 provides the authentication data to the application server module 120 , which in turn stores the data in the database module 124 .
- the identification application server module 120 then retrieves the updated authentication data and sends it to the client 104 using the web server module 122 and the active agent 132 .
- the authentication data is stored on the client 104 in the user profile 134 for future use by the active agent 132 residing on the client 104 . Thereafter, as the user logs into an application in the usual fashion, the active agent 132 operates in the background, gathering and transmitting to the identification server 108 all the information necessary to automate subsequent logins.
- the active agent 132 may reside on a server. This embodiment is particularly useful in a “thin-client” environment, such as CITRIX METAFRAME.
- a user 102 connects to a server where the active agent 132 resides.
- This server communicates with the application server 106 and identification server 108 .
- the displayed output (such as HTML or screen dumps, for example) is obtained indirectly from the application server 106 , by way of the server on which the active agent 132 resides; that is, this additional server runs the active agent 132 and passes back the display information (as pixel values, markup code, or any other suitable display modality) to the client 104 .
- the user profile 134 can contain various data furthering the function of the invention, such as: a user identification code; an authentication modality (such as password, biometric data, or the like); an application profile (such as a user's rights and privileges within an application); an application credential for access (such as a user's password, a digital representation of biometric data, or the like); a data restriction profile (such as keywords, fields, types of requests, Uniform Resource Locators of web pages, application screens, application screen sequences, or the like); and audit records of a user's activities within an application.
- the active agent 132 can then use the data stored in the user profile 134 to determine which HTTP requests to intercept, to complete login screens with stored authentication data, and the like.
- the system 100 can use to ensure that a listening device does not capture this authentication data, or if the data is captured, that it is not usable by itself.
- the active agent 132 can encrypt the alias and the biometric data independently; the active agent 132 and the identification database module 124 can communicate with each other using SSL and/or public and private keys; and/or the active agent 132 can transmit the alias and the authentication data independently to the identification database module 124 .
- the registration process can be initiated in several different ways.
- the responsible technology administrator may initiate the registration.
- the administrator can have the user come to the administrator's client 104 or a secure client 104 used only for registration when the employee starts work, when a customer purchases services accessible via the application server 106 , and the like.
- the application server 106 can initiate registration when the user first requests a service from the application server 106 requiring user authentication.
- the client 104 can display a graphical user interface (“GUI”) leading the user through the registration process.
- GUI graphical user interface
- the level of authentication of the user at registration may be selected by the administrators of the system 100 and can range, for example, from a user presenting the correct password to the application server 106 to a user being present in person in front of an administrator who can check the identification of the user.
- the identification application server module 120 creates an association between the data identifying the user to the identification system and the user's alias in the application database 116 , and another association between the user's alias and the user's authentication data in the identification database module 124 .
- Storing the two associations at locations separate from each other requires a breach in security of both the application database 116 and the identification database 124 to put authentication data together with some identifying data.
- the first association may be stored in the application database module 116 residing on one physical server, while the second association may be stored in the identification database module 124 , residing on a second physical server.
- the identifying data is just another unique identifier that does not reveal identity by itself, for example an employee number
- the security of a third database (not shown) containing the association between the employee number and the identity (e.g., name and address of the employee) would have to be breached to match the identity of the user with that individual's biometric data.
- a process 200 as shown in FIG. 2 may be used to authenticate a user to one or more applications without the user having to provide authentication information for the application(s) each time the user requests access.
- the user 102 of the client 104 logs into the identification server 108 (step 202 ) by providing one or more of a password, user identification code, biometric data, or the like.
- the identification server 108 authenticates the user (step 204 ) and retrieves the user profile 134 associated with the user 102 from the identification database module 124 (step 206 ).
- the identification server 108 sends the user profile 134 to the client 104 (step 208 ) for future use by the active agent 132 .
- the user profile 134 remains on the client 104 after the user 102 terminates each session.
- the user profile 134 that is sent from the identification server 108 automatically overwrites the user profile 134 from the previous session. More preferably, however, the user profile 134 is deleted upon termination of each session for security purposes.
- the active agent 132 uses the data contained in the user profile 134 to automatically register the user 102 with the application 114 without the user needing to perform any authentication procedures.
- the access to a service (e.g., execution of an application program, access to a financial or medical database, access to an electronic vault with which the user is associated, download of data and/or application program and the like) is provided by the application server 106 .
- the user of an application requests access to the application by navigating to a login page or to an access screen for the application (step 210 ).
- the active agent 132 recognizes the user action as a request to access an application and determines if the application is a restricted access application (decision step 212 ). If the active agent 132 determines that, based on the data stored user profile 134 and described in detail above, the application is not restricted, access is granted (step 214 ).
- the active agent 132 determines that the requested application is a restricted-access application, the active agent 132 traps the login or access screen (step 216 ).
- the login or access screen may be trapped by, for example, querying an operating system message queue, initiating random screen captures, attaching an object to an Internet browser to intercept HTTP messages, connecting to a terminal emulator using the HLLAPI protocol, or recognition of HTTP addresses, among other methods.
- the active agent 132 queries the user profile 134 to determine the authentication modality used to gain access to the application (step 118 ). The active agent 132 further determines whether the user 102 has previously accessed the application being requested (decision step 220 ).
- the active agent 132 obtains the application credentials (step 222 ) from the user profile 134 , completes the login form or access screen, and transmits (step 234 ) the credentials to the application server 106 .
- the application server 106 may then grant the user access to the application (step 214 ).
- the active agent 132 may recognize, based on an entry in the user profile 134 , an HTTP address entered by the user into the location field of a client-resident Internet browser application. If, for example, the resulting web page includes form fields requiring user authentication, the active agent 132 queries the user profile 134 for the data records corresponding to that address, which include the data necessary to complete the form. Recognizing the data as corresponding to the requested web page, the active agent 132 automatically completes the form and sends the data to the application server 106 . Thus, the user gains access to the application without having to enter her authentication information and can perform the desired functions within the application.
- the active agent 132 monitors the operating system message queue, recognizing messages corresponding to the requested application (based on entries in the user profile 134 ) and taking appropriate action (also as specified entries in the user profile 134 ), e.g., logging the user in or, as described below, enforcing restrictions.
- a user 102 may be requesting access to an application for the first time.
- the identification server 108 may not have the correct authentication credentials for the user 102 , and therefore the active agent 132 will not be able to complete the login screen. Therefore, the user 102 manually enters her authentication credentials (step 224 ) using one or more input devices 126 .
- the active agent 132 captures the authentication credentials (step 226 ), and if the login is successful, sends the information to the identification server 108 .
- the identification server 108 receives the authentication credentials for the newly requested application (step 228 ), and sends them to the identification database module 124 .
- the identification server 108 then updates the user profile (step 230 ) in the identification database module 124 , and sends the updated user profile 134 back to the client 104 .
- the active agent 132 then obtains the application credentials (step 222 ) from the updated user profile 134 , completes the login form or access screen, and transmits (step 234 ) the credentials to the application server 106 .
- the application server 106 may then grant the user access to the application (step 214 ).
- the login process may not be successful. This may be due to a user manually changing his application password, a password expiring, an administrator resetting the password, or other application-specific event.
- the active agent 132 recognizes the screens or messages representing an unsuccessful login sent from the application server 106 to the client 104 .
- the application 106 can then send screens to the client 104 instructing the user 102 to reset his password, PIN, or other authentication data.
- the active agent 132 captures the reset process, updates the user profile 134 with the new data, and sends the new password to the identification server 108 where it is stored in the database module 124 .
- the identification server 108 can then send the user profile 134 back to the client 104 for use during the current and/or future sessions.
- the active agent 132 can also automatically generate a random password for the user 102 such that the user 102 is unaware of the password-reset process.
- a process 300 as shown in FIG. 3 may be used to automatically withdraw a user's access rights to an application and to define events that require a user to be re-authenticated.
- an administrator may define trigger events (step 302 ) which, when recognized by the active agent 132 , may terminate access, or require re-authentication, to the identification server 108 .
- a trigger event can be a particular function or screen accessed by a user, a broken communications link, inactivity of the user, a signal from the server sent on a periodic or random basis, expiration of an application password, or the like. Furthermore, trigger events can be set globally for all users and all applications, for individual users across all registered applications, for particular applications, for certain modules within applications, or for entries in selected fields on particular screens.
- the trigger events can be stored in the identification database module 124 as part of a user profile 134 .
- a user 102 logs into the identification server 108 (step 304 )
- his authentication credentials are authenticated (step 306 ) by the identification server 108 .
- the identification server 108 queries the identification database module 124 and gathers the data necessary to construct the user profile (step 308 ).
- the active agent 132 residing on the client obtains the user profile data from the identification server 108 and stores the user profile on the client 104 (step 310 ).
- a user 102 requests access (step 312 ) to an application server 106 .
- the active agent 132 retrieves the authentication credentials (step 314 ) from the user profile 134 residing on the client 104 , and transmits the credentials to the application server 106 .
- the application server 106 receives the application credentials (step 316 ) from the client 104 , and grants the user 102 access to the requested application (step 318 ).
- the user 102 may execute functions (step 320 ) within the application based on the data stored in his user profile 134 .
- Data specifying restrictions is stored in the user profile 134 , and once again, the active agent 132 constantly monitors the user's activities (by trapping screens, fields within a screen, etc.) and permits execution only of these actions consistent with the restrictions.
- a first user may be restricted to view only particular screens within an application, may only have read access to data on particular screens, may only be able to update a single field on a screen, or may be blocked from viewing certain web pages within a permitted web site.
- a second user may have full administrative rights to an application, and/or may have rights to view any or all web pages within a particular web site. Therefore, the active agent 132 may restrict the first user's actions based on the information in her user profile (preventing transmission of “save” commands in conjunction with read-only data or requests for disallowed web pages), while imposing no restrictions on the functions the second user may perform, or data she can enter and update.
- the invention permits an administrator to revoke a user's access to one or more applications 114 registered with the identification server 108 , even in the case where the user 102 is currently logged into the application(s).
- the active agent 132 may constantly monitor the ongoing user activity (step 320 ) for activities corresponding to entries in the user profile 134 currently residing on the client 104 .
- An administrator may then update one or more user profiles 134 (step 322 ) with instructions that the user's access rights are to be revoked.
- the updated user profile may then be sent (step 324 ) to the client 104 for use by the active agent 132 as it monitors ongoing user activity, overwriting the previous user profile 134 . If the active agent 132 receives notice the user's access rights have been revoked (decision step 328 ), the active agent traps the user activity and terminates access (step 326 ) to the identified application(s) 106 .
- a user 102 may also be required to re-authenticate himself to the identification server 108 based on one or more trigger events.
- a re-authentication trigger event may be, for purposes of illustration, a particular function initiated by a user or an administrator, a broken communication link, a screen or web page requested by a user, inactivity of the user, passage of some period of time, revocation of access rights, the execution of a particular sequence of functions, elapsed time within an application, the receipt of web content, or a signal from the server sent on a periodic or random basis.
- the trigger events can be stored in the identification database module 124 as part of a user profile 134 , and are sent to the client 104 when a user 102 logs into the identification server 108 .
- the active agent 132 can determine if the user's access privileges have been revoked (decision step 328 ). If a user's access privileges have not been revoked, the active agent 132 can then determine if a re-authentication trigger event has occurred (decision step 330 ). If, in one case, no re-authentication trigger event has occurred, the user 102 may continue to use the application(s) 106 without interruption. If, however, a re-authentication trigger event has occurred, the user activity can be interrupted and the user may be presented with a login screen (step 304 ) for the identification server 108 .
- FIG. 4 illustrates the filtering of user requests and data to be presented to a user 102 .
- the user of an application requests access to the application by navigating to a login page for the identification server (step 402 ).
- the identification server 108 authenticates the user 102 (step 404 ), retrieves the user profile 134 for the user (step 406 ) from the identification database module 124 , and sends the user profile 134 to the client 104 , where it is obtained (step 408 ) and stored by the active agent 132 .
- a user 102 may now request access (step 410 ) to one or more applications 106 via the identification server 108 , according the process described above and illustrated in FIG. 2.
- the user profile 134 preferably contains a list of conditions, triggers and actions for the user 102 .
- a trigger is associated with a set of conditions and is activated when the set or a subset of the conditions are satisfied. For example, one trigger may be activated when three specific conditions are met; another trigger may be activated when any four of seven specific conditions are met; another trigger may be activated when some particular combination of conditions are satisfied.
- a single action or multiple actions may be performed when a trigger is activated.
- a non-exhaustive list of example actions includes the blocking of a requests; the greying out of data; reporting activity to an administrator; locking a user out of an application; toggling a flag variable to satisfy a condition; etc.
- a user 102 may make a request for information (step 412 ) from the application 114 residing on the application server 106 .
- the user's requests are monitored by the active agent 132 and compared (decision step 414 ) to the content restriction information stored in the user profile 134 .
- the basis for comparison may be data fields queried (e.g., “salary information”), data contained in the query (e.g., “information pertaining to John Doe”), URLs requested, type of report requested, etc. These bases of comparison preferably correspond to conditions found in the user profile 134 .
- an action is performed in accordance with the user profile 134 .
- the request may be blocked by the active agent 132 and a message displayed to the user 102 (step 416 ).
- a portion of the request may be permitted.
- the active agent 132 may note the restricted request and report it to an administrator. If the request is permissible for the user 102 , then no action need be taken and the active agent 132 allows the client 104 to send the request to the application server 106 .
- the application 114 performs the requested function and returns the data to the user's client machine 104 (step 418 ).
- the active agent 132 may compare the returned data against the content restriction information in the user's profile 134 (decision step 420 ).
- the basis for comparison may be data fields of the reply (e.g., “salary information”), data contained in the reply (e.g., all instances of “John Doe”), particular screens of data (identified, for example, by Uniform Resource Locators or header information), particular sequences of screens of data, etc. These bases of comparison preferably correspond to conditions found in the user profile 134 .
- the reply contains data not identified by data fields, such as in a plain HTML page or an emulated mainframe terminal screen, then the user profile 134 may contain particular keywords, which the active agent 132 may search for while performing the comparison step 420 .
- the reply contains data identifiable by location on screen, such as an emulated mainframe terminal screen where a particular type of information is always displayed on the same portion of the screen, then the active agent 132 may filter content based on those screen locations.
- the active agent 132 performs an action as specified by the user profile 134 , preferably blocking the data while displaying a message to the user 102 (step 422 ). In one version, only the restricted data is blocked from the user's view, by way of “xing out” or “greying out” the restricted data on the user's screen. In another version, the client 104 displays no data to the user 102 , but instead the user 102 receives a message that the reply to his request contains restricted data. In another version, the active agent 132 may note the restricted data and report it to an administrator.
- the active agent 132 allows the data to be displayed on the client machine 104 to the user 102 (step 424 ).
- particular menu items or buttons in an application may be disabled for the user 102 so that the functions corresponding to those menus items and buttons (for example, the ability to cut and paste text) cannot be activated.
- the active agent 132 may be configured to filter content by monitoring user requests transmitted from the client, data received by the client, or both.
- the restrictions may be negative (specifying material the user is prohibited from accessing), positive (specifying material the user is permitted to access), or a combination.
- the software may be configured to run on any computer or workstation such as a PC or PC-compatible machine, an Apple Macintosh, a Sun workstation, etc.
- any device can be used as long as it is able to perform all of the functions and capabilities described herein.
- the particular type of computer or workstation is not central to the invention.
- the identification server 108 may include a network interface continuously connected to the network 110 .
- the network interface and the other internal components of the identification server 108 intercommunicate over a main bidirectional bus.
- the main sequence of instructions effectuating the functions of the invention and facilitating interaction among clients 104 , servers 106 and 108 , and the network 110 can reside on a mass storage device (such as a hard disk or optical storage unit) as well as in a main system memory during operation. Execution of these instructions and effectuation of the functions of the invention is accomplished by a central-processing unit (“CPU”).
- CPU central-processing unit
- a group of functional modules that control the operation of CPU and effectuate the operations of the invention as described above can be located in system memory.
- An operating system directs the execution of low-level, basic system functions such as memory allocation, file management, and operation of mass storage devices.
- a control block implemented as a series of stored instructions, responds to client-originated queries by selecting and/or assembling, and then transmitting, appropriate data.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Storage Device Security (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
Data and data requests of users of applications are filtered using a client-resident agent. An alias for an individual is associated with a user profile for the individual user. A user profile may contain data pertaining to restrictions on content the user is permitted to view or types of requests the user is permitted to make within one or more applications. Data in the user profile may be used to grant or deny access to applications, filter particular content from the user's view, or filter particular data requests made by the user.
Description
- The invention relates generally to filtering data and requests during the use of a computer system. More specifically, in one embodiment, the invention relates to systems and methods for using a client-resident agent to filter data to be presented and requests to be made during a user's usage of a computer system.
- The number of computer applications used by large corporations has increased significantly over the past twenty years. For example, companies may employ separate applications for electronic mail, document control, financial applications, inventory management, manufacturing control and engineering functions, in addition to overall network access. Each application may, in turn, include numerous modules and screens, each with one or more functions. Due to numerous regulatory and business requirements, many applications include filtering features that block individual user access to particular data. However, each application often requires a separate administrative function to define, store, and distribute user privileges associated with the users.
- From a management perspective, it is cumbersome to set filtering rules for each end user across the multiple systems and applications that the user may access, and then update these as necessary. Furthermore, the need to implement processes for each new application added by an organization is often repetitive of processes already in place for other applications. Indeed, the multitude of computer applications a user interacts with on a daily basis makes it both cumbersome and expensive to create and maintain a complete set of filtering rules for a user.
- The present invention facilitates the filtering of data and data requests across multiple server and/or web-based applications. The functionality implementing the filtering is preferably resident on the user's client computer. The invention prevents the user from making an impermissible request, and further prevents the user from viewing impermissible data retrieved in response to a request. In this way, a user is allowed to make only authorized requests, and to view only data he is authorized to view.
- Accordingly, in a first aspect, the invention comprises a method for controlling access to and/or requests for content provided to a user's computer. The method comprises identifying the user to a server, retrieving user requested data, monitoring the retrieved data, and filtering out particular requests and or/data based on the user's identity. In one embodiment of the invention, a user profile stored on the server specifies the filtering criteria and can also include a reference set of biometric data associated with the user. The user can input biometric data to the client for transmission to the server, where it is compared to the reference set of biometric data. The user's identification is authenticated if the two sets of data match. Access to user-requested data may be limited on a screen-by-screen or finer basis in accordance with filtering criteria.
- In a second aspect, the invention comprises a system for monitoring and restricting access to user-requested information. The system includes a first server for storing a user profile including a predetermined set of user-specific content restrictions, and for transmitting the user profile to a client computer. The system also includes a second server for storing a reference set of biometric data and comparing biometric data received from a client computer to the stored reference set of biometric data. If the received set of biometric data matches the stored set of biometric data, the server sends the user profile to the client computer.
- As an example, the data that can be stored in the user profile may include, in addition to filtering criteria, a password, user identification number, secure ID, or biometric data, and can be used to identify a user of the system. The system may further include a biometric input device whereby a user may, for example, present a fingerprint, retinal scan, or other biometric data to be sent to the server for authentication.
- In one embodiment, an active agent resident on the client monitors data retrieved or requests made by the user. For example, the agent may monitor incoming data as it is presented on screens to the user, blocking display of particular screens according to the content restrictions in the user's profile. Alternatively or in addition, the agent may monitor outgoing requests made by the user, blocking the transmission of particular requests according to the content restrictions in the user's profile. Alternatively or in addition, the active agent may reside on an application server, where it monitors data to be sent to or requests made by the client.
- Other aspects and advantages of the invention will become apparent from the following drawings, detailed description, and claims, all of which illustrate the principles of the invention, by way of example only.
- The above and further advantages of the invention may be better understood by referring to the following description taken in conjunction with the accompanying drawings, in which:
- FIG. 1 is a block diagram of a system to authenticate a user and automate login to one or more applications using a client-resident user profile and an identification server in accordance with the invention;
- FIG. 2 is a flow diagram of a process to authenticate a user to one or more applications using a client-resident profile and an identification server in accordance with the invention;
- FIG. 3 is a flow diagram of a process to disable a user from one or more applications and define events that require a user to re-authenticate themselves using a client-resident profile and an identification server in accordance with the invention; and
- FIG. 4 is a flow diagram of a process to filter data and data requests of users within one or more applications using a client-resident profile and an identification server in accordance with the invention.
- In broad overview, FIG. 1 illustrates an embodiment of a
system 100 to automate the login process to and to audit the user's activity within one or more applications in accordance with the invention. Thesystem 100 includes a first computing system (a “client”) 104, a second computing system (an “application server”) 106 and a third computing system (an “identification server”) 108, all in communication with a network 1 10. Theclient node 104 is used by one or more users, indicated graphically at 102. Theclient node 104, theapplication server 106 and theidentification server 108 are in communication with thenetwork 110 usingcommunication channels 112. - For example, the
communication channels 112 can connect theclient 104 to a local-area network (LAN), such as a company intranet, a wide area network (WAN) such as the Internet, or the like. Theclient 104 andservers network 110 through thecommunication channels 112 using any of a variety of connections including, for example, standard telephone lines, LAN or WAN links (e.g., T1, T3, 56 kb, X.25), broadband connections (ISDN, Frame Relay, ATM), wireless connections, and the like. The connections can be established using a variety of communication protocols (e.g., HTTP(S), TCP/IP, SSL, IPX, SPX, NetBIOS, Ethernet, RS232, direct asynchronous connections, a proprietary protocol, and the like). In one embodiment, theclient 104 and theservers - Each of the
servers client 104. Particularly, this includes logging into secure applications, tracking user activities within applications, and terminating a user's access to applications as described in more detail below. - The
application server 106 includes one or more server-resident application modules 114 and one or moreapplication database modules 116. Theapplication server 106 may also include an applicationweb server module 118 to facilitate communication with theclient 104 over thenetwork 110 where thecommunication network 110 is the Internet, an intranet, or the like. Theidentification server 108 includes an identificationapplication server module 120, an identificationweb server module 122, and anidentification database module 124. The modules throughout the specification can be implemented in whole or in part as a software program and/or a hardware device (e.g., ASIC, FPGA, processor, memory, storage and the like). - For purposes of illustration, FIG. 1 depicts an
application server 106 as an entity separate and distinct from theidentification server 108 and each server in independent communication with thenetwork 110. It is to be understood, however, that theservers network 110 through, for example, a single web server (not shown). It should further be understood that even if two logical servers are running in the same physical machine, they may be secured logically if any of the following conditions are met: (1) the servers run in different process spaces (so there is no possibility for one process to access the memory of another process); (2) the servers access different logical databases (which may be further partitioned) with different credential or entry requirements; (3) sensitive data in theapplication server 106 and theidentification server 108 are encrypted using separate encryption keys; or (4) the server applications are launched (e.g., in a Unix environment) under two different logon accounts. For heightened security, it is possible to encrypt all the data used by theidentification server 108 using a key maintained by theapplication server 106 or an external key server; this approach enhances security in that a breach of the of theidentification server 108 and itsdatabase 124 would yield only encrypted data. - The
client 104 can be any computing device (e.g., a personal computer, set top box, wireless mobile phone, handheld device, personal digital assistant, kiosk, etc) used to provide a user interface to access theapplication server 106. Theclient 104 includes one or more input/output devices 126 such as a keyboard, a mouse, a screen, a touch-pad, a biometric input device, and the like. Theclient 104 also includes anoperating system 128. Operating systems supported by theclient 104 can include any member of the WINDOWS family of operating systems from Microsoft Corporation. Theclient 104 may also include one or more client-resident applications 130, such as INTERNET EXPLORER developed by Microsoft Corporation, NETSCAPE NAVIGATOR developed by AOL Time Warner, or ATTACHMATE developed by Attachmate Corporation. - To use the
system 100, auser 102 registers that user's authentication data for one or more applications with theapplication server 106. The authentication data can include, for example, a password, a user identification number, or biometric data associated with the individual's fingerprint(s), facial characteristics, voice, and the like. Thesystem 100 stores authentication data identifying the user to the system (e.g., username, logon ID, employee ID and the like) in theapplication database module 116. Theapplication database module 116 may also associate an alias with that stored data. For example, employee #2054 may be associated with the alias 719jLL01. As the user logs into an application 114 (residing on the application server 106) via thenetwork 110, anactive agent 132 residing on theclient 104 captures the authentication data entered by theuser 102 using one ormore input devices 126 and transmits (or causes the transmission of) the authentication data to the identificationweb server module 122 residing on theidentification server 108. Theactive agent 132 captures the data by, for example, monitoring a messaging queue for instructions sent to and from the operating system, intercepting HTTP requests sent to and from thenetwork 110, capturing screen images sent to the output device(s) 126, as well as other methods. The identificationweb server module 122 provides the authentication data to theapplication server module 120, which in turn stores the data in thedatabase module 124. The identificationapplication server module 120 then retrieves the updated authentication data and sends it to theclient 104 using theweb server module 122 and theactive agent 132. The authentication data is stored on theclient 104 in the user profile 134 for future use by theactive agent 132 residing on theclient 104. Thereafter, as the user logs into an application in the usual fashion, theactive agent 132 operates in the background, gathering and transmitting to theidentification server 108 all the information necessary to automate subsequent logins. - Alternatively, or in addition, the
active agent 132 may reside on a server. This embodiment is particularly useful in a “thin-client” environment, such as CITRIX METAFRAME. In this embodiment, auser 102 connects to a server where theactive agent 132 resides. This server, in turn, communicates with theapplication server 106 andidentification server 108. The displayed output (such as HTML or screen dumps, for example) is obtained indirectly from theapplication server 106, by way of the server on which theactive agent 132 resides; that is, this additional server runs theactive agent 132 and passes back the display information (as pixel values, markup code, or any other suitable display modality) to theclient 104. - The user profile134 can contain various data furthering the function of the invention, such as: a user identification code; an authentication modality (such as password, biometric data, or the like); an application profile (such as a user's rights and privileges within an application); an application credential for access (such as a user's password, a digital representation of biometric data, or the like); a data restriction profile (such as keywords, fields, types of requests, Uniform Resource Locators of web pages, application screens, application screen sequences, or the like); and audit records of a user's activities within an application. The
active agent 132 can then use the data stored in the user profile 134 to determine which HTTP requests to intercept, to complete login screens with stored authentication data, and the like. - In the illustrated embodiment, there are security measures that the
system 100 can use to ensure that a listening device does not capture this authentication data, or if the data is captured, that it is not usable by itself. For example, theactive agent 132 can encrypt the alias and the biometric data independently; theactive agent 132 and theidentification database module 124 can communicate with each other using SSL and/or public and private keys; and/or theactive agent 132 can transmit the alias and the authentication data independently to theidentification database module 124. - The registration process can be initiated in several different ways. The responsible technology administrator may initiate the registration. For example, the administrator can have the user come to the administrator's
client 104 or asecure client 104 used only for registration when the employee starts work, when a customer purchases services accessible via theapplication server 106, and the like. Alternatively, theapplication server 106 can initiate registration when the user first requests a service from theapplication server 106 requiring user authentication. Theclient 104 can display a graphical user interface (“GUI”) leading the user through the registration process. The level of authentication of the user at registration may be selected by the administrators of thesystem 100 and can range, for example, from a user presenting the correct password to theapplication server 106 to a user being present in person in front of an administrator who can check the identification of the user. - Once the
system 100 registers an individual, the identificationapplication server module 120 creates an association between the data identifying the user to the identification system and the user's alias in theapplication database 116, and another association between the user's alias and the user's authentication data in theidentification database module 124. Storing the two associations at locations separate from each other requires a breach in security of both theapplication database 116 and theidentification database 124 to put authentication data together with some identifying data. For example, the first association may be stored in theapplication database module 116 residing on one physical server, while the second association may be stored in theidentification database module 124, residing on a second physical server. Further, if the identifying data is just another unique identifier that does not reveal identity by itself, for example an employee number, then the security of a third database (not shown) containing the association between the employee number and the identity (e.g., name and address of the employee) would have to be breached to match the identity of the user with that individual's biometric data. - With an individual registered in the identification server108 (i.e., with user-identifying information, an alias, and authentication information obtained and stored in the identification database module 124), a
process 200 as shown in FIG. 2 may be used to authenticate a user to one or more applications without the user having to provide authentication information for the application(s) each time the user requests access. Theuser 102 of theclient 104 logs into the identification server 108 (step 202) by providing one or more of a password, user identification code, biometric data, or the like. Theidentification server 108 authenticates the user (step 204) and retrieves the user profile 134 associated with theuser 102 from the identification database module 124 (step 206). Theidentification server 108 sends the user profile 134 to the client 104 (step 208) for future use by theactive agent 132. - In one version of the above-described embodiment, the user profile134 remains on the
client 104 after theuser 102 terminates each session. In this case, the user profile 134 that is sent from theidentification server 108 automatically overwrites the user profile 134 from the previous session. More preferably, however, the user profile 134 is deleted upon termination of each session for security purposes. In either case, once the update data arrives from theidentification server 108 and is stored in the user profile 143 on theclient 104, theactive agent 132 uses the data contained in the user profile 134 to automatically register theuser 102 with theapplication 114 without the user needing to perform any authentication procedures. - The access to a service (e.g., execution of an application program, access to a financial or medical database, access to an electronic vault with which the user is associated, download of data and/or application program and the like) is provided by the
application server 106. As illustrated in the present embodiment, the user of an application requests access to the application by navigating to a login page or to an access screen for the application (step 210). Theactive agent 132 recognizes the user action as a request to access an application and determines if the application is a restricted access application (decision step 212). If theactive agent 132 determines that, based on the data stored user profile 134 and described in detail above, the application is not restricted, access is granted (step 214). - Alternatively, if the
active agent 132 determines that the requested application is a restricted-access application, theactive agent 132 traps the login or access screen (step 216). The login or access screen may be trapped by, for example, querying an operating system message queue, initiating random screen captures, attaching an object to an Internet browser to intercept HTTP messages, connecting to a terminal emulator using the HLLAPI protocol, or recognition of HTTP addresses, among other methods. In conjunction with trapping the login screen, theactive agent 132 queries the user profile 134 to determine the authentication modality used to gain access to the application (step 118). Theactive agent 132 further determines whether theuser 102 has previously accessed the application being requested (decision step 220). If in one instance, theuser 102 has previously accessed the application being requested, theactive agent 132 obtains the application credentials (step 222) from the user profile 134, completes the login form or access screen, and transmits (step 234) the credentials to theapplication server 106. Theapplication server 106 may then grant the user access to the application (step 214). - For example, in the case of a web application, the
active agent 132 may recognize, based on an entry in the user profile 134, an HTTP address entered by the user into the location field of a client-resident Internet browser application. If, for example, the resulting web page includes form fields requiring user authentication, theactive agent 132 queries the user profile 134 for the data records corresponding to that address, which include the data necessary to complete the form. Recognizing the data as corresponding to the requested web page, theactive agent 132 automatically completes the form and sends the data to theapplication server 106. Thus, the user gains access to the application without having to enter her authentication information and can perform the desired functions within the application. - Alternatively, for network-based applications accessed via
application server 106, theactive agent 132 monitors the operating system message queue, recognizing messages corresponding to the requested application (based on entries in the user profile 134) and taking appropriate action (also as specified entries in the user profile 134), e.g., logging the user in or, as described below, enforcing restrictions. - In another instance of the current example, a
user 102 may be requesting access to an application for the first time. In such a case, theidentification server 108 may not have the correct authentication credentials for theuser 102, and therefore theactive agent 132 will not be able to complete the login screen. Therefore, theuser 102 manually enters her authentication credentials (step 224) using one ormore input devices 126. Using one or more of the methods described above, theactive agent 132 captures the authentication credentials (step 226), and if the login is successful, sends the information to theidentification server 108. Theidentification server 108 receives the authentication credentials for the newly requested application (step 228), and sends them to theidentification database module 124. Theidentification server 108 then updates the user profile (step 230) in theidentification database module 124, and sends the updated user profile 134 back to theclient 104. Theactive agent 132 then obtains the application credentials (step 222) from the updated user profile 134, completes the login form or access screen, and transmits (step 234) the credentials to theapplication server 106. Theapplication server 106 may then grant the user access to the application (step 214). - In some circumstances, the login process may not be successful. This may be due to a user manually changing his application password, a password expiring, an administrator resetting the password, or other application-specific event. In such cases, the
active agent 132 recognizes the screens or messages representing an unsuccessful login sent from theapplication server 106 to theclient 104. Theapplication 106 can then send screens to theclient 104 instructing theuser 102 to reset his password, PIN, or other authentication data. Theactive agent 132 captures the reset process, updates the user profile 134 with the new data, and sends the new password to theidentification server 108 where it is stored in thedatabase module 124. Theidentification server 108 can then send the user profile 134 back to theclient 104 for use during the current and/or future sessions. In some versions, theactive agent 132 can also automatically generate a random password for theuser 102 such that theuser 102 is unaware of the password-reset process. - With an individual registered in the identification server108 (i.e., with useridentifying information, an alias, and authentication information obtained and stored), a
process 300 as shown in FIG. 3 may be used to automatically withdraw a user's access rights to an application and to define events that require a user to be re-authenticated. Prior to auser 102 being logged into theidentification server 108, an administrator may define trigger events (step 302) which, when recognized by theactive agent 132, may terminate access, or require re-authentication, to theidentification server 108. A trigger event can be a particular function or screen accessed by a user, a broken communications link, inactivity of the user, a signal from the server sent on a periodic or random basis, expiration of an application password, or the like. Furthermore, trigger events can be set globally for all users and all applications, for individual users across all registered applications, for particular applications, for certain modules within applications, or for entries in selected fields on particular screens. The trigger events can be stored in theidentification database module 124 as part of a user profile 134. When auser 102 logs into the identification server 108 (step 304), his authentication credentials are authenticated (step 306) by theidentification server 108. Theidentification server 108 queries theidentification database module 124 and gathers the data necessary to construct the user profile (step 308). Theactive agent 132 residing on the client obtains the user profile data from theidentification server 108 and stores the user profile on the client 104 (step 310). - Continuing with the example above, a
user 102 requests access (step 312) to anapplication server 106. Theactive agent 132 retrieves the authentication credentials (step 314) from the user profile 134 residing on theclient 104, and transmits the credentials to theapplication server 106. Theapplication server 106 receives the application credentials (step 316) from theclient 104, and grants theuser 102 access to the requested application (step 318). Once granted access to theapplication server 106, theuser 102 may execute functions (step 320) within the application based on the data stored in his user profile 134. - Data specifying restrictions is stored in the user profile134, and once again, the
active agent 132 constantly monitors the user's activities (by trapping screens, fields within a screen, etc.) and permits execution only of these actions consistent with the restrictions. - For example, a first user may be restricted to view only particular screens within an application, may only have read access to data on particular screens, may only be able to update a single field on a screen, or may be blocked from viewing certain web pages within a permitted web site. Conversely, a second user may have full administrative rights to an application, and/or may have rights to view any or all web pages within a particular web site. Therefore, the
active agent 132 may restrict the first user's actions based on the information in her user profile (preventing transmission of “save” commands in conjunction with read-only data or requests for disallowed web pages), while imposing no restrictions on the functions the second user may perform, or data she can enter and update. - In one particular version, the invention permits an administrator to revoke a user's access to one or
more applications 114 registered with theidentification server 108, even in the case where theuser 102 is currently logged into the application(s). Referring again to FIG. 3, theactive agent 132 may constantly monitor the ongoing user activity (step 320) for activities corresponding to entries in the user profile 134 currently residing on theclient 104. An administrator may then update one or more user profiles 134 (step 322) with instructions that the user's access rights are to be revoked. The updated user profile may then be sent (step 324) to theclient 104 for use by theactive agent 132 as it monitors ongoing user activity, overwriting the previous user profile 134. If theactive agent 132 receives notice the user's access rights have been revoked (decision step 328), the active agent traps the user activity and terminates access (step 326) to the identified application(s) 106. - A
user 102 may also be required to re-authenticate himself to theidentification server 108 based on one or more trigger events. A re-authentication trigger event may be, for purposes of illustration, a particular function initiated by a user or an administrator, a broken communication link, a screen or web page requested by a user, inactivity of the user, passage of some period of time, revocation of access rights, the execution of a particular sequence of functions, elapsed time within an application, the receipt of web content, or a signal from the server sent on a periodic or random basis. The trigger events can be stored in theidentification database module 124 as part of a user profile 134, and are sent to theclient 104 when auser 102 logs into theidentification server 108. As theuser 102 performs ongoing activities within applications, theactive agent 132 can determine if the user's access privileges have been revoked (decision step 328). If a user's access privileges have not been revoked, theactive agent 132 can then determine if a re-authentication trigger event has occurred (decision step 330). If, in one case, no re-authentication trigger event has occurred, theuser 102 may continue to use the application(s) 106 without interruption. If, however, a re-authentication trigger event has occurred, the user activity can be interrupted and the user may be presented with a login screen (step 304) for theidentification server 108. - FIG. 4 illustrates the filtering of user requests and data to be presented to a
user 102. As discussed above, the user of an application requests access to the application by navigating to a login page for the identification server (step 402). Theidentification server 108 authenticates the user 102 (step 404), retrieves the user profile 134 for the user (step 406) from theidentification database module 124, and sends the user profile 134 to theclient 104, where it is obtained (step 408) and stored by theactive agent 132. Auser 102 may now request access (step 410) to one ormore applications 106 via theidentification server 108, according the process described above and illustrated in FIG. 2. - Additionally, the user profile134 preferably contains a list of conditions, triggers and actions for the
user 102. A condition may correspond to a setting of a particular data field (e.g., “Name=Smith”), content contained in a screen (i.e., keywords), a particular screen being displayed (identified, for example, by its Uniform Resource Locator), a particular sequence of screens being displayed, etc. A trigger is associated with a set of conditions and is activated when the set or a subset of the conditions are satisfied. For example, one trigger may be activated when three specific conditions are met; another trigger may be activated when any four of seven specific conditions are met; another trigger may be activated when some particular combination of conditions are satisfied. A single action or multiple actions may be performed when a trigger is activated. A non-exhaustive list of example actions includes the blocking of a requests; the greying out of data; reporting activity to an administrator; locking a user out of an application; toggling a flag variable to satisfy a condition; etc. - Once access is granted to an
application 114, auser 102 may make a request for information (step 412) from theapplication 114 residing on theapplication server 106. In one embodiment of the invention, the user's requests are monitored by theactive agent 132 and compared (decision step 414) to the content restriction information stored in the user profile 134. The basis for comparison may be data fields queried (e.g., “salary information”), data contained in the query (e.g., “information pertaining to John Doe”), URLs requested, type of report requested, etc. These bases of comparison preferably correspond to conditions found in the user profile 134. If the request falls in a restricted class for theuser 102, then an action is performed in accordance with the user profile 134. For example, the request may be blocked by theactive agent 132 and a message displayed to the user 102 (step 416). Alternatively, if only a portion of the request is in a restricted class for theuser 102, then a portion of the request may be permitted. In one version, theactive agent 132 may note the restricted request and report it to an administrator. If the request is permissible for theuser 102, then no action need be taken and theactive agent 132 allows theclient 104 to send the request to theapplication server 106. - If the
active agent 132 allows a user's request to be sent to theapplication server 106, then theapplication 114 performs the requested function and returns the data to the user's client machine 104 (step 418). Theactive agent 132 may compare the returned data against the content restriction information in the user's profile 134 (decision step 420). The basis for comparison may be data fields of the reply (e.g., “salary information”), data contained in the reply (e.g., all instances of “John Doe”), particular screens of data (identified, for example, by Uniform Resource Locators or header information), particular sequences of screens of data, etc. These bases of comparison preferably correspond to conditions found in the user profile 134. For example, if the reply contains data organized in data fields of “Employee,” “Hiring Date,” and “Salary”, the user profile 134 may indicate theuser 102 is not permitted to view any salary information (e.g., the user profile condition indicates “Data Field=Salary”), or any information relating to John Doe (e.g., “Employee=John Doe”), or any salaries for particular employees, or any salaries over $100,000. As another example, if the reply contains data not identified by data fields, such as in a plain HTML page or an emulated mainframe terminal screen, then the user profile 134 may contain particular keywords, which theactive agent 132 may search for while performing thecomparison step 420. Additionally, if the reply contains data identifiable by location on screen, such as an emulated mainframe terminal screen where a particular type of information is always displayed on the same portion of the screen, then theactive agent 132 may filter content based on those screen locations. - If the returned data contains restricted content for the user102 (i.e., sufficient profile conditions are satisfied that a trigger is activated), then the
active agent 132 performs an action as specified by the user profile 134, preferably blocking the data while displaying a message to the user 102 (step 422). In one version, only the restricted data is blocked from the user's view, by way of “xing out” or “greying out” the restricted data on the user's screen. In another version, theclient 104 displays no data to theuser 102, but instead theuser 102 receives a message that the reply to his request contains restricted data. In another version, theactive agent 132 may note the restricted data and report it to an administrator. If the data contains only permissible content for theuser 102, then theactive agent 132 allows the data to be displayed on theclient machine 104 to the user 102 (step 424). In another version, particular menu items or buttons in an application may be disabled for theuser 102 so that the functions corresponding to those menus items and buttons (for example, the ability to cut and paste text) cannot be activated. - Thus, the
active agent 132 may be configured to filter content by monitoring user requests transmitted from the client, data received by the client, or both. The restrictions may be negative (specifying material the user is prohibited from accessing), positive (specifying material the user is permitted to access), or a combination. - In the embodiments of the invention described above, the software may be configured to run on any computer or workstation such as a PC or PC-compatible machine, an Apple Macintosh, a Sun workstation, etc. In general, any device can be used as long as it is able to perform all of the functions and capabilities described herein. The particular type of computer or workstation is not central to the invention.
- The
identification server 108 may include a network interface continuously connected to thenetwork 110. In a typical implementation, the network interface and the other internal components of theidentification server 108 intercommunicate over a main bidirectional bus. The main sequence of instructions effectuating the functions of the invention and facilitating interaction amongclients 104,servers network 110 can reside on a mass storage device (such as a hard disk or optical storage unit) as well as in a main system memory during operation. Execution of these instructions and effectuation of the functions of the invention is accomplished by a central-processing unit (“CPU”). - A group of functional modules that control the operation of CPU and effectuate the operations of the invention as described above can be located in system memory. An operating system directs the execution of low-level, basic system functions such as memory allocation, file management, and operation of mass storage devices. At a higher level, a control block implemented as a series of stored instructions, responds to client-originated queries by selecting and/or assembling, and then transmitting, appropriate data.
- Equivalents
- The invention can be embodied in other specific forms without departing from the spirit or essential characteristics thereof. The foregoing embodiments are therefore to be considered in all respects illustrative rather than limiting on the invention described herein. Scope of the invention is thus indicated by the appended claims rather than by the foregoing description, and all changes which come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein.
Claims (19)
1. A method of controlling access to data provided to a client computer operated by a user, the method comprising the steps of:
a. identifying the user;
b. supplying, to the client computer, data-restriction information based on the user's identity; and
c. on the client computer, limiting user access to external-data in accordance with the data-restriction information.
2. The method of claim 1 wherein the data-restriction information is stored on a server in communication with the client computer over a network.
3. The method of claim 1 wherein the data-restriction information specifies web pages the user is permitted to request.
4. The method of claim 1 wherein the data-restriction information specifies web pages the user is prohibited from requesting.
5. The method of claim 1 wherein the data-restriction information limits application screens the user is permitted to view.
6. The method of claim 1 wherein the data-restriction information limits data on a screen a user is permitted to view.
7. The method of claim 2 further comprising the step of authenticating the user by:
a. storing, on the server, a user profile comprising the data-restriction information and a reference set of biometric data identifying the user;
b. receiving, at the client computer, biometric data from the user;
c. transmitting the received biometric data from the client computer to the server over the network; and
d. if the received biometric data sufficiently matches the reference biometric data, confirming the identity of the user and transmitting the data-restriction information to the client computer.
8. The method of claim 1 wherein external data is monitored as it is received by the client computer, and access is limited in accordance with the data-restriction information.
9. The method of claim 1 wherein user requests for external data are monitored on the client computer and access is limited by restricting the user requests in accordance with the data-restriction information.
10. A system for controlling access by a user operating a client computer to data provided to the client, the system comprising:
a. an identification server connected to a computer network for storing data-restriction information in connection with a plurality of server-based applications;
b. a server module for transmitting the data-restriction information from the identification server; and
c. an active agent residing on the client computer for limiting the user's access to external data in accordance with the data-restriction information.
11. The system of claim 10 wherein the data-restriction information specifies web pages the user is permitted to request.
12. The system of claim 10 wherein the data-restriction information specifies web pages the user is prohibited from requesting.
13. The system of claim 10 wherein the data-restriction information limits application screens the user is permitted to view.
14. The system of claim 10 wherein the data-restriction information limits data on a screen a user is permitted to view.
15. The system of claim 10 further comprising;
a. a biometric input device for receiving, at the client computer, biometric data from the user;
b. a communications module for transmitting the received biometric data from the client computer to the identification server over the computer network.
c. an authentication server for comparing the received biometric data to reference biometric data.
16. The system of claim 10 wherein the active agent monitors external data as the external data is received by the client computer, and limits access to the data in accordance with the data-restriction information.
17. The system of claim 10 wherein the active agent monitors user requests for external data on the client computer and limits access by restricting the user requests in accordance with the data-restriction information.
18. A system, operable on a user's client computer connected to a computer network, for controlling access to content provided to the user, the system comprising:
a. means for identifying the user;
b. means for receiving content-restriction information based on the user's identity; and
c. means for operating the client computer to limit the user's access to external data in accordance with the content-restriction information.
19. The system of claim 18 wherein the client computer includes an operating system and a plurality of application programs executing as running processes, the limiting means being logically distinct from the operating system and the application programs, and enforcing content restrictions across all applications.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/395,049 US20040187029A1 (en) | 2003-03-21 | 2003-03-21 | System and method for data and request filtering |
US13/033,132 US8839456B2 (en) | 2003-03-21 | 2011-02-23 | System and method for data and request filtering |
US14/457,382 US10505930B2 (en) | 2003-03-21 | 2014-08-12 | System and method for data and request filtering |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/395,049 US20040187029A1 (en) | 2003-03-21 | 2003-03-21 | System and method for data and request filtering |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/033,132 Continuation US8839456B2 (en) | 2003-03-21 | 2011-02-23 | System and method for data and request filtering |
Publications (1)
Publication Number | Publication Date |
---|---|
US20040187029A1 true US20040187029A1 (en) | 2004-09-23 |
Family
ID=32988534
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/395,049 Abandoned US20040187029A1 (en) | 2003-03-21 | 2003-03-21 | System and method for data and request filtering |
US13/033,132 Expired - Lifetime US8839456B2 (en) | 2003-03-21 | 2011-02-23 | System and method for data and request filtering |
US14/457,382 Expired - Lifetime US10505930B2 (en) | 2003-03-21 | 2014-08-12 | System and method for data and request filtering |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/033,132 Expired - Lifetime US8839456B2 (en) | 2003-03-21 | 2011-02-23 | System and method for data and request filtering |
US14/457,382 Expired - Lifetime US10505930B2 (en) | 2003-03-21 | 2014-08-12 | System and method for data and request filtering |
Country Status (1)
Country | Link |
---|---|
US (3) | US20040187029A1 (en) |
Cited By (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050039025A1 (en) * | 2003-07-22 | 2005-02-17 | Alexander Main | Software conditional access system |
US20050091384A1 (en) * | 2003-10-23 | 2005-04-28 | International Business Machines Corporation | Administering devices including allowed action lists |
US20060031942A1 (en) * | 2004-08-07 | 2006-02-09 | Jones Kevin B | Device internet resource access filtering system and method |
US20070006284A1 (en) * | 2005-06-29 | 2007-01-04 | Research In Motion Limited | System and method for privilege management and revocation |
US20070150956A1 (en) * | 2005-12-28 | 2007-06-28 | Sharma Rajesh K | Real time lockdown |
US20070283164A1 (en) * | 2006-05-31 | 2007-12-06 | Minoru Nishizawa | Authentication system, consolidation apparatus and program |
US20080165391A1 (en) * | 2007-01-08 | 2008-07-10 | Weidong Chen | Methods and apparatuses for selectively accessing an application |
US20080271117A1 (en) * | 2007-04-27 | 2008-10-30 | Hamilton Rick A | Cascading Authentication System |
US20080320581A1 (en) * | 2007-06-21 | 2008-12-25 | Hamilton Ii Rick A | Systems, methods, and media for firewall control via process interrogation |
US20080320584A1 (en) * | 2007-06-21 | 2008-12-25 | Hamilton Ii Rick A | Firewall control system |
US20080320580A1 (en) * | 2007-06-19 | 2008-12-25 | International Business Machines Corporation | Systems, methods, and media for firewall control via remote system information |
US20090241187A1 (en) * | 2008-03-19 | 2009-09-24 | Websense, Inc. | Method and system for protection against information stealing software |
US20090241197A1 (en) * | 2008-03-19 | 2009-09-24 | Websense, Inc. | System and method for analysis of electronic information dissemination events |
US20100024023A1 (en) * | 2008-07-28 | 2010-01-28 | International Business Machines Corporation | Reactive Biometric Single Sign-on Utility |
US20100122340A1 (en) * | 2008-11-13 | 2010-05-13 | Palo Alto Research Center Incorporated | Enterprise password reset |
US20100180120A1 (en) * | 2007-09-06 | 2010-07-15 | Human Interface Security Ltd | Information protection device |
US20100215270A1 (en) * | 2009-02-26 | 2010-08-26 | Pradheesh Manohar | System and Methods for Automatically Accessing a Web Site on Behalf of a Client |
US20110265169A1 (en) * | 2008-12-30 | 2011-10-27 | Nokia Siemens Networks Oy | User-dependent content delivery |
US8150817B2 (en) | 2003-03-14 | 2012-04-03 | Websense, Inc. | System and method of monitoring and controlling application files |
US8244761B1 (en) | 2007-10-18 | 2012-08-14 | United Services Automobile Association (Usaa) | Systems and methods for restricting access to internal data of an organization by external entity |
US8250081B2 (en) | 2007-01-22 | 2012-08-21 | Websense U.K. Limited | Resource access filtering system and database structure for use therewith |
US20130227352A1 (en) * | 2012-02-24 | 2013-08-29 | Commvault Systems, Inc. | Log monitoring |
GB2503070A (en) * | 2012-03-23 | 2013-12-18 | Saasid Ltd | Dynamic rendering of a Document Object Model (DOM) |
CN103646203A (en) * | 2013-12-20 | 2014-03-19 | 中晟国计科技有限公司 | Computer safety system with human body biological characteristic recognition |
US8683562B2 (en) | 2011-02-03 | 2014-03-25 | Imprivata, Inc. | Secure authentication using one-time passwords |
US8701194B2 (en) | 2003-03-14 | 2014-04-15 | Websense, Inc. | System and method of monitoring and controlling application files |
CN103765845A (en) * | 2011-07-01 | 2014-04-30 | 惠普发展公司,有限责任合伙企业 | Providing access to information |
US8819814B1 (en) * | 2007-04-13 | 2014-08-26 | United Services Automobile Association (Usaa) | Secure access infrastructure |
US20140283120A1 (en) * | 2013-03-13 | 2014-09-18 | Comcast Cable Communications, Llc | Methods And Systems For Managing Data Assets |
US8938773B2 (en) | 2007-02-02 | 2015-01-20 | Websense, Inc. | System and method for adding context to prevent data leakage over a computer network |
US9015842B2 (en) | 2008-03-19 | 2015-04-21 | Websense, Inc. | Method and system for protection against information stealing software |
US20150113603A1 (en) * | 2003-03-21 | 2015-04-23 | David M. T. Ting | System and method for data and request filtering |
US9043890B1 (en) * | 2013-05-30 | 2015-05-26 | Emc Corporation | Distributed authentication against stored user identifiers and user templates via pseudonym association |
CN104753755A (en) * | 2013-12-26 | 2015-07-01 | 广州华多网络科技有限公司 | System access method, system access device, application client, and IM background system |
US9130972B2 (en) | 2009-05-26 | 2015-09-08 | Websense, Inc. | Systems and methods for efficient detection of fingerprinted data and information |
US9130986B2 (en) | 2008-03-19 | 2015-09-08 | Websense, Inc. | Method and system for protection against information stealing software |
US9241259B2 (en) | 2012-11-30 | 2016-01-19 | Websense, Inc. | Method and apparatus for managing the transfer of sensitive information to mobile devices |
US20160085959A1 (en) * | 2014-09-22 | 2016-03-24 | Intel Corporation | Prevention of cable-swap security attack on storage devices |
US9378282B2 (en) | 2008-06-30 | 2016-06-28 | Raytheon Company | System and method for dynamic and real-time categorization of webpages |
US9418218B2 (en) * | 2012-03-23 | 2016-08-16 | Intermedia.Net, Inc. | Dynamic rendering of a document object model |
US20160381002A1 (en) * | 2012-10-01 | 2016-12-29 | Salesforce.Com, Inc. | Securedinter-application communication in mobile devices |
US20170010759A1 (en) * | 2015-07-10 | 2017-01-12 | Sugarcrm Inc. | Smart user feedback |
US9558341B1 (en) * | 2004-10-07 | 2017-01-31 | Sprint Communications Company L.P. | Integrated user profile administration tool |
US20170111351A1 (en) * | 2012-09-19 | 2017-04-20 | Secureauth Corporation | Mobile multifactor single-sign-on authentication |
US20180068118A1 (en) * | 2012-03-30 | 2018-03-08 | Irdeto B.V. | Method and system for preventing and detecting security threats |
US9934265B2 (en) | 2015-04-09 | 2018-04-03 | Commvault Systems, Inc. | Management of log data |
US11100064B2 (en) | 2019-04-30 | 2021-08-24 | Commvault Systems, Inc. | Automated log-based remediation of an information management system |
US11265307B2 (en) * | 2015-06-02 | 2022-03-01 | ALTR Solutions, Inc. | Credential-free user login to remotely executed applications |
US20220232007A1 (en) * | 2019-06-19 | 2022-07-21 | Elta Systems Ltd. | Methods and systems for trusted web authentication |
US11574050B2 (en) | 2021-03-12 | 2023-02-07 | Commvault Systems, Inc. | Media agent hardening against ransomware attacks |
US12093386B2 (en) | 2017-09-14 | 2024-09-17 | Commvault Systems, Inc. | Ransomware detection and data pruning management |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9756004B2 (en) * | 2007-11-08 | 2017-09-05 | Skype | Message delivery system and method |
US8645550B2 (en) | 2010-02-18 | 2014-02-04 | Microsoft Corporation | Database virtualization |
US9077832B2 (en) * | 2011-09-30 | 2015-07-07 | Hewlett-Packard Development Company, L.P. | Content retrieval via assignments |
US9875066B2 (en) * | 2012-04-25 | 2018-01-23 | Hewlett-Packard Development Company, L. P. | Single action print application creation |
US20140283125A1 (en) * | 2013-03-15 | 2014-09-18 | Ground Six Spaceworks | Facial recognition-based information discovery |
CN103607374A (en) * | 2013-10-28 | 2014-02-26 | 中国航天科工集团第二研究院七〇六所 | Network-resource-access control method based on identity authentication and data-packet filtering technology |
US9922197B2 (en) * | 2014-01-15 | 2018-03-20 | Microsoft Technology Licensing, Llc | Privacy-based degradation of activity signals and automatic activation of privacy modes |
US10523622B2 (en) * | 2014-05-21 | 2019-12-31 | Match Group, Llc | System and method for user communication in a network |
US10375059B1 (en) | 2015-04-23 | 2019-08-06 | Study Social, Inc. | Account sharing prevention in online education |
US10198595B2 (en) * | 2015-12-22 | 2019-02-05 | Walmart Apollo, Llc | Data breach detection system |
US10621370B2 (en) | 2016-05-27 | 2020-04-14 | Intel Corporation | Methods and apparatus to provide group-based row-level security for big data platforms |
CN106302516A (en) * | 2016-09-08 | 2017-01-04 | 努比亚技术有限公司 | A kind of user registering method and device |
RU2634182C1 (en) | 2016-12-12 | 2017-10-24 | Акционерное общество "Лаборатория Касперского" | Method of contradiction to unfair applications rates |
CN108632127B (en) * | 2017-03-15 | 2021-08-17 | 阿里巴巴集团控股有限公司 | Session screening method and device |
US9912676B1 (en) | 2017-06-30 | 2018-03-06 | Study Social, Inc. | Account sharing prevention and detection in online education |
US10956594B2 (en) * | 2018-05-22 | 2021-03-23 | Identity Theft Guard Solutions, Inc. | User interface for interacting with multiple databases |
US10942991B1 (en) * | 2018-06-22 | 2021-03-09 | Kiddofy, LLC | Access controls using trust relationships and simplified content curation |
US12069114B2 (en) * | 2020-04-24 | 2024-08-20 | Ringcentral, Inc. | Cloud-based communication system for autonomously providing collaborative communication events |
US11876803B1 (en) * | 2020-08-03 | 2024-01-16 | PubNub, Inc. | Methods and systems for authorizing a client device to a service |
US11743245B2 (en) * | 2020-10-22 | 2023-08-29 | Acuant, Inc. | Identity access management using access attempts and profile updates |
US20230032139A1 (en) * | 2021-07-30 | 2023-02-02 | RackTop Systems, Inc. | High speed trust evaluation for file activity |
Citations (64)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5544317A (en) * | 1990-11-20 | 1996-08-06 | Berg; David A. | Method for continuing transmission of commands for interactive graphics presentation in a computer network |
US5721914A (en) * | 1995-09-14 | 1998-02-24 | Mci Corporation | System and method for hierarchical data distribution |
US5721906A (en) * | 1994-03-24 | 1998-02-24 | Ncr Corporation | Multiple repositories of computer resources, transparent to user |
US5724575A (en) * | 1994-02-25 | 1998-03-03 | Actamed Corp. | Method and system for object-based relational distributed databases |
US5761662A (en) * | 1994-12-20 | 1998-06-02 | Sun Microsystems, Inc. | Personalized information retrieval using user-defined profile |
US5768577A (en) * | 1994-09-29 | 1998-06-16 | International Business Machines Corporation | Performance optimization in a heterogeneous, distributed database environment |
US5805892A (en) * | 1994-09-26 | 1998-09-08 | Nec Corporation | Method of and apparatus for debugging multitask programs |
US5841888A (en) * | 1996-01-23 | 1998-11-24 | Harris Corporation | Method for fingerprint indexing and searching |
US5857188A (en) * | 1996-04-29 | 1999-01-05 | Ncr Corporation | Management of client requests in a client-server environment |
US5857028A (en) * | 1996-01-11 | 1999-01-05 | Frieling; Edward | Computer access control by finger anatomy and comprehension testing |
US5892838A (en) * | 1996-06-11 | 1999-04-06 | Minnesota Mining And Manufacturing Company | Biometric recognition using a classification neural network |
US5930804A (en) * | 1997-06-09 | 1999-07-27 | Philips Electronics North America Corporation | Web-based biometric authentication system and method |
US5937405A (en) * | 1995-05-25 | 1999-08-10 | Punch Networks Corporation | On-line database updating network system and method |
US5963945A (en) * | 1997-06-05 | 1999-10-05 | Microsoft Corporation | Synchronization of a client and a server in a prefetching resource allocation system |
US5966705A (en) * | 1997-06-30 | 1999-10-12 | Microsoft Corporation | Tracking a user across both secure and non-secure areas on the Internet, wherein the users is initially tracked using a globally unique identifier |
US5977964A (en) * | 1996-06-06 | 1999-11-02 | Intel Corporation | Method and apparatus for automatically configuring a system based on a user's monitored system interaction and preferred system access times |
US5982913A (en) * | 1997-03-25 | 1999-11-09 | The United States Of America As Represented By The National Security Agency | Method of verification using a subset of claimant's fingerprint |
US5982914A (en) * | 1997-07-29 | 1999-11-09 | Smarttouch, Inc. | Identification of individuals from association of finger pores and macrofeatures |
US5999637A (en) * | 1995-09-28 | 1999-12-07 | Hamamatsu Photonics K.K. | Individual identification apparatus for selectively recording a reference pattern based on a correlation with comparative patterns |
US6016476A (en) * | 1997-08-11 | 2000-01-18 | International Business Machines Corporation | Portable information and transaction processing system and method utilizing biometric authorization and digital certificate security |
US6018739A (en) * | 1997-05-15 | 2000-01-25 | Raytheon Company | Biometric personnel identification system |
US6023723A (en) * | 1997-12-22 | 2000-02-08 | Accepted Marketing, Inc. | Method and system for filtering unwanted junk e-mail utilizing a plurality of filtering mechanisms |
US6041411A (en) * | 1997-03-28 | 2000-03-21 | Wyatt; Stuart Alan | Method for defining and verifying user access rights to a computer information |
US6047281A (en) * | 1997-12-05 | 2000-04-04 | Authentec, Inc. | Method and apparatus for expandable biometric searching |
US6047282A (en) * | 1997-12-05 | 2000-04-04 | Authentec, Inc. | Apparatus and method for expandable biometric searching |
US6052730A (en) * | 1997-01-10 | 2000-04-18 | The Board Of Trustees Of The Leland Stanford Junior University | Method for monitoring and/or modifying web browsing sessions |
US6061790A (en) * | 1996-11-20 | 2000-05-09 | Starfish Software, Inc. | Network computer system with remote user data encipher methodology |
US6070159A (en) * | 1997-12-05 | 2000-05-30 | Authentec, Inc. | Method and apparatus for expandable biometric searching |
US6076167A (en) * | 1996-12-04 | 2000-06-13 | Dew Engineering And Development Limited | Method and system for improving security in network applications |
US6144962A (en) * | 1996-10-15 | 2000-11-07 | Mercury Interactive Corporation | Visualization of web sites and hierarchical data structures |
US6148307A (en) * | 1994-04-05 | 2000-11-14 | Advanced Micro Devices, Inc. | Method and system for generating product performance history |
US6151602A (en) * | 1997-11-07 | 2000-11-21 | Inprise Corporation | Database system with methods providing a platform-independent self-describing data packet for transmitting information |
US6195954B1 (en) * | 1998-04-01 | 2001-03-06 | Scandanavia Home Co. Ltd. | Method of improving durability of a building, building, far-infrared radiation thermal storage floor heating system, and method of improving soil of building lot |
US20010000045A1 (en) * | 1998-12-09 | 2001-03-15 | Yuan-Pin Yu | Web-based, biometric authentication system and method |
US6212290B1 (en) * | 1989-11-02 | 2001-04-03 | Tms, Inc. | Non-minutiae automatic fingerprint identification system and methods |
US20010011349A1 (en) * | 1998-09-03 | 2001-08-02 | Greg B. Garrison | System and method for encrypting a data session between a client and a server |
US6289111B1 (en) * | 1992-10-27 | 2001-09-11 | Jasper Consulting, Inc. | Modifying a database using an identification form |
US6292795B1 (en) * | 1998-05-30 | 2001-09-18 | International Business Machines Corporation | Indexed file system and a method and a mechanism for accessing data records from such a system |
US20010025342A1 (en) * | 2000-02-03 | 2001-09-27 | Kaoru Uchida | Biometric identification method and system |
US6301376B1 (en) * | 1997-05-07 | 2001-10-09 | Georgi H. Draganoff | Segmented sliding yardsticks error tolerant fingerprint enrollment and verification system and method |
US20010036299A1 (en) * | 1998-05-15 | 2001-11-01 | Andrew William Senior | Combined fingerprint acquisition and control device |
US20010049687A1 (en) * | 1999-12-23 | 2001-12-06 | Russell Larry L. | Information storage and retrieval device |
US6334124B1 (en) * | 1997-10-06 | 2001-12-25 | Ventro Corporation | Techniques for improving index searches in a client-server environment |
US6336114B1 (en) * | 1998-09-03 | 2002-01-01 | Westcorp Software Systems, Inc. | System and method for restricting access to a data table within a database |
US6338066B1 (en) * | 1998-09-25 | 2002-01-08 | International Business Machines Corporation | Surfaid predictor: web-based system for predicting surfer behavior |
US20020004839A1 (en) * | 2000-05-09 | 2002-01-10 | William Wine | Method of controlling the display of a browser during a transmission of a multimedia stream over an internet connection so as to create a synchronized convergence platform |
US20020010857A1 (en) * | 2000-06-29 | 2002-01-24 | Kaleedhass Karthik | Biometric verification for electronic transactions over the web |
US20020013785A1 (en) * | 2000-06-27 | 2002-01-31 | Jun Miyazaki | Internet advertisement system |
US20020016921A1 (en) * | 2000-01-28 | 2002-02-07 | Theis Olsen | System and method for ensuring secure transfer of a document from a client of a network to a printer |
US20020016853A1 (en) * | 2000-01-27 | 2002-02-07 | Bryan Ressler | Method and apparatus for transferring data between computing systems |
US20020024419A1 (en) * | 1997-04-16 | 2002-02-28 | Dunn Christopher S. | Method of detecting authorised biometric information sensor |
US6363421B2 (en) * | 1998-05-31 | 2002-03-26 | Lucent Technologies, Inc. | Method for computer internet remote management of a telecommunication network element |
US20020038426A1 (en) * | 2000-09-28 | 2002-03-28 | Marcus Pettersson | Method and a system for improving logon security in network applications |
US20020055912A1 (en) * | 2000-10-20 | 2002-05-09 | Byron Buck | Network and method for facilitating on-line privacy |
US20020056043A1 (en) * | 1999-01-18 | 2002-05-09 | Sensar, Inc. | Method and apparatus for securely transmitting and authenticating biometric data over a network |
US6393424B1 (en) * | 1999-12-29 | 2002-05-21 | Networks Associates, Inc. | Method and apparatus for using a static metadata object to reduce database accesses |
US20020062452A1 (en) * | 2000-08-18 | 2002-05-23 | Warwick Ford | Countering credentials copying |
US20020083192A1 (en) * | 2000-12-18 | 2002-06-27 | Cora Alisuag | Computer oriented record administration system |
US20020087869A1 (en) * | 2000-11-09 | 2002-07-04 | Jinsam Kim | System and method of authenticating a credit card using a fingerprint |
US20020133504A1 (en) * | 2000-10-27 | 2002-09-19 | Harry Vlahos | Integrating heterogeneous data and tools |
US6466941B1 (en) * | 1997-03-17 | 2002-10-15 | British Telecommunications Public Limited Company | Content management tool and service table database with unique service entries each associated with a set of record tables with record entries including links to shared record entries in other tables |
US20020161766A1 (en) * | 2001-04-26 | 2002-10-31 | Lawson Robert James | System and method for managing user profiles |
US6476833B1 (en) * | 1999-03-30 | 2002-11-05 | Koninklijke Philips Electronics N.V. | Method and apparatus for controlling browser functionality in the context of an application |
US20030051169A1 (en) * | 2001-08-13 | 2003-03-13 | Sprigg Stephen A. | Using permissions to allocate device resources to an application |
Family Cites Families (65)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5113499A (en) * | 1989-04-28 | 1992-05-12 | Sprint International Communications Corp. | Telecommunication access management system for a packet switching network |
JP2596361B2 (en) * | 1993-12-24 | 1997-04-02 | 日本電気株式会社 | Password update method |
US5423043A (en) * | 1994-01-21 | 1995-06-06 | International Business Machines Corporation | Method and apparatus for creating and monitoring logical associations among desktop objects |
US5555373A (en) * | 1995-02-06 | 1996-09-10 | International Business Machines Corporation | Inactivity monitor for trusted personal computer system |
US5898835A (en) * | 1996-08-16 | 1999-04-27 | Electronic Data Systems Corporation | System and method for remotely executing a command |
CZ289022B6 (en) | 1996-10-15 | 2001-10-17 | Swisscom Ag | Method for enabling a user of a system to obtain access to one or more services thereof |
US5996011A (en) * | 1997-03-25 | 1999-11-30 | Unified Research Laboratories, Inc. | System and method for filtering data received by a computer system |
US6778651B1 (en) * | 1997-04-03 | 2004-08-17 | Southwestern Bell Telephone Company | Apparatus and method for facilitating service management of communications services in a communications network |
US7290288B2 (en) * | 1997-06-11 | 2007-10-30 | Prism Technologies, L.L.C. | Method and system for controlling access, by an authentication server, to protected computer resources provided via an internet protocol network |
US6192361B1 (en) * | 1997-12-23 | 2001-02-20 | Alcatel Usa Sourcing, L.P. | Full group privileges access system providing user access security protection for a telecommunications switching system |
US6948183B1 (en) * | 1998-06-18 | 2005-09-20 | General Instrument Corporation | Dynamic security for digital television receivers |
US6157953A (en) * | 1998-07-28 | 2000-12-05 | Sun Microsystems, Inc. | Authentication and access control in a management console program for managing services in a computer network |
US6205480B1 (en) * | 1998-08-19 | 2001-03-20 | Computer Associates Think, Inc. | System and method for web server user authentication |
FI106281B (en) * | 1998-08-25 | 2000-12-29 | Nokia Networks Oy | Method and system for password validation |
US6341352B1 (en) * | 1998-10-15 | 2002-01-22 | International Business Machines Corporation | Method for changing a security policy during processing of a transaction request |
US20020059369A1 (en) * | 1998-12-08 | 2002-05-16 | Christoph Kern | Method and apparatus for creating and distributing non-sensitized information summaries to users |
US6286001B1 (en) * | 1999-02-24 | 2001-09-04 | Doodlebug Online, Inc. | System and method for authorizing access to data on content servers in a distributed network |
US6496511B1 (en) * | 1999-05-21 | 2002-12-17 | 3Com Corporation | Method for preserving preassigned IP addresses in a remote access server |
US6546133B1 (en) * | 1999-09-08 | 2003-04-08 | Ge Capital Commercial Finance, Inc. | Methods and apparatus for print scraping |
US6745367B1 (en) * | 1999-09-27 | 2004-06-01 | International Business Machines Corporation | Method and computer program product for implementing parental supervision for internet browsing |
GB9923802D0 (en) | 1999-10-08 | 1999-12-08 | Hewlett Packard Co | User authentication |
US7779439B2 (en) * | 2001-04-23 | 2010-08-17 | Starz Entertainment, Llc | Program guide environment |
US6671818B1 (en) * | 1999-11-22 | 2003-12-30 | Accenture Llp | Problem isolation through translating and filtering events into a standard object format in a network based supply chain |
US6763465B1 (en) * | 1999-11-23 | 2004-07-13 | International Business Machines Corporation | Method of ensuring that the PC is not used to make unauthorized and surreptitious telephone calls |
US20010037407A1 (en) * | 2000-03-23 | 2001-11-01 | Zvetan Dragulev | System and method for managing user-specific data |
IL146762A0 (en) * | 2000-03-27 | 2002-07-25 | Network Security Systems Inc | Internet/network security method and system for checking security of a client from a remote facility |
US20020026605A1 (en) * | 2000-04-06 | 2002-02-28 | Terry Robert F. | System and method for real time monitoring and control of a computer machine environment and configuration profile |
US7150038B1 (en) * | 2000-04-06 | 2006-12-12 | Oracle International Corp. | Facilitating single sign-on by using authenticated code to access a password store |
US6658231B2 (en) * | 2000-05-09 | 2003-12-02 | Sony Corporation | Receiver for user-demand information and entertainment system using wide area digital broadcast |
US20060129691A1 (en) * | 2000-09-11 | 2006-06-15 | Grid Data, Inc. | Location aware wireless data gateway |
US7231044B2 (en) * | 2000-10-11 | 2007-06-12 | Digital Authentication Technologies, Inc. | Method and apparatus for real-time digital certification of electronic files and transactions using entropy factors |
JP2002132819A (en) * | 2000-10-26 | 2002-05-10 | Seiko Epson Corp | Information providing system, output terminal, portable terminal, and storage medium |
US7493368B2 (en) * | 2000-12-01 | 2009-02-17 | Sony Corporation | System and method for effectively providing user information from a user device |
US7260838B2 (en) * | 2000-12-18 | 2007-08-21 | International Business Machines Corporation | Incorporating password change policy into a single sign-on environment |
US6675261B2 (en) * | 2000-12-22 | 2004-01-06 | Oblix, Inc. | Request based caching of data store data |
JP2002215582A (en) * | 2000-12-28 | 2002-08-02 | Morgan Stanley Dean Witter Japan Ltd | Method and device for authentication |
US8185938B2 (en) * | 2001-03-29 | 2012-05-22 | International Business Machines Corporation | Method and system for network single-sign-on using a public key certificate and an associated attribute certificate |
GB2374688B (en) * | 2001-04-19 | 2004-12-29 | Ibm | A method and system for distributing software features to a computer |
US7418737B2 (en) * | 2001-06-13 | 2008-08-26 | Mcafee, Inc. | Encrypted data file transmission |
US20050198379A1 (en) * | 2001-06-13 | 2005-09-08 | Citrix Systems, Inc. | Automatically reconnecting a client across reliable and persistent communication sessions |
US7290266B2 (en) * | 2001-06-14 | 2007-10-30 | Cisco Technology, Inc. | Access control by a real-time stateful reference monitor with a state collection training mode and a lockdown mode for detecting predetermined patterns of events indicative of requests for operating system resources resulting in a decision to allow or block activity identified in a sequence of events based on a rule set defining a processing policy |
US20040107360A1 (en) * | 2002-12-02 | 2004-06-03 | Zone Labs, Inc. | System and Methodology for Policy Enforcement |
US6767212B2 (en) * | 2001-07-09 | 2004-07-27 | Glenn Roy Thomas | Network-assisted behavior management system |
US7275260B2 (en) * | 2001-10-29 | 2007-09-25 | Sun Microsystems, Inc. | Enhanced privacy protection in identification in a data communications network |
CA2411294C (en) * | 2001-11-06 | 2011-01-04 | Everyware Solutions Inc. | A method and system for access to automatically synchronized remote files |
US7100197B2 (en) * | 2001-12-10 | 2006-08-29 | Electronic Data Systems Corporation | Network user authentication system and method |
US7350226B2 (en) * | 2001-12-13 | 2008-03-25 | Bea Systems, Inc. | System and method for analyzing security policies in a distributed computer network |
US7426534B2 (en) * | 2001-12-19 | 2008-09-16 | International Business Machines Corporation | Method and system for caching message fragments using an expansion attribute in a fragment link tag |
US7565687B2 (en) * | 2002-02-08 | 2009-07-21 | International Business Machines Corporation | Transmission control system, server, terminal station, transmission control method, program and storage medium |
US7221764B2 (en) * | 2002-02-14 | 2007-05-22 | Agere Systems Inc. | Security key distribution using key rollover strategies for wireless networks |
US7149806B2 (en) * | 2002-02-27 | 2006-12-12 | Hewlett-Packard Development Company, L.P. | Data access in a distributed environment |
US6799163B2 (en) * | 2002-06-05 | 2004-09-28 | Vas International, Inc. | Biometric identification system |
US20050089027A1 (en) * | 2002-06-18 | 2005-04-28 | Colton John R. | Intelligent optical data switching system |
US7237024B2 (en) * | 2002-10-15 | 2007-06-26 | Aol Llc | Cross-site timed out authentication management |
US7533012B2 (en) * | 2002-12-13 | 2009-05-12 | Sun Microsystems, Inc. | Multi-user web simulator |
US20040187029A1 (en) * | 2003-03-21 | 2004-09-23 | Ting David M. T. | System and method for data and request filtering |
US20040249922A1 (en) * | 2003-03-31 | 2004-12-09 | Hackman Thomas J. | Home automation system security |
US8069267B2 (en) * | 2005-06-28 | 2011-11-29 | Microsoft Corporation | Advertisement refresh rules for network applications |
US8150816B2 (en) * | 2005-12-29 | 2012-04-03 | Nextlabs, Inc. | Techniques of optimizing policies in an information management system |
US7653732B1 (en) * | 2006-03-28 | 2010-01-26 | Emc Corporation | Providing session services with application connectors |
US8218165B2 (en) * | 2007-03-26 | 2012-07-10 | Ricoh Company, Ltd. | Interruption management method for an image forming apparatus |
WO2011039495A1 (en) * | 2009-09-30 | 2011-04-07 | British Telecommunications Public Limited Company | Method for re-configuring a communications device |
US8904473B2 (en) * | 2011-04-11 | 2014-12-02 | NSS Lab Works LLC | Secure display system for prevention of information copying from any display screen system |
US9361436B2 (en) * | 2012-09-05 | 2016-06-07 | Bank Of America Corporation | Multiple profile authentication |
US20140109186A1 (en) * | 2012-10-14 | 2014-04-17 | Artases OIKONOMIDIS | Website Access Parental Management |
-
2003
- 2003-03-21 US US10/395,049 patent/US20040187029A1/en not_active Abandoned
-
2011
- 2011-02-23 US US13/033,132 patent/US8839456B2/en not_active Expired - Lifetime
-
2014
- 2014-08-12 US US14/457,382 patent/US10505930B2/en not_active Expired - Lifetime
Patent Citations (68)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6212290B1 (en) * | 1989-11-02 | 2001-04-03 | Tms, Inc. | Non-minutiae automatic fingerprint identification system and methods |
US5544317A (en) * | 1990-11-20 | 1996-08-06 | Berg; David A. | Method for continuing transmission of commands for interactive graphics presentation in a computer network |
US6289111B1 (en) * | 1992-10-27 | 2001-09-11 | Jasper Consulting, Inc. | Modifying a database using an identification form |
US5724575A (en) * | 1994-02-25 | 1998-03-03 | Actamed Corp. | Method and system for object-based relational distributed databases |
US5721906A (en) * | 1994-03-24 | 1998-02-24 | Ncr Corporation | Multiple repositories of computer resources, transparent to user |
US6148307A (en) * | 1994-04-05 | 2000-11-14 | Advanced Micro Devices, Inc. | Method and system for generating product performance history |
US5805892A (en) * | 1994-09-26 | 1998-09-08 | Nec Corporation | Method of and apparatus for debugging multitask programs |
US5768577A (en) * | 1994-09-29 | 1998-06-16 | International Business Machines Corporation | Performance optimization in a heterogeneous, distributed database environment |
US5761662A (en) * | 1994-12-20 | 1998-06-02 | Sun Microsystems, Inc. | Personalized information retrieval using user-defined profile |
US5937405A (en) * | 1995-05-25 | 1999-08-10 | Punch Networks Corporation | On-line database updating network system and method |
US5721914A (en) * | 1995-09-14 | 1998-02-24 | Mci Corporation | System and method for hierarchical data distribution |
US5999637A (en) * | 1995-09-28 | 1999-12-07 | Hamamatsu Photonics K.K. | Individual identification apparatus for selectively recording a reference pattern based on a correlation with comparative patterns |
US5857028A (en) * | 1996-01-11 | 1999-01-05 | Frieling; Edward | Computer access control by finger anatomy and comprehension testing |
US6021211A (en) * | 1996-01-23 | 2000-02-01 | Authentec, Inc. | Method and related apparatus for fingerprint indexing and searching |
US5841888A (en) * | 1996-01-23 | 1998-11-24 | Harris Corporation | Method for fingerprint indexing and searching |
US6181807B1 (en) * | 1996-01-23 | 2001-01-30 | Authentec, Inc. | Methods and related apparatus for fingerprint indexing and searching |
US5857188A (en) * | 1996-04-29 | 1999-01-05 | Ncr Corporation | Management of client requests in a client-server environment |
US5977964A (en) * | 1996-06-06 | 1999-11-02 | Intel Corporation | Method and apparatus for automatically configuring a system based on a user's monitored system interaction and preferred system access times |
US5892838A (en) * | 1996-06-11 | 1999-04-06 | Minnesota Mining And Manufacturing Company | Biometric recognition using a classification neural network |
US6144962A (en) * | 1996-10-15 | 2000-11-07 | Mercury Interactive Corporation | Visualization of web sites and hierarchical data structures |
US6237006B1 (en) * | 1996-10-15 | 2001-05-22 | Mercury Interactive Corporation | Methods for graphically representing web sites and hierarchical node structures |
US6061790A (en) * | 1996-11-20 | 2000-05-09 | Starfish Software, Inc. | Network computer system with remote user data encipher methodology |
US6076167A (en) * | 1996-12-04 | 2000-06-13 | Dew Engineering And Development Limited | Method and system for improving security in network applications |
US6052730A (en) * | 1997-01-10 | 2000-04-18 | The Board Of Trustees Of The Leland Stanford Junior University | Method for monitoring and/or modifying web browsing sessions |
US6466941B1 (en) * | 1997-03-17 | 2002-10-15 | British Telecommunications Public Limited Company | Content management tool and service table database with unique service entries each associated with a set of record tables with record entries including links to shared record entries in other tables |
US5982913A (en) * | 1997-03-25 | 1999-11-09 | The United States Of America As Represented By The National Security Agency | Method of verification using a subset of claimant's fingerprint |
US6041411A (en) * | 1997-03-28 | 2000-03-21 | Wyatt; Stuart Alan | Method for defining and verifying user access rights to a computer information |
US20020024419A1 (en) * | 1997-04-16 | 2002-02-28 | Dunn Christopher S. | Method of detecting authorised biometric information sensor |
US6301376B1 (en) * | 1997-05-07 | 2001-10-09 | Georgi H. Draganoff | Segmented sliding yardsticks error tolerant fingerprint enrollment and verification system and method |
US6018739A (en) * | 1997-05-15 | 2000-01-25 | Raytheon Company | Biometric personnel identification system |
US5963945A (en) * | 1997-06-05 | 1999-10-05 | Microsoft Corporation | Synchronization of a client and a server in a prefetching resource allocation system |
US6182076B1 (en) * | 1997-06-09 | 2001-01-30 | Philips Electronics North America Corporation | Web-based, biometric authetication system and method |
US5930804A (en) * | 1997-06-09 | 1999-07-27 | Philips Electronics North America Corporation | Web-based biometric authentication system and method |
US5966705A (en) * | 1997-06-30 | 1999-10-12 | Microsoft Corporation | Tracking a user across both secure and non-secure areas on the Internet, wherein the users is initially tracked using a globally unique identifier |
US5982914A (en) * | 1997-07-29 | 1999-11-09 | Smarttouch, Inc. | Identification of individuals from association of finger pores and macrofeatures |
US6016476A (en) * | 1997-08-11 | 2000-01-18 | International Business Machines Corporation | Portable information and transaction processing system and method utilizing biometric authorization and digital certificate security |
US6334124B1 (en) * | 1997-10-06 | 2001-12-25 | Ventro Corporation | Techniques for improving index searches in a client-server environment |
US6151602A (en) * | 1997-11-07 | 2000-11-21 | Inprise Corporation | Database system with methods providing a platform-independent self-describing data packet for transmitting information |
US6070159A (en) * | 1997-12-05 | 2000-05-30 | Authentec, Inc. | Method and apparatus for expandable biometric searching |
US6047282A (en) * | 1997-12-05 | 2000-04-04 | Authentec, Inc. | Apparatus and method for expandable biometric searching |
US6047281A (en) * | 1997-12-05 | 2000-04-04 | Authentec, Inc. | Method and apparatus for expandable biometric searching |
US6023723A (en) * | 1997-12-22 | 2000-02-08 | Accepted Marketing, Inc. | Method and system for filtering unwanted junk e-mail utilizing a plurality of filtering mechanisms |
US6195954B1 (en) * | 1998-04-01 | 2001-03-06 | Scandanavia Home Co. Ltd. | Method of improving durability of a building, building, far-infrared radiation thermal storage floor heating system, and method of improving soil of building lot |
US20010036299A1 (en) * | 1998-05-15 | 2001-11-01 | Andrew William Senior | Combined fingerprint acquisition and control device |
US6292795B1 (en) * | 1998-05-30 | 2001-09-18 | International Business Machines Corporation | Indexed file system and a method and a mechanism for accessing data records from such a system |
US6363421B2 (en) * | 1998-05-31 | 2002-03-26 | Lucent Technologies, Inc. | Method for computer internet remote management of a telecommunication network element |
US6336114B1 (en) * | 1998-09-03 | 2002-01-01 | Westcorp Software Systems, Inc. | System and method for restricting access to a data table within a database |
US20010011349A1 (en) * | 1998-09-03 | 2001-08-02 | Greg B. Garrison | System and method for encrypting a data session between a client and a server |
US6338066B1 (en) * | 1998-09-25 | 2002-01-08 | International Business Machines Corporation | Surfaid predictor: web-based system for predicting surfer behavior |
US20010000045A1 (en) * | 1998-12-09 | 2001-03-15 | Yuan-Pin Yu | Web-based, biometric authentication system and method |
US20020056043A1 (en) * | 1999-01-18 | 2002-05-09 | Sensar, Inc. | Method and apparatus for securely transmitting and authenticating biometric data over a network |
US6476833B1 (en) * | 1999-03-30 | 2002-11-05 | Koninklijke Philips Electronics N.V. | Method and apparatus for controlling browser functionality in the context of an application |
US20010049687A1 (en) * | 1999-12-23 | 2001-12-06 | Russell Larry L. | Information storage and retrieval device |
US6393424B1 (en) * | 1999-12-29 | 2002-05-21 | Networks Associates, Inc. | Method and apparatus for using a static metadata object to reduce database accesses |
US20020016853A1 (en) * | 2000-01-27 | 2002-02-07 | Bryan Ressler | Method and apparatus for transferring data between computing systems |
US20020016921A1 (en) * | 2000-01-28 | 2002-02-07 | Theis Olsen | System and method for ensuring secure transfer of a document from a client of a network to a printer |
US20010025342A1 (en) * | 2000-02-03 | 2001-09-27 | Kaoru Uchida | Biometric identification method and system |
US20020004839A1 (en) * | 2000-05-09 | 2002-01-10 | William Wine | Method of controlling the display of a browser during a transmission of a multimedia stream over an internet connection so as to create a synchronized convergence platform |
US20020013785A1 (en) * | 2000-06-27 | 2002-01-31 | Jun Miyazaki | Internet advertisement system |
US20020010857A1 (en) * | 2000-06-29 | 2002-01-24 | Kaleedhass Karthik | Biometric verification for electronic transactions over the web |
US20020062452A1 (en) * | 2000-08-18 | 2002-05-23 | Warwick Ford | Countering credentials copying |
US20020038426A1 (en) * | 2000-09-28 | 2002-03-28 | Marcus Pettersson | Method and a system for improving logon security in network applications |
US20020055912A1 (en) * | 2000-10-20 | 2002-05-09 | Byron Buck | Network and method for facilitating on-line privacy |
US20020133504A1 (en) * | 2000-10-27 | 2002-09-19 | Harry Vlahos | Integrating heterogeneous data and tools |
US20020087869A1 (en) * | 2000-11-09 | 2002-07-04 | Jinsam Kim | System and method of authenticating a credit card using a fingerprint |
US20020083192A1 (en) * | 2000-12-18 | 2002-06-27 | Cora Alisuag | Computer oriented record administration system |
US20020161766A1 (en) * | 2001-04-26 | 2002-10-31 | Lawson Robert James | System and method for managing user profiles |
US20030051169A1 (en) * | 2001-08-13 | 2003-03-13 | Sprigg Stephen A. | Using permissions to allocate device resources to an application |
Cited By (112)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9253060B2 (en) | 2003-03-14 | 2016-02-02 | Websense, Inc. | System and method of monitoring and controlling application files |
US9692790B2 (en) | 2003-03-14 | 2017-06-27 | Websense, Llc | System and method of monitoring and controlling application files |
US9342693B2 (en) | 2003-03-14 | 2016-05-17 | Websense, Inc. | System and method of monitoring and controlling application files |
US8645340B2 (en) | 2003-03-14 | 2014-02-04 | Websense, Inc. | System and method of monitoring and controlling application files |
US8701194B2 (en) | 2003-03-14 | 2014-04-15 | Websense, Inc. | System and method of monitoring and controlling application files |
US8150817B2 (en) | 2003-03-14 | 2012-04-03 | Websense, Inc. | System and method of monitoring and controlling application files |
US20150113603A1 (en) * | 2003-03-21 | 2015-04-23 | David M. T. Ting | System and method for data and request filtering |
US10505930B2 (en) * | 2003-03-21 | 2019-12-10 | Imprivata, Inc. | System and method for data and request filtering |
US7900041B2 (en) * | 2003-07-22 | 2011-03-01 | Irdeto Canada Corporation | Software conditional access system |
US20050039025A1 (en) * | 2003-07-22 | 2005-02-17 | Alexander Main | Software conditional access system |
US7912953B2 (en) * | 2003-10-23 | 2011-03-22 | International Business Machines Corporation | Administering devices including allowed action lists |
US7461143B2 (en) * | 2003-10-23 | 2008-12-02 | International Business Machines Corporation | Administering devices including allowed action lists |
US20050091384A1 (en) * | 2003-10-23 | 2005-04-28 | International Business Machines Corporation | Administering devices including allowed action lists |
US20090055533A1 (en) * | 2003-10-23 | 2009-02-26 | International Business Machines Corporation | Administering Devices Including Allowed Action Lists |
US7890642B2 (en) * | 2004-08-07 | 2011-02-15 | Websense Uk Limited | Device internet resource access filtering system and method |
US20060031942A1 (en) * | 2004-08-07 | 2006-02-09 | Jones Kevin B | Device internet resource access filtering system and method |
US9558341B1 (en) * | 2004-10-07 | 2017-01-31 | Sprint Communications Company L.P. | Integrated user profile administration tool |
US10515195B2 (en) | 2005-06-29 | 2019-12-24 | Blackberry Limited | Privilege management and revocation |
US20070006284A1 (en) * | 2005-06-29 | 2007-01-04 | Research In Motion Limited | System and method for privilege management and revocation |
US7614082B2 (en) * | 2005-06-29 | 2009-11-03 | Research In Motion Limited | System and method for privilege management and revocation |
US20100011417A1 (en) * | 2005-06-29 | 2010-01-14 | Research In Motion Limited | System and method for privilege management and revocation |
US9734308B2 (en) | 2005-06-29 | 2017-08-15 | Blackberry Limited | Privilege management and revocation |
US9282099B2 (en) | 2005-06-29 | 2016-03-08 | Blackberry Limited | System and method for privilege management and revocation |
US8522321B2 (en) | 2005-06-29 | 2013-08-27 | Blackberry Limited | System and method for privilege management and revocation |
US9230098B2 (en) | 2005-12-28 | 2016-01-05 | Websense, Inc. | Real time lockdown |
US8453243B2 (en) | 2005-12-28 | 2013-05-28 | Websense, Inc. | Real time lockdown |
US20070150956A1 (en) * | 2005-12-28 | 2007-06-28 | Sharma Rajesh K | Real time lockdown |
US8959642B2 (en) | 2005-12-28 | 2015-02-17 | Websense, Inc. | Real time lockdown |
US20070283164A1 (en) * | 2006-05-31 | 2007-12-06 | Minoru Nishizawa | Authentication system, consolidation apparatus and program |
US7913091B2 (en) * | 2006-05-31 | 2011-03-22 | Kabushiki Kaisha Toshiba | Authentication system, consolidation apparatus and program |
US8516476B2 (en) | 2007-01-08 | 2013-08-20 | Cisco Technology, Inc. | Methods and apparatuses for managing the distribution and installation of applications during a collaboration session |
US20080165391A1 (en) * | 2007-01-08 | 2008-07-10 | Weidong Chen | Methods and apparatuses for selectively accessing an application |
US20080168437A1 (en) * | 2007-01-08 | 2008-07-10 | Weidong Chen | Methods and apparatuses for managing the distribution and installation of applications |
US20080168140A1 (en) * | 2007-01-08 | 2008-07-10 | Weidong Chen | Methods and apparatuses for dynamically suggesting an application based on a collaboration session |
US8407289B2 (en) | 2007-01-08 | 2013-03-26 | Cisco Technology, Inc. | Methods and apparatuses for dynamically suggesting an application based on a collaboration session |
US8413260B2 (en) | 2007-01-08 | 2013-04-02 | Cisco Technology, Inc. | Methods and apparatuses for automatically initiating an application |
US8423612B2 (en) * | 2007-01-08 | 2013-04-16 | Cisco Technology, Inc. | Methods and apparatuses for selectively accessing an application |
US20080168162A1 (en) * | 2007-01-08 | 2008-07-10 | Weidong Chen | Methods and apparatuses for automatically initiating an application |
US8250081B2 (en) | 2007-01-22 | 2012-08-21 | Websense U.K. Limited | Resource access filtering system and database structure for use therewith |
US8938773B2 (en) | 2007-02-02 | 2015-01-20 | Websense, Inc. | System and method for adding context to prevent data leakage over a computer network |
US9609001B2 (en) | 2007-02-02 | 2017-03-28 | Websense, Llc | System and method for adding context to prevent data leakage over a computer network |
US8819814B1 (en) * | 2007-04-13 | 2014-08-26 | United Services Automobile Association (Usaa) | Secure access infrastructure |
US9686262B2 (en) | 2007-04-27 | 2017-06-20 | International Business Machines Corporation | Authentication based on previous authentications |
WO2008132036A1 (en) * | 2007-04-27 | 2008-11-06 | International Business Machines Corporation | Cascading authentication system |
US8726347B2 (en) | 2007-04-27 | 2014-05-13 | International Business Machines Corporation | Authentication based on previous authentications |
US9094393B2 (en) | 2007-04-27 | 2015-07-28 | International Business Machines Corporation | Authentication based on previous authentications |
US20080271117A1 (en) * | 2007-04-27 | 2008-10-30 | Hamilton Rick A | Cascading Authentication System |
US8327430B2 (en) | 2007-06-19 | 2012-12-04 | International Business Machines Corporation | Firewall control via remote system information |
US20080320580A1 (en) * | 2007-06-19 | 2008-12-25 | International Business Machines Corporation | Systems, methods, and media for firewall control via remote system information |
US8713665B2 (en) | 2007-06-19 | 2014-04-29 | International Business Machines Corporation | Systems, methods, and media for firewall control via remote system information |
US20080320581A1 (en) * | 2007-06-21 | 2008-12-25 | Hamilton Ii Rick A | Systems, methods, and media for firewall control via process interrogation |
US8272043B2 (en) | 2007-06-21 | 2012-09-18 | International Business Machines Corporation | Firewall control system |
US20080320584A1 (en) * | 2007-06-21 | 2008-12-25 | Hamilton Ii Rick A | Firewall control system |
US8272041B2 (en) | 2007-06-21 | 2012-09-18 | International Business Machines Corporation | Firewall control via process interrogation |
US20100180120A1 (en) * | 2007-09-06 | 2010-07-15 | Human Interface Security Ltd | Information protection device |
US8244761B1 (en) | 2007-10-18 | 2012-08-14 | United Services Automobile Association (Usaa) | Systems and methods for restricting access to internal data of an organization by external entity |
US9015842B2 (en) | 2008-03-19 | 2015-04-21 | Websense, Inc. | Method and system for protection against information stealing software |
US9455981B2 (en) | 2008-03-19 | 2016-09-27 | Forcepoint, LLC | Method and system for protection against information stealing software |
US9495539B2 (en) | 2008-03-19 | 2016-11-15 | Websense, Llc | Method and system for protection against information stealing software |
US8959634B2 (en) | 2008-03-19 | 2015-02-17 | Websense, Inc. | Method and system for protection against information stealing software |
US20090241187A1 (en) * | 2008-03-19 | 2009-09-24 | Websense, Inc. | Method and system for protection against information stealing software |
US20090241197A1 (en) * | 2008-03-19 | 2009-09-24 | Websense, Inc. | System and method for analysis of electronic information dissemination events |
US9130986B2 (en) | 2008-03-19 | 2015-09-08 | Websense, Inc. | Method and system for protection against information stealing software |
US8370948B2 (en) | 2008-03-19 | 2013-02-05 | Websense, Inc. | System and method for analysis of electronic information dissemination events |
US8407784B2 (en) | 2008-03-19 | 2013-03-26 | Websense, Inc. | Method and system for protection against information stealing software |
US9378282B2 (en) | 2008-06-30 | 2016-06-28 | Raytheon Company | System and method for dynamic and real-time categorization of webpages |
US9391779B2 (en) * | 2008-07-28 | 2016-07-12 | International Business Machines Corporation | Reactive biometric single sign-on utility |
US20100024023A1 (en) * | 2008-07-28 | 2010-01-28 | International Business Machines Corporation | Reactive Biometric Single Sign-on Utility |
US20100122340A1 (en) * | 2008-11-13 | 2010-05-13 | Palo Alto Research Center Incorporated | Enterprise password reset |
US8881266B2 (en) * | 2008-11-13 | 2014-11-04 | Palo Alto Research Center Incorporated | Enterprise password reset |
US20110265169A1 (en) * | 2008-12-30 | 2011-10-27 | Nokia Siemens Networks Oy | User-dependent content delivery |
US8555359B2 (en) * | 2009-02-26 | 2013-10-08 | Yodlee, Inc. | System and methods for automatically accessing a web site on behalf of a client |
US20100215270A1 (en) * | 2009-02-26 | 2010-08-26 | Pradheesh Manohar | System and Methods for Automatically Accessing a Web Site on Behalf of a Client |
US9130972B2 (en) | 2009-05-26 | 2015-09-08 | Websense, Inc. | Systems and methods for efficient detection of fingerprinted data and information |
US9692762B2 (en) | 2009-05-26 | 2017-06-27 | Websense, Llc | Systems and methods for efficient detection of fingerprinted data and information |
US8683562B2 (en) | 2011-02-03 | 2014-03-25 | Imprivata, Inc. | Secure authentication using one-time passwords |
CN103765845A (en) * | 2011-07-01 | 2014-04-30 | 惠普发展公司,有限责任合伙企业 | Providing access to information |
US20130227352A1 (en) * | 2012-02-24 | 2013-08-29 | Commvault Systems, Inc. | Log monitoring |
US11500751B2 (en) | 2012-02-24 | 2022-11-15 | Commvault Systems, Inc. | Log monitoring |
US20190095304A1 (en) * | 2012-02-24 | 2019-03-28 | Commvault Systems, Inc. | Log monitoring |
US9418218B2 (en) * | 2012-03-23 | 2016-08-16 | Intermedia.Net, Inc. | Dynamic rendering of a document object model |
GB2503070B (en) * | 2012-03-23 | 2015-01-21 | Saasid Ltd | Dynamic rendering of a document object model |
US9460292B2 (en) | 2012-03-23 | 2016-10-04 | Intermedia.Net, Inc. | Dynamic rendering of a document object model |
GB2503070A (en) * | 2012-03-23 | 2013-12-18 | Saasid Ltd | Dynamic rendering of a Document Object Model (DOM) |
US10635807B2 (en) * | 2012-03-30 | 2020-04-28 | Irdeto B.V. | Method and system for preventing and detecting security threats |
US20180068118A1 (en) * | 2012-03-30 | 2018-03-08 | Irdeto B.V. | Method and system for preventing and detecting security threats |
US20170111351A1 (en) * | 2012-09-19 | 2017-04-20 | Secureauth Corporation | Mobile multifactor single-sign-on authentication |
US10200357B2 (en) * | 2012-09-19 | 2019-02-05 | Secureauth Corporation | Mobile single-sign-on authentication using browser as intermediary |
US10148640B2 (en) * | 2012-10-01 | 2018-12-04 | Salesforce.Com, Inc. | Secured inter-application communication in mobile devices |
US20160381002A1 (en) * | 2012-10-01 | 2016-12-29 | Salesforce.Com, Inc. | Securedinter-application communication in mobile devices |
US9241259B2 (en) | 2012-11-30 | 2016-01-19 | Websense, Inc. | Method and apparatus for managing the transfer of sensitive information to mobile devices |
US10135783B2 (en) | 2012-11-30 | 2018-11-20 | Forcepoint Llc | Method and apparatus for maintaining network communication during email data transfer |
US10929551B2 (en) * | 2013-03-13 | 2021-02-23 | Comcast Cable Communications, Llc | Methods and systems for managing data assets |
US20140283120A1 (en) * | 2013-03-13 | 2014-09-18 | Comcast Cable Communications, Llc | Methods And Systems For Managing Data Assets |
US9043890B1 (en) * | 2013-05-30 | 2015-05-26 | Emc Corporation | Distributed authentication against stored user identifiers and user templates via pseudonym association |
CN103646203A (en) * | 2013-12-20 | 2014-03-19 | 中晟国计科技有限公司 | Computer safety system with human body biological characteristic recognition |
CN104753755A (en) * | 2013-12-26 | 2015-07-01 | 广州华多网络科技有限公司 | System access method, system access device, application client, and IM background system |
US9870462B2 (en) * | 2014-09-22 | 2018-01-16 | Intel Corporation | Prevention of cable-swap security attack on storage devices |
US20160085959A1 (en) * | 2014-09-22 | 2016-03-24 | Intel Corporation | Prevention of cable-swap security attack on storage devices |
US11379457B2 (en) | 2015-04-09 | 2022-07-05 | Commvault Systems, Inc. | Management of log data |
US9934265B2 (en) | 2015-04-09 | 2018-04-03 | Commvault Systems, Inc. | Management of log data |
US10296613B2 (en) | 2015-04-09 | 2019-05-21 | Commvault Systems, Inc. | Management of log data |
US11265307B2 (en) * | 2015-06-02 | 2022-03-01 | ALTR Solutions, Inc. | Credential-free user login to remotely executed applications |
US10108964B2 (en) * | 2015-07-10 | 2018-10-23 | Sugarcrm Inc. | Smart user feedback |
US20170010759A1 (en) * | 2015-07-10 | 2017-01-12 | Sugarcrm Inc. | Smart user feedback |
US12093386B2 (en) | 2017-09-14 | 2024-09-17 | Commvault Systems, Inc. | Ransomware detection and data pruning management |
US11100064B2 (en) | 2019-04-30 | 2021-08-24 | Commvault Systems, Inc. | Automated log-based remediation of an information management system |
US11782891B2 (en) | 2019-04-30 | 2023-10-10 | Commvault Systems, Inc. | Automated log-based remediation of an information management system |
US20220232007A1 (en) * | 2019-06-19 | 2022-07-21 | Elta Systems Ltd. | Methods and systems for trusted web authentication |
US11985126B2 (en) * | 2019-06-19 | 2024-05-14 | Elta Systems Ltd. | Methods and systems for trusted web authentication |
US11574050B2 (en) | 2021-03-12 | 2023-02-07 | Commvault Systems, Inc. | Media agent hardening against ransomware attacks |
US12026252B2 (en) | 2021-03-12 | 2024-07-02 | Commvault Systems, Inc. | Detecting ransomware in secondary copies of client computing devices |
Also Published As
Publication number | Publication date |
---|---|
US20110145908A1 (en) | 2011-06-16 |
US20150113603A1 (en) | 2015-04-23 |
US8839456B2 (en) | 2014-09-16 |
US10505930B2 (en) | 2019-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10505930B2 (en) | System and method for data and request filtering | |
US7941849B2 (en) | System and method for audit tracking | |
US7660880B2 (en) | System and method for automated login | |
US9215224B2 (en) | Automated security token administrative services | |
US8719433B2 (en) | Methods and apparatus for scalable secure remote desktop access | |
US6144959A (en) | System and method for managing user accounts in a communication network | |
US6826692B1 (en) | Method and apparatus to permit automated server determination for foreign system login | |
US8327421B2 (en) | System and method for identity consolidation | |
US7117529B1 (en) | Identification and authentication management | |
US5991807A (en) | System for controlling users access to a distributive network in accordance with constraints present in common access distributive network interface separate from a server | |
US9838429B1 (en) | Dynamic access policies | |
US20070300306A1 (en) | Method and system for providing granular data access control for server-client applications | |
US8959613B2 (en) | System and method for managing access to a plurality of servers in an organization | |
EP0998091A2 (en) | System and method for web server user authentication | |
US20020112186A1 (en) | Authentication and authorization for access to remote production devices | |
US20060036868A1 (en) | User authentication without prior user enrollment | |
US20060179472A1 (en) | System and method for effectuating computer network usage | |
US20040236760A1 (en) | Systems and methods for extending a management console across applications | |
Cisco | Overview of CiscoSecure EasyACS | |
Cisco | Overview of CiscoSecure EasyACS | |
Cisco | Overview of CiscoSecure EasyACS | |
Cisco | Overview of CiscoSecure EasyACS | |
Cisco | Overview of CiscoSecure EasyACS | |
Cisco | Overview of CiscoSecure EasyACS |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: IMPRIVATA, INC., MASSACHUSETTS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:TING, DAVID M.T.;REEL/FRAME:014165/0085 Effective date: 20030502 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION |