US7206791B2 - System and method for managing and securing meta data - Google Patents
System and method for managing and securing meta data Download PDFInfo
- Publication number
- US7206791B2 US7206791B2 US10/051,558 US5155802A US7206791B2 US 7206791 B2 US7206791 B2 US 7206791B2 US 5155802 A US5155802 A US 5155802A US 7206791 B2 US7206791 B2 US 7206791B2
- Authority
- US
- United States
- Prior art keywords
- data
- application
- user
- context
- meta data
- 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.)
- Expired - Lifetime, expires
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6227—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
- Y10S707/99945—Object-oriented database structure processing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99948—Application of database or data structure, e.g. distributed, multimedia, or image
Definitions
- the present invention relates to data management systems and, more particularly, to a system and method for managing and securing meta data.
- Meta data is known as any data that relates to or describes some other data.
- meta data can include, but are not limited to, web page setting parameters (e.g., font, font size, background color, window size, etc.), user IDs and passwords, and values entered into the data fields of computer forms such as online order forms.
- Conventional Web browsers such as Microsoft Internet Explorer offer limited meta data management features.
- an “auto-complete” function offered by Microsoft Internet Explorer manages meta data such as Web addresses, passwords, and contact information that the user enters into the data fields of computer forms. Subsequently, when the user begins to enter a value into a particular data field of a computer form previously processed by the user's browser, the auto-complete function provides a drop-down list suggesting possible values for that data field. The user's selection of one of the suggested values triggers the browser to automatically fill in the data field with the selected value.
- the auto-complete function is the “password-assist” feature for assisting the user in filling in passwords and user IDs. For instance, when the user enters a user ID and a password into the appropriate data fields of a computer form for the first time, the auto-complete function of the Web browser stores the user ID and password in association with the data fields identified by particular field names. The user ID and password are typically stored in an encrypted format in a local repository such as the memory of the user's PC. Then, each time the same data fields appear on the user's screen, the auto-complete function retrieves the corresponding user ID and password and decrypts them. Then the auto-complete function automatically fills in the data fields with the decrypted user ID and password. Typically, the password in the “password” field of the form is obfuscated by being displayed as a string of asterisks.
- the conventional systems are not configured to recognize different meta data associated with different roles of a user.
- the user may function as an IBM employee, an association representative, or a private citizen (personal use) when ordering products online from a particular online vendor.
- the user utilizes different meta data such as different user ID/and password, mailing address, payment information, etc.
- the conventional Web browsers always supply the last used meta data when filling out forms, which is often inappropriate for the current user role.
- an online order form may request a home address comprising four related data fields, namely, street name, city, state and zip code. Although these data fields are related, the conventional system stores values for each of these fields individually and does not store relational information on these fields.
- the conventional Web browser provides a drop-down list identifying suggested values for a particular data field, the drop-down list often includes certain items that are completely irrelevant for the particular data field.
- the conventional Web browser is unable to recognize related data fields, a large number of items are often displayed in one drop-down list. As the number of items displayed in the drop-down list increases, it becomes more difficult for the user to view the list and find quickly the appropriate value from the list.
- the “password-assist” feature offers some benefits to the user because the user does not need to remember multiple user IDs and passwords, this feature can have the unpleasant side effect of helping the user forget her user IDs and passwords since the browser automatically fills the user ID/password fields in most cases. Further, when a password requesting form has a field name which is different from the stored field name associated with the password, the auto-complete function fails to recognize this field and the user will need to manually enter the password into the field.
- a password changing form includes a field for entering the old password, which often has a field name unrecognized by the browser, the auto-complete function will not supply the old password and the user will need to enter it manually. But, since the user is so used to the browser automatically filling in the passwords, the user typically fails to recall the appropriate password, which places the user in problematic situations.
- the present invention provides a system and method for managing and securing meta data which overcomes problems associated with conventional data management systems and which satisfy the above-described needs of the conventional systems.
- the system of the present invention implements an innovative and sophisticated approach for assisting the user with application-based activities such as filling in a computer form, word-processing a file, requesting a website, changing a password online, etc.
- the present approach involves collecting meta data, which are generated by the user while using the applications, in association with the context in which such meta data are generated, and heuristically exploiting the use of the stored meta data to assist the user with any future application-based activities, thereby enhancing greatly the current experience of the user in conducting application-based activities without the limitations of conventional approaches.
- the system of the present invention is implementable in a user's computing device such as a computer, work station, PDA, etc. More specifically, the user's computing device is configured to interact with any application (e.g., Web browser, word processor, graphics program, etc.) that the user is currently running on the user's computing device.
- the computing device collects meta data resulting from the user's use of the application, and stores them in database(s) of the user's computing device.
- the meta data include “application data” and “context data”.
- Application data is any data that is directly used in the applications.
- Examples of application data may include: 1) user preference data such as display setting data (e.g., font, font size, window size, background color, etc.) that are set by the user for displaying specific web pages or files, 2) form data, i.e., values that the user enters into the fields of computer forms, 3) user ID/password combinations, and 4) PKI certificates/private key pairs used by the user's computing device to provide secured communications.
- the context data identifies the context in which the application data are used. Examples of the context data may be URIs (uniform resource identifiers) of forms, file names, user roles (role of the user associated with the application data), form names, or any other property that identifies the context in which the application data are used.
- All the meta data that are related to each other or used together in a particular context are stored together in the user's computing device. This permits the system to recognize and consider relationships between the meta data when accessing the stored meta data. In addition, the system maintains statistical information indicating relationships between the meta data. In one embodiment, the statistical information indicates how frequently certain application data are used together in a particular context.
- the system performs sophisticated search and retrieval operations on the database(s) to utilize the stored application data to perform automatically certain tasks for the user. Since the meta data and the statistical information represent the user's past behaviors in using the applications, whether it be filling out a computer form, displaying a web page or file, etc., the system relies on this prior use information to anticipate the likely behavior of the user during a current use of the application, and retrieves stored application data that would be most appropriate for the current context of using the application. This process is implemented using existing heuristics algorithms to find optimal solution(s) that satisfy multiple search requirements. In one embodiment, the search requirements are formulated based on different properties (e.g., URI, user role, etc.) that identify the current context of using the application.
- properties e.g., URI, user role, etc.
- the identified solution(s) will represent application data that the user will likely use in the current context of using the application. Then the system applies automatically the identified solution(s) in the user's current context of using the application.
- specific display settings set by the user for different web pages are stored in association with their contexts. Subsequently, when a particular web page is to be displayed to the user, the system searches the database(s) based on the current context information (e.g., URI of the particular web page and/or the current use role), and heuristically retrieves page display setting data that the user would most likely select to display this particular web page. The retrieved display setting data are then automatically applied in the current context of displaying the web page, so that the particular web page is displayed according to the retrieved display setting data. In this manner, different web pages will be displayed automatically in different settings that are preferred or likely preferred by the user.
- the current context information e.g., URI of the particular web page and/or the current use role
- the present system also provides a meta data editor that allows the user to organize, sort and edit the meta data stored in the database using a graphical user interface. Using the editor, the user can select, from multiple possible values, most appropriate values to be inserted into a form on demand by using an existing selection technique such as a drag-and-drop editing operation.
- the present invention intelligently provides suggestions or implements changes to the current context of using an application in a manner that the user would likely have chosen.
- the user need not manually effectuate such changes for each different instance of using the application, whether it be filling out a computer form, changing the display setting of a page/file, changing a password, etc. Due to this automation and customization, the present invention improves greatly the user's experience of utilizing the applications.
- FIG. 1 is a diagram of a system for managing and securing meta data according to one embodiment of the present invention.
- FIG. 2 is a block diagram of a user's computing device in the system shown in FIG. 1 according to one embodiment of the present invention.
- FIG. 3A is a diagram of an example of a computer form usable in the present invention.
- FIG. 3B shows an example of (key, value) pairs collectable from the computer form of FIG. 3A according to one embodiment of the present invention.
- FIG. 4 is a flowchart illustrating the processing steps of a method for managing meta data according to one simple embodiment of the present invention.
- FIG. 5 is a flowchart illustrating the processing steps of a method for managing meta data in the context of displaying web pages according to one embodiment of the present invention.
- FIG. 6 is a flowchart illustrating the processing steps for managing meta data in the context of filling in forms according to one embodiment of the present invention.
- FIG. 7 is a flowchart illustrating the processing steps for managing meta data in the context of changing passwords according to one embodiment of the present invention.
- FIG. 1 is a diagram of a system 100 for managing and securing meta data according to one embodiment of the present invention.
- the system 100 includes a user's computing device 10 capable of communicating with a plurality of different servers 50 a , 50 b , 50 c and 50 d through a communications network such as the Internet 52 .
- the servers 50 a– 50 d are conventional servers or other means for providing and maintaining websites.
- the user's computing device 10 can be, for example, a computer, a work station, a PDA (Personal Digital Assistant), a mobile telephone, or any other communication device capable of carrying out functions discussed below.
- PDA Personal Digital Assistant
- FIG. 2 is a block diagram of the user's computing device 10 in the system 100 of FIG. 1 according to one embodiment of the present invention.
- the user's computing device 10 includes Common Data Security Architecture (CDSA) 30 , a data repository plug-in 20 , a plurality of applications including a Web browser 22 , a word processor 23 and any other application 24 , and a meta data editor 25 , all operatively coupled.
- CDSA Common Data Security Architecture
- the CDSA 30 is an existing security layer configuration for providing a widely-accepted set of layered security services defined by Intel Architecture Labs (IAL). Typically, the CDSA is implemented in computer software. Briefly, the functions and operations of the CDSA 30 will be discussed.
- the CDSA 30 includes a Common Security Services Manager (CSSM) API (application programming interface) that interacts with the applications 22 – 24 and the editor 25 to allow the applications 22 – 24 and the editor 25 to access the security-based services offered by the CDSA 30 .
- CSSM Common Security Services Manager
- the CDSA 30 also includes a plurality of service provider modules that offer these security-based services.
- the CDSA 30 may include a Cryptographic Service Provider (CSP) module, a Trust Policy (TP) module, a Certificate Library (CL) module, a Data storage Library (DL) module, and an Authorization Computation (AC) module, all known in the art. These modules provide services such as cryptographic operations including bulk encrypting and digital signature processing, accessing remote signing entities such as Certification authorities (CA), storing certificates and cryptographic keys, etc.
- CSP Cryptographic Service Provider
- TP Trust Policy
- CL Certificate Library
- DL Data storage Library
- AC Authorization Computation
- the CDSA 30 includes elective module managers (EMM) that allow new services to be added easily. Under control of the EMM, new services can be added easily in a secure manner by merely providing new service provider modules as plug-ins that implement the new services.
- EMM elective module managers
- Each of the applications 22 – 24 and the meta data editor 25 is configured to interact with the CDSA 30 .
- each of the applications 22 – 24 and the meta data editor 25 may include a Graphical User Interface (GUI) accelerator 22 a , 23 a , 24 a or 25 a for “accelerating” or facilitating the displaying and user-interface operations of the application and the editor.
- GUI Graphical User Interface
- These GUI accelerators 22 a– 25 a are known in the art and, as is well known, may require some hardware to implement the functions.
- the applications 22 – 24 and the editor 25 access the security-based services provided by the CDSA 30 .
- the GUI accelerator 22 a of the Web browser 22 communicates with the CSSM API of the CDSA 30 according to existing techniques to access any one of the security-based services provided by the service provider modules such as CSP module, TP module, etc., whenever it is necessary. For example, if a particular web page received by the Web browser 22 requires decryption, then the Web browser 22 communicates, via the GUI accelerator 22 a , with the CSSM API to utilize the decryption service offered by the CSP module of the CDSA 30 .
- any of the applications 22 – 24 and the editor 25 in the computing device 10 can carry out data communications with each other and any other communicating component in a secure manner.
- the CDSA 30 also verifies each of the GUI accelerators 22 a– 25 a before the GUI accelerators 22 a– 25 a can access the security-based services offered by the CDSA 30 . This verification can occur according to existing verification techniques that are used in communication systems to authenticate the validity of communication devices. In this regard, the use of the CDSA 30 further enhances the data security of the device 10 .
- the present invention also provides the data repository plug-in 20 in the user's computing device 10 .
- the data repository plug-in 20 is a plug-in provided as a new service provider module to the CDSA 30 , so that it can be easily integrated into the CDSA 30 to interact with the CSSM API of the CDSA 30 under control of the EMM.
- This configuration allows the data repository plug-in 20 to communicate with any of the applications 22 – 24 and the meta data editor 25 and to access any meta data being processed by the applications 22 – 24 and the meta data editor 25 in a secure manner.
- the data repository plug-in 20 includes a Heuristic access API (HAPI) 14 and one or more database(s) 15 , all operatively coupled.
- the HAPI 14 is capable of accessing any meta data processed in or resulting from the use of the applications 22 – 24 and the meta data editor 25 , storing and organizing the meta data in the database(s) 15 (or any other storage accessible by the device 10 ), and searching and retrieving most appropriate meta data that can be used in the current context in which the user is using the application 22 , 23 or 24 .
- “meta data” include “application data” and “context data”.
- Application data is any data that is directly used in or by the application, e.g., form data (values entered into the fields of computer forms), user ID and password combinations, PKI certificates/private key pairs, user preference data including bookmarks and display setting data including web page display setting data and file display setting data, etc.
- Context data is any data that identifies the context in which the application data is used.
- the context data may include, but are not limited to, field names identifying the fields of forms/files, URLs of forms, file names, roles identifying the role in which the user functions in producing the application data, etc.
- the display setting data may include, but are not limited to, font, font size, background color, language encoding, window/screen size, whether to open the window/file with a new process or the existing process, security settings, etc.
- the HAPI 14 interacts with any application 22 – 24 and/or the editor 25 that is currently running on the user's device 10 to obtain meta data from the application 22 – 24 and/or the editor 25 as the user uses the application 22 – 24 and/or the editor 25 .
- the HAPI 14 includes a “Remember” interface 16 and a “Retrieval” interface 18 , all operatively coupled.
- the “Remember” interface 16 communicates with a currently active application 22 – 24 and/or the editor 25 through the CDSA 30 , collects meta data through the communications, and stores the meta data in the database(s) 15 .
- the “Remember” interface 16 obtains form data (i.e., all the values entered by the user into the data fields of this computer form) and stores them in the database(s) 15 as application data.
- the “Remember” interface 16 also collects and stores context data associated with the form data.
- the context data may identify the names of the fields of the form, URL of the form, current user role (e.g., as a private citizen, an IBM employee, etc.), and any other property identifying the context of this computer form.
- new display setting data e.g., modifications from default setting data or entire new display setting data
- context data e.g., URI of the page, current user role, etc.
- the “Remember” interface 16 stores in the database(s) 15 these settings or parameters together with corresponding context data which may include the file name, user role, or some other identifier of the file/user.
- the meta data are stored in the database(s) 15 as a plurality of (key, value) pairs.
- a “key” represents a particular property and a key value represents a value assigned to the property. For instance, a pair “(URL, www.ibm.com)” indicates that a value of “www.ibm.com” is assigned to the property, URL.
- the “Remember” interface 16 collects the meta data, it organizes the collected meta data into meta data sets wherein all the data belonging to a single meta data set will be related to each other.
- Each meta data set comprises a plurality of meta data groups, each group being composed of a plurality of (key, key value) pairs representing application data and context data associated with the application data.
- This data organization allows the database(s) 15 to be searched based on context data, e.g., a combination of URI, file name, and user role. And with equal importance, this data organization allows related meta data to be stored together, so that relationships between the meta data are considered whenever an access to the stored meta data is desired. A more detailed discussion of this data organization will be provided below in connection with FIGS. 3A and 3B .
- the “Remember” interface 16 keeps track of the user's use of meta data and stores this information in the database(s) 15 .
- This information referred to herein as “statistical information”, contains statistics representing the past behavior of the user in using the application 22 – 24 and/or editor 25 . It is important to note that this statistical information is updated upon each use of the application 22 – 24 and/or the editor 25 , so that it reflects the user's usage patterns across multiple “remember” invocations by the “Remember” interface 16 . This means that the “remembering” or collecting of meta data by the “Remember” interface 16 may need to occur in every use of data, e.g., every time a form is filled or every time a web page is loaded.
- the statistical information indicates how frequently certain meta data or a particular combination of (key, value) pairs are used together. For instance, if the user functions as a private person or an employee whenever the user accesses a website A, then the “Remember” interface 16 maintains statistics on the frequency in which each of the role “private” and the role “employee” is used together with the URL of the website A.
- the “Retrieval” interface 18 performs search and retrieval operations to utilize the meta data stored in the database(s) 15 to assist the user in using the applications 22 – 24 .
- the “Retrieval” interface 18 interacts continuously with the currently active application 22 – 24 and determines when it should perform the search and retrieval operations. For instance, when the currently active browser 22 is about to display a form page, then the “Retrieval” interface 18 determines that its search and retrieval operations should be triggered at that instance of using the browser 22 .
- the search operation entails searching the database(s) 15 to provide most appropriate meta data (i.e., application data) that can be used in a particular instance of using the currently active application.
- the retrieving operation entails retrieving the located meta data from the database(s) 15 and supplying them to the active application 22 – 24 and/or the editor 25 .
- the search and retrieval operations will now be discussed in more detail.
- the search operation of the “Retrieval” interface 18 is accomplished using existing heuristics algorithms.
- Heuristics algorithms are well-known computer-implemented methods of iteratively solving problems based on prior usage data.
- the search operation relies on the stored context data and the statistical information to locate, using iterations, values (application data) that would be most appropriate for use in a current context. For instance, just before the browser is about to display a particular online form to be filled by the user, the “Retrieval” interface 18 searches for likely field values for the form based on the stored context data and the statistical information.
- the “Retrieval” interface 18 evaluates data pertaining to the online form as transmitted by the form sender to determine the current context of the form (e.g., field names of the form, URI of the form, form name, etc.). Then the “Retrieval” interface 18 compares iteratively the user's past behaviors (i.e., stored context data and statistical information) in filling out the same or similar form with the context of the current online form to locate values (application data) that the user would most likely enter into the fields of the current online form.
- the current context of the form is identified by different properties describing the current context, and such context properties may be assigned to different weights to indicate which properties should be given more weight during the search process.
- the “Retrieval” interface 18 retrieves the application data from the database(s) 15 and supplies them to the appropriate application through the CDSA 30 .
- the application then applies the received application data in the current context in which the application is used.
- the browser 22 receives the appropriate application data (field values) from the “Remember” interface 18 and automatically fills in the fields of the current form with the retrieved data field values. If multiple field values are found for each field of the form, then the multiple values may be displayed for the user's selection, e.g., in a drop-down list.
- the “Retrieval” interface 18 implements the high-level searches to encompass different variations of identified search requirements according to known search techniques and rules. For instance, there exist a variety of different search rules that can be applied to perform searches and the “Retrieval” interface 18 is configured to apply these search rules appropriately or according to certain criteria to improve the search process. Examples of such search rules may include, but are not limited to, “Case Independent Rule” for disregarding the case (upper case or lower case) of search terms and data being searched, “Sounds-Like Rule” for automatically including terms that sound like the search terms but are spelled differently, “URL Match Rule_for considering any URL having at least a portion of the search term, or any URL having a portion that matches the search term, etc.
- the “Retrieval” interface 18 can be configured so that certain search rules can be selectively applied to certain situations.
- the “Retrieval interface” 18 searches and retrieves certain stored application data suitable for use in the current context of using the applications 22 – 24 to enhance the experience of the user in using the applications 22 – 24 , whether it be browsing the Web, performing word-processing tasks, filling out computer forms, performing online transactions, or any other computer-based activities that can benefit from automation and customization by the device 10 .
- the meta data editor 25 allows the user to edit, sort, and organize the meta data stored in the database(s) 15 and to set certain criteria, if desired, by which the HAPI 14 operates its meta data storage, search and retrieval operations.
- the meta data editor 25 can also be used to request certain information from the user, such as the current role of the user.
- the meta data editor 25 preferably includes a Graphical User Interface (GUI) for communicating with the user and with the applications 22 – 24 .
- GUI Graphical User Interface
- One example of such a meta data editor GUI is found in a co-pending U.S. application Ser. No. 09/862,271, filed on May 22, 2001, assigned to the assignee of the present invention, and entitled “Data Cylinder for Managing Ad-hoc Data Sets”, which is herein fully incorporated by reference.
- the GUI disclosed in U.S. application Ser. No. 09/862,271 displays a cylindrically shaped graphical tool on a user's display device and allows sorting of different sets of meta data
- New entries to the database(s) 15 can be created and organized in many different ways. For instance, using the meta data editor 25 , the user can manually enter new meta data into the database(s) 15 , e.g., using the data cylinder GUI discussed in the above-described co-pending application. In a different way, if the user enters data into a computer form on a web page, the data associated with that web page and the form are automatically collected by the “Remember” interface 16 and stored in the database(s) 15 as discussed above. Before saving a new entry, the system can be configured to ask the user if the user desires to add certain meta data automatically in the database 15 . For example, a pop-up window, GUI or some other means can display a question such as this:
- the pop-up window or some other means could also list other addresses that are associated with this address field and invite the user to select from the list. These inquiries provide the user with an opportunity to enter and/or edit the meta data (if needed), not have it stored, or to indicate that it should be stored in some other manner, e.g., higher in the hierarchy or in association with a different site such as “www.ibm.com”. The user can also select the level of prompting desired, such as always, never, or prompt me when there is a matching field higher in the hierarchy.
- communication between the HAPI 14 and the currently active applications 22 – 24 and/or the editor 25 occurs in a secure manner because the CDSA 30 verifies the validity of the applications 22 – 24 and transmission using known verification techniques.
- the use of the CDSA configuration also permits the meta data to be stored in and accessed from the database(s) 15 in a secure manner, well protected from unauthorized users, e.g., hackers.
- the use of the CDSA is advantageous because the CDSA provides the security services discussed above and, at the same time, allows additional services provided by the HAPI 14 to be added easily as a plug-in to the CDSA.
- the overall architecture of the CDSA need not be changed to add such new services.
- the use of the CDSA is preferred, the present invention is not limited to such, and can be used in conjunction with other type of security architecture known in the art.
- the user's computing device 10 can include any software and/or hardware components typically found in conventional computing devices such as processors, user input devices (e.g., keyboard, keypad, mouse, optical pen, etc.), user input device adapters, a display device, a display device adaptor, a network interface (e.g., modem, etc.), operating systems, etc.
- the Web browser 22 is any browser application known in the art, such as Microsoft Internet Explorer, Netscape Navigator, etc.
- the word processor application 23 is any word processor application known in the art, e.g., MS Word, Corel's WordPerfect, etc.
- the other application(s) 24 can be any other applications known in the art, such as spreadsheets, photo editors, finance programs, graphics programs, etc.
- FIG. 3A shows an example of a computer form usable in the present invention
- FIG. 3B shows examples of (key, value) pairs obtainable from the computer form of FIG. 3A according to one embodiment of the present invention.
- FIG. 3A assume that a computer form 40 to be filled by a user is presented to the user on the device 10 .
- the computer form 40 includes at least two fields 41 and 42 , and a “Submit” button 43 for sending the completed form to an appropriate receiving party.
- the first field 41 is for entering the user ID and the second field 42 is for entering the pass code.
- the form 40 has the URL of “www.ibm.com.”
- the “Remember” interface 16 may collect meta data from the form 40 , which are represented as a plurality of (key, value) pairs as shown in FIG. 3B .
- a meta data group is established wherein the plurality of meta data groups constitute a meta data set.
- Each meta data group includes application data (in this case, a field value) and context data associated with that value.
- the meta data group A is established for the user ID field 41 .
- the meta data group A is composed of application data represented by a (key, value) pair 44 and context data represented by (key, value) pairs 45 .
- the (key, value) pair 44 indicates that the value V of the field (key) 41 is “MPeters”.
- the context data 45 indicates the context in which the field value “MPeters” is used.
- the context of the field 41 is identified to be as follows: the name of the field 41 is “euser”, the description of the field 41 is “User ID”, the form 40 having the field 41 is called “customerinfo”, the URL of the form 40 is “www.ibm.com,” the URL referred in the form 40 is “www.ibm.product.com,” and the role of the user (i.e., role in which the user functioned in filling out this form) is “manager”.
- the meta data group B established for the field 42 includes a (key, value) pair 46 indicating that the field value V is “ 123 ”, and context data 47 indicating the context of the field 42 .
- the meta data groups A, B, . . . are related to each other and constitute a meta data set wherein all the data belonging to the meta data set are related to each other.
- the user's role can be collected by requesting the user to specify the user's current role, e.g., using a pop-up window, the meta data editor 25 or some other means, or can be determined using other available meta data, e.g., by comparing the meta data with similar meta data stored in the database(s) 15 . This approach is applicable to all embodiments discussed herein.
- the “Retrieval” interface 18 may search the database(s) 15 based on the following exemplary search requirements:
- search criteria are formulated based on the form information for the form 40 , which the “Retrieval” interface 18 would have obtained from the browser 22 before the form 40 is displayed.
- the search criteria essentially represent the current context of filling in the new form with different weights (%) given to different context properties such as role, URL, descript, etc. This results in a search based on the weighted context corresponding to the current context of the new form.
- the weights assigned to the different context properties may be determined in advance and modified (if needed) by the system to find optimal solution(s), and they may differ depending on which application 22 – 24 is being used in what context.
- the role of the user is assigned to 50% of the weight, indicating that the role is important (importance represented by weights) and should be given certain weight (50%) during the search process.
- the “Retrieval” interface 18 executes the search in the database 15 by executing the heuristics algorithms to find optimal solution(s) that would satisfy these search requirements in an optimal manner.
- the statistical information is used in this process to find most appropriate (optimal) solutions.
- the optimal solutions(s) would be certain application data (e.g., likely values for the fields of the new form), stored in the database(s) 15 , that would be most appropriate for the current context of filling in the new form.
- the meta data organization of the present invention permits data to be searched by URLs, user role and/or other context data.
- FIG. 4 is a flowchart illustrating the processing steps of a method for managing meta data according to a simple embodiment of the present invention.
- the processing steps can be implemented in the user's computing device 10 of FIG. 2 .
- Step S 2 as the user utilizes one or more applications 22 – 24 and/or the editor 25 , meta data sets including application data and context data are collected at appropriate different instances of using the applications 22 – 24 and/or the editor 25 , and are stored in the database(s) 15 .
- the collection of the meta data sets is made by the “Remember” interface 16 of the HAPI 14 in the user's computing device 10 as it interacts with the applications 22 – 24 and/or the editor 25 as discussed above.
- Step S 4 statistical information indicating frequency in which certain application data are used together in the meta data sets, is determined and stored/updated in the database(s) 15 in association with the meta data sets.
- Step S 6 at certain instances of using the applications 22 – 24 , appropriate meta data (i.e., application data) are retrieved from the database(s) 15 by the “Retrieval” interface 18 based on the context data and the statistical information. This can be accomplished using existing heuristic algorithms to generate search requirements based on the current context of using the application 22 – 24 and to search the database(s) for application data that satisfy the search requirements.
- the user role for the current context may be determined by the system based on available data stored in the database, or by requesting it from the user, e.g., using a pop-up window or the GUI of the meta data editor 25 .
- Step S 8 the retrieved application data are applied appropriately in the current context of using the application 22 , 23 or 24 , for example, for displaying a web page, filling in a computer form, etc.
- Step S 10 the database(s) 15 are updated appropriately to store any user's modification in the current context and/or to update context data and statistical information in view of the current use of the application data.
- FIGS. 5–7 illustrate flowcharts illustrating the processing steps of a method for managing meta data in different contexts according to different embodiments of the present invention. All these processing steps can be implemented in the user's computing device 10 of FIG. 2 .
- FIG. 5 illustrates an application of the method of FIG. 4 in the context of displaying web pages.
- the user may prefer these web pages to be displayed in different page settings depending on the context of the page (i.e., URI of the page, role of the user, etc). For instance, the user may prefer to view a particular page in a larger font size than other pages, or to view all pages in the same predetermined settings when the user functions in a particular role, e.g., as an IBM employee.
- Step 20 of FIG. 5 as the user modifies the display settings of web pages from the default or predetermined settings, such page display setting data are collected and stored in the database(s) 15 in association with context data and statistical information as discussed above.
- the page display setting data and the context data will be represented as (key, value) pairs, whereas the statistical information may be represented numerically.
- the context data may identify the URI of the page, user role for that page, etc.
- Step S 22 when a particular web page needs to be displayed to the user (e.g., in response to the user's request), it is determined if there are any stored page display setting data that would be most appropriate for the current context of displaying the particular web page. This determination can be made by performing the search operation of the “Retrieval” interface 18 based on the current context of the particular web page as discussed above. For instance, the “Retrieval” interface 18 may search the database(s) to locate display setting data (application data) associated with context data that approximately matches the current context of the particular web page according to certain search requirements. If multiple application data sets are found, which is likely, the statistical information is relied upon to select an application data set from the multiple application data sets that is most frequently used by the user in a context most closely representing the current context.
- display setting data application data
- Step S 22 If the determination result at Step S 22 is “yes”, then the most appropriate page display setting data are retrieved from the database(s) 15 by the “Retrieval” interface 18 in Step S 24 . Then, in Step S 26 , the retrieved page display setting data are applied during the displaying process to display the current web page according to the retrieved data. To accomplish this, the “Retrieval” interface 18 sends the retrieved page display setting data to the Web browser 22 through the CDSA 30 and the browser 22 displays the current page using the retrieval display setting data.
- Step S 28 the database(s) 15 are updated appropriately. If the user has modified the page settings of the current web page, the modifications would be stored in the database(s) 15 . The context and statistical information will also be updated in view of the current use of the application data.
- Step S 22 if it is determined that there are no stored page display setting data that would be most appropriate for the current context of displaying the page, then the Web browser 22 at Step S 30 is configured to display the currently requested page using default settings or other predetermined settings.
- the present invention displays automatically different web pages according to different display settings that are preferred or likely preferred by the user. This feature enhances the Web browsing experience of the user significantly.
- processing steps of FIG. 5 are not limited to Web page display operations, but are applicable to any output operations.
- the steps of FIG. 5 are applicable to providing differential settings for the speech synthesis rendering of a web page.
- the steps of FIG. 5 are applicable to displaying files (e.g., word processor files, graphics files, etc.), where the context data may identify the names of the files, user roles, etc.
- FIG. 6 illustrates another application of the method of FIG. 4 for filling out a computer form according to one embodiment of the present invention.
- Step S 50 as the user enters values into the data fields of different computer forms, these values are collected and stored in the database(s) 15 in association with context data (e.g., URI of the form, field name, user role, etc.) and statistical data as discussed above.
- Step S 52 when a particular web page containing one or more forms needs to be displayed to the user (e.g., in response to the user's request), then the “Retrieval” interface 18 of the user's computing device 10 determines if there are any stored field values that would be most appropriate for the current context of filling out this particular form.
- Step S 52 the determination result at Step S 52 is “yes”, then in Step S 54 , the located field values are retrieved from the database(s) 15 by the “Retrieval” interface 18 . Then in Step S 56 , the “Retrieval” interface 18 further searches the database(s) 15 and retrieves from the database(s) 15 any other field values (if available) that may be related to the current context of the form, so that they can be used as alternative field values possibly usable to fill the fields of the current form. For example, the statistical information can be used to locate values that would be second-most appropriate for the current context of the form.
- Step S 58 all the fields of the current form are automatically and simultaneously filled in with the most appropriate field values retrieved in Step S 54 , e.g., under control of the Web browser 22 .
- the alternative field values retrieved in Step S 56 may also be displayed to the user for the user's consideration. This can be accomplished under control of the meta data editor 25 . For example, for each field on the current form, a drop-down list, a pop-up window or a graphical data cylinder displaying the alternative field values may appear on the user's screen so that the user can select, if desired, one of the alternative field values for the particular field. In this manner, the user can either accept the field values that are automatically filled in, or can select one of the alternative field values for the fields of the form. In addition or as an alternative, the user can manually enter the values into the form or modify the existing values.
- Step S 60 if the values displayed in the fields of the form are acceptable to the user, the user can instruct the device 10 to finalize the form by, e.g., selecting a “submit” button or performing any other designated action.
- Step S 62 once the form has been finalized, the database(s) are updated appropriately to store all the values entered in the fields of the current form and to update any context data and statistical information, as needed.
- the values entered for the fields can be values that are automatically filled in by the system, selected by the user from the alternative values, and/or manually entered by the user.
- Step S 52 determines whether there are no field values that would be most appropriate for the current context of filling in the form. If it is determined at Step S 52 that there are no field values that would be most appropriate for the current context of filling in the form, then the process moves to Step S 64 wherein the device 10 receives field values manually input by the user, for example, from a keyboard or keypad. Then the process returns to Step S 62 wherein the database(s) 15 are updated appropriately. Thereafter, the process ends.
- the present invention automatically suggests, using heuristics algorithms, possible values for the data fields of computer forms based on the user's prior form filling acts.
- the field names of the forms may not be identical, more accurate suggestions for the fields can be made.
- all the fields of the computer forms can be filled automatically at one time.
- FIG. 7 illustrates another application of the method of FIG. 4 in the context of filling in a “password-changing” form.
- a password-changing form is any known computer form for changing the user's password.
- Step S 70 as the user enters values into the data fields of different forms including password registration forms, the entered passwords and corresponding user IDs are collected and stored in the database(s) 15 in association with context data (e.g., URI of the form, user role, etc.) and statistical information as discussed above. For instance, when the user fills out an “IBM customer registration form” through the Internet, the particular user ID and the password entered by the user into the fields of this form are stored in the database(s) 15 in association with the statistical information and context data. It is also possible for the user to enter the password and/or user ID using only the meta data editor 25 , without filling in the conventional computer forms.
- context data e.g., URI of the form, user role, etc.
- Step S 72 when a particular password-changing form is displayed on the display unit of the device 10 , then the database(s) 15 are searched by the “Retrieval” interface 18 of the device 10 to locate a user ID/password combination that would be most appropriate for the current context of filling in the particular form. This is accomplished by performing the search and retrieve operations of the “Retrieval” interface 18 using heuristics algorithms as discussed above. The search operation will locate one or more user IDs and passwords that would be most appropriate for the fields of the current form.
- Step S 76 the located user ID(s) and password(s) are then retrieved from the database(s) 15 and automatically filled into the appropriate fields of the current password-changing form such as the “old ID” and “old password” fields.
- the user ID(s) are displayed so that the user can see what they are, whereas the password(s) are displayed in obfuscated format (e.g., using strings of asterisks) so that no one can see what the actual password(s) are. In this way, the password(s) can be protected from being used by unauthorized individuals.
- Step S 78 the user is requested to determine whether it is safe to reveal the actual password(s). This can be accomplished, e.g., using the meta data editor 25 , or by providing a pop-up window or prompt requesting the user's approval for revealing the actual password(s). If it is determined based on the user's input that the actual password(s) can be revealed (e.g., because no one is near the user), in Step S 80 the actual password(s) are revealed to the user. The displaying of the actual password(s) does not occur until the user informs the device 10 that it is O.K. to display the actual password(s).
- the user may need to enter a particular code or the like to verify that the user's approval for displaying the actual password(s) is an authorized one. If only one password is displayed, the user reviews it as well as the user ID to verify that they are acceptable. If multiple user IDs and/or passwords are displayed, then the user must select one of the displayed user IDs and one of the displayed passwords for the current form.
- Step S 82 the user enters a new password into the “new password” field in the form and the form is submitted (e.g., by pressing a “submit” button) to the form receiving party such as an online vendor server. Then the new password entered by the user is received by the HAPI 14 of the device 10 .
- Step S 84 the old password stored in the database(s) 15 in connection with the current context data (e.g., user ID, URI and/or role) is then replaced with the newly received password.
- the context data and statistical information may be updated in view of the current use of the form.
- Step S 86 if it is determined that the receiving party approves or accepts the new password (e.g., based on the review of a response from the receiving party), the process ends and the password changing process is completed successfully. However, if the receiving server does not accept the new password at Step S 86 , then the old password, instead of the new password, is stored back in the database(s) and the context and statistical information is updated appropriately. Then the process ends.
- Steps S 84 –S 88 the device 10 is configured so that the replacing of the old password with the new password does not occur until the receiving party accepts the new password. This eliminates the need to revert back to storing the old password in the database(s) if the receiving party rejects the new password.
- FIGS. 5–7 can be implemented together or simultaneously, if appropriate.
- the form page can be displayed according to the steps of FIG. 5 and be filled with field values according to the steps of FIG. 6 .
- the present invention has been discussed herein in connection with displaying or visually providing certain information to a user, e.g., in FIGS. 5 and 7 , the present invention is not limited to such, but is equally applicable to customizing and/or personalizing information to be rendered to a user in any manner, not just visually.
- the URI is used as a context property to search the database(s) 15 .
- the entire URI string is searched first. If no matches are found, then the beginning portions or other predetermined portions of the URI may be searched. For example, if the URI of “www.ibm.com/shopping/Thinkpad/my_order.htmI” is searched and no hits are found for this URI, then the system may be configured to look for an entry that matches just “www.ibm.com/shopping” or “www.ibm.com.”
- each field value that is suggested to the user is visibly identified for the user so that the user knows the identity of the field to which it pertains.
- suggested address values for the “address” field might be identified to the user as follows:
- ADDRESS (PERSONAL ROLE): 1000 J. Hind Street, Durham, N.C. 12345
- ADDRESS IBM EMPLOYEE ROLE: P.O. Box 12195, Research Triangle Park, N.C. 23232
- the meta data can be stored in the database(s) 15 in encrypted form, and can only be accessed if the user supplies proper credentials such as a user ID and password, biometric identification, or an X509 certificate and private key.
- This can be implemented using the security functions provided by the CDSA 30 , or by adding an encryption plug-in as a new service provider module to the CDSA 30 or other equivalent security architecture implementation.
- a particular website that the user is interacting with may employ well-established Secured Sockets Layer (SSL) encryption techniques.
- SSL Secured Sockets Layer
- the SSL techniques allow the website to perform an SSL handshake with the user's browser so that secured data can be transmitted between the user's device and the website server.
- Conventional browsers utilize a predetermined client side certificate/public-private key pair to perform the SSL handshake with the user's device, and, sometimes, this certificate/public-key is passed to the website server as a verification of the user_s identity.
- the Web browser 22 before performing an SSL handshake, is configured to communicate with the HAPI 14 which in turn selects a certificate/public-key from the database(s) 15 which is associated with the current context of selecting a certificate/public-key (e.g., user role and/or the URI that the browser is in the process of loading). If the search results by the HAPI 14 indicate that there are multiple certificates/public-keys that satisfy this criterion, then the system is configured to display to the user these certificates/public-keys by name in a pop-up window, a pull-down list, or some other manner, along with their associated context data (e.g., user role, URI), etc.
- a certificate/public-key e.g., user role and/or the URI that the browser is in the process of loading.
- One of the certificates/public-keys that is most likely to match the current situation of the user may be highlighted or distinguished from other certificates/public-keys in some manner.
- the user can then view the certificates/public-keys, accept or reject the certificate/public-key (if there is only one), or select one certificate/public-key (if there are multiple) to be used for the SSL handshake.
- the user is also able to set criteria by which the system operates in connection with the certificate/public-key selection. For instance, the user can indicate to the system whether a default certificate/public-key should be selected based on the role without further consultation with the user, or whether the user prefers to always be prompted when a default certificate/public-key has to be used.
- the HAPI 14 can be configured to retrieve the user's cookie based on the current role of the user (e.g., as an individual) and as a result, the browser will return the user's cookie that is appropriate for the current context.
- the database(s) 15 are organized hierarchically using any prior art database management techniques, but may be sorted according to different criteria.
- the meta data stored in the database(s) 15 are stored, preferably, in (key, value) pairs, and may be encoded, e.g., using known XML encoding or other encoding techniques. Certain keys in the (key, value) pairs may be predefined by the system, or created dynamically by the system and/or user.
- the present invention provides a system and method which studies the history of the user's past behaviors in using different applications and data editors and which provides intelligent recommendations and functions that would improve greatly the user's current experience of using the applications, whether it be for web browsing, data processing, communicating with other users, executing application programs, etc.
- the processing steps of the present invention can be implemented by computer programs in conjunction with hardware components if needed.
- Software programming code which embodies the present invention may be stored on any of a variety of known media such as a diskette, hard drive, CD-ROM, or read-only memory, and may be distributed on such media.
- the techniques and methods for embodying software programming code on physical media and/or distributing software code are known in the art.
Abstract
Description
Claims (64)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/051,558 US7206791B2 (en) | 2002-01-17 | 2002-01-17 | System and method for managing and securing meta data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/051,558 US7206791B2 (en) | 2002-01-17 | 2002-01-17 | System and method for managing and securing meta data |
Publications (2)
Publication Number | Publication Date |
---|---|
US20030135765A1 US20030135765A1 (en) | 2003-07-17 |
US7206791B2 true US7206791B2 (en) | 2007-04-17 |
Family
ID=21972038
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/051,558 Expired - Lifetime US7206791B2 (en) | 2002-01-17 | 2002-01-17 | System and method for managing and securing meta data |
Country Status (1)
Country | Link |
---|---|
US (1) | US7206791B2 (en) |
Cited By (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040039809A1 (en) * | 2002-06-03 | 2004-02-26 | Ranous Alexander Charles | Network subscriber usage recording system |
US20050027704A1 (en) * | 2003-07-30 | 2005-02-03 | Northwestern University | Method and system for assessing relevant properties of work contexts for use by information services |
US20050044192A1 (en) * | 2003-07-28 | 2005-02-24 | Applin John R. | Web site management system with link management functionality |
US20050060575A1 (en) * | 2003-09-15 | 2005-03-17 | Trethewey James R. | Method and apparatus for managing the privacy and disclosure of location information |
US20060135135A1 (en) * | 2004-12-22 | 2006-06-22 | Research In Motion Limited | Entering contacts in a communication message on a mobile device |
US20070043476A1 (en) * | 2005-08-22 | 2007-02-22 | Richards David M | Dynamically extensible and automatically configurable building automation system and architecture |
US20070055759A1 (en) * | 2005-08-22 | 2007-03-08 | Mccoy Sean M | Building automation system data management |
US20070055757A1 (en) * | 2005-08-22 | 2007-03-08 | Mairs Susan M | Building automation system facilitating user customization |
US20070055758A1 (en) * | 2005-08-22 | 2007-03-08 | Mccoy Sean M | Building automation system data management |
US20070055760A1 (en) * | 2005-08-22 | 2007-03-08 | Mccoy Sean M | Building automation system data management |
US20070055698A1 (en) * | 2005-08-22 | 2007-03-08 | Mccoy Sean M | Building automation system data management |
US20070067062A1 (en) * | 2005-08-22 | 2007-03-22 | Mairs Susan M | Building automation system facilitating user customization |
US20070112734A1 (en) * | 2005-11-14 | 2007-05-17 | Microsoft Corporation | Determining relevance of documents to a query based on identifier distance |
US20070209009A1 (en) * | 2006-03-02 | 2007-09-06 | Inventec Corporation | Display with settings changed according to user's ID and method thereof |
US20080082490A1 (en) * | 2006-09-28 | 2008-04-03 | Microsoft Corporation | Rich index to cloud-based resources |
US20080082782A1 (en) * | 2006-09-28 | 2008-04-03 | Microsoft Corporation | Location management of off-premise resources |
US20090193339A1 (en) * | 2008-01-29 | 2009-07-30 | International Business Machines Corporation | Socially-authored context-initiated processes |
US20100185630A1 (en) * | 2008-12-30 | 2010-07-22 | Microsoft Corporation | Morphing social networks based on user context |
US20100228805A1 (en) * | 2009-02-23 | 2010-09-09 | Mccoy Sean M | Log collection data harvester for use in a building automation system |
US7904186B2 (en) | 2005-08-22 | 2011-03-08 | Trane International, Inc. | Building automation system facilitating user customization |
US20110060997A1 (en) * | 2009-09-10 | 2011-03-10 | Usablenet Inc. | Methods for optimizing interaction with a form in a website page and systems thereof |
US20110208803A1 (en) * | 2010-02-23 | 2011-08-25 | Mccoy Sean M | Active device management for use in a building automation system |
US20110213867A1 (en) * | 2010-02-26 | 2011-09-01 | Mccoy Sean | Simultaneous connectivity and management across multiple building automation system networks |
US20110213502A1 (en) * | 2010-02-26 | 2011-09-01 | Uden David J | Automated air source and vav box association |
US8572685B2 (en) * | 2012-01-06 | 2013-10-29 | Timothy J. Caplis | Consolidated data services apparatus and method |
US8959113B2 (en) | 2011-03-30 | 2015-02-17 | Open Text S.A. | System, method and computer program product for managing tabulated metadata |
US9141628B1 (en) | 2008-11-07 | 2015-09-22 | Cloudlock, Inc. | Relationship model for modeling relationships between equivalent objects accessible over a network |
US20150281707A1 (en) * | 2011-05-27 | 2015-10-01 | Dolby Laboratories Licensing Corporation | Scalable Systems For Controlling Color Management Comprising Varying Levels Of Metadata |
US9477825B1 (en) | 2015-07-10 | 2016-10-25 | Trusted Mobile, Llc | System for transparent authentication across installed applications |
US9807604B2 (en) | 2013-07-19 | 2017-10-31 | Intel Corporation | Area-based location privacy management |
US10095675B2 (en) * | 2008-05-22 | 2018-10-09 | International Business Machines Corporation | Inputting data to a web page |
US10269235B2 (en) | 2016-08-26 | 2019-04-23 | Trane International Inc. | System and method to assist building automation system end user based on alarm parameters |
US10719855B1 (en) | 2007-06-18 | 2020-07-21 | Taboola.Com Ltd. | Internet content commercialization |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7287222B2 (en) * | 2002-01-31 | 2007-10-23 | Canon Kabushiki Kaisha | Information processing apparatus and method that determines effectiveness of metadata for editing information content |
US7448068B2 (en) * | 2002-10-21 | 2008-11-04 | Microsoft Corporation | Automatic client authentication for a wireless network protected by PEAP, EAP-TLS, or other extensible authentication protocols |
US7197698B2 (en) * | 2003-01-21 | 2007-03-27 | Canon Kabushiki Kaisha | Information processing method and apparatus |
US8849692B1 (en) | 2005-04-29 | 2014-09-30 | Google Inc. | Online advertising program enrollment program |
US7536641B2 (en) * | 2005-04-29 | 2009-05-19 | Google Inc. | Web page authoring tool for structured documents |
US7840648B1 (en) * | 2005-04-29 | 2010-11-23 | Google Inc. | Web-page authoring tool for automatic enrollment in advertising program |
US8762418B1 (en) | 2006-05-31 | 2014-06-24 | Oracle America, Inc. | Metadata that allows refiltering and data reclassification without accessing the data |
US8549588B2 (en) * | 2006-09-06 | 2013-10-01 | Devicescape Software, Inc. | Systems and methods for obtaining network access |
US8743778B2 (en) * | 2006-09-06 | 2014-06-03 | Devicescape Software, Inc. | Systems and methods for obtaining network credentials |
US9326138B2 (en) * | 2006-09-06 | 2016-04-26 | Devicescape Software, Inc. | Systems and methods for determining location over a network |
US8554830B2 (en) * | 2006-09-06 | 2013-10-08 | Devicescape Software, Inc. | Systems and methods for wireless network selection |
JP4623437B2 (en) * | 2008-06-03 | 2011-02-02 | コニカミノルタビジネステクノロジーズ株式会社 | Authentication system, authentication method, and authentication program |
JP5632380B2 (en) * | 2008-10-13 | 2014-11-26 | デバイススケープ・ソフトウェア・インコーポレーテッド | System and method for identifying a network |
US20100263022A1 (en) * | 2008-10-13 | 2010-10-14 | Devicescape Software, Inc. | Systems and Methods for Enhanced Smartclient Support |
CN103201138A (en) * | 2010-10-29 | 2013-07-10 | 本田技研工业株式会社 | Program rewriting system for vehicles |
WO2012112607A1 (en) | 2011-02-14 | 2012-08-23 | Devicescape Software, Inc. | Systems and methods for network curation |
CN106909811B (en) * | 2015-12-23 | 2020-07-03 | 腾讯科技(深圳)有限公司 | Method and device for processing user identification |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6014638A (en) * | 1996-05-29 | 2000-01-11 | America Online, Inc. | System for customizing computer displays in accordance with user preferences |
US6460141B1 (en) * | 1998-10-28 | 2002-10-01 | Rsa Security Inc. | Security and access management system for web-enabled and non-web-enabled applications and content on a computer network |
US6490679B1 (en) * | 1999-01-18 | 2002-12-03 | Shym Technology, Inc. | Seamless integration of application programs with security key infrastructure |
US6539375B2 (en) * | 1998-08-04 | 2003-03-25 | Microsoft Corporation | Method and system for generating and using a computer user's personal interest profile |
US6564170B2 (en) * | 2000-12-29 | 2003-05-13 | Hewlett-Packard Development Company, L.P. | Customizable user interfaces |
US6651217B1 (en) * | 1999-09-01 | 2003-11-18 | Microsoft Corporation | System and method for populating forms with previously used data values |
US6957390B2 (en) * | 2000-11-30 | 2005-10-18 | Mediacom.Net, Llc | Method and apparatus for providing dynamic information to a user via a visual display |
-
2002
- 2002-01-17 US US10/051,558 patent/US7206791B2/en not_active Expired - Lifetime
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6014638A (en) * | 1996-05-29 | 2000-01-11 | America Online, Inc. | System for customizing computer displays in accordance with user preferences |
US6539375B2 (en) * | 1998-08-04 | 2003-03-25 | Microsoft Corporation | Method and system for generating and using a computer user's personal interest profile |
US6460141B1 (en) * | 1998-10-28 | 2002-10-01 | Rsa Security Inc. | Security and access management system for web-enabled and non-web-enabled applications and content on a computer network |
US6490679B1 (en) * | 1999-01-18 | 2002-12-03 | Shym Technology, Inc. | Seamless integration of application programs with security key infrastructure |
US6651217B1 (en) * | 1999-09-01 | 2003-11-18 | Microsoft Corporation | System and method for populating forms with previously used data values |
US6957390B2 (en) * | 2000-11-30 | 2005-10-18 | Mediacom.Net, Llc | Method and apparatus for providing dynamic information to a user via a visual display |
US6564170B2 (en) * | 2000-12-29 | 2003-05-13 | Hewlett-Packard Development Company, L.P. | Customizable user interfaces |
Cited By (76)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8463617B2 (en) * | 2002-06-03 | 2013-06-11 | Hewlett-Packard Development Company, L.P. | Network subscriber usage recording system |
US20040039809A1 (en) * | 2002-06-03 | 2004-02-26 | Ranous Alexander Charles | Network subscriber usage recording system |
US20050044192A1 (en) * | 2003-07-28 | 2005-02-24 | Applin John R. | Web site management system with link management functionality |
US7836010B2 (en) * | 2003-07-30 | 2010-11-16 | Northwestern University | Method and system for assessing relevant properties of work contexts for use by information services |
US9348872B2 (en) | 2003-07-30 | 2016-05-24 | Northwestern University | Method and system for assessing relevant properties of work contexts for use by information services |
US20060212446A1 (en) * | 2003-07-30 | 2006-09-21 | Northwestern University | Method and system for assessing relevant properties of work contexts for use by information services |
US20060277168A1 (en) * | 2003-07-30 | 2006-12-07 | Northwestern University | Method and system for assessing relevant properties of work contexts for use by information services |
US20110238657A1 (en) * | 2003-07-30 | 2011-09-29 | Northwestern University | Method and system for assessing relevant properties of work contexts for use by information services |
US9348871B2 (en) | 2003-07-30 | 2016-05-24 | Northwestern University | Method and system for assessing relevant properties of work contexts for use by information services |
US9384245B2 (en) | 2003-07-30 | 2016-07-05 | Northwestern University | Method and system for assessing relevant properties of work contexts for use by information services |
US20050027704A1 (en) * | 2003-07-30 | 2005-02-03 | Northwestern University | Method and system for assessing relevant properties of work contexts for use by information services |
US7933906B2 (en) * | 2003-07-30 | 2011-04-26 | Northwestern University | Method and system for assessing relevant properties of work contexts for use by information services |
US8725725B2 (en) | 2003-07-30 | 2014-05-13 | Northwestern University | Method and system for assessing relevant properties of work contexts for use by information services |
US9367588B2 (en) | 2003-07-30 | 2016-06-14 | Northwestern University | Method and system for assessing relevant properties of work contexts for use by information services |
US20050060575A1 (en) * | 2003-09-15 | 2005-03-17 | Trethewey James R. | Method and apparatus for managing the privacy and disclosure of location information |
US9934386B2 (en) | 2003-09-15 | 2018-04-03 | Intel Corporation | Method and apparatus for managing the privacy and disclosure of location information |
US8473729B2 (en) * | 2003-09-15 | 2013-06-25 | Intel Corporation | Method and apparatus for managing the privacy and disclosure of location information |
US20110047250A1 (en) * | 2004-12-22 | 2011-02-24 | Research In Motion Limited | Entering contacts in a communication message on a mobile device |
US7831241B2 (en) | 2004-12-22 | 2010-11-09 | Research In Motion Limited | Entering contacts in a communication message on a mobile device |
US8675845B2 (en) | 2004-12-22 | 2014-03-18 | Blackberry Limited | Entering contacts in a communication message on a mobile device |
US7620387B2 (en) * | 2004-12-22 | 2009-11-17 | Research In Motion Limited | Entering contacts in a communication message on a mobile device |
US20060135135A1 (en) * | 2004-12-22 | 2006-06-22 | Research In Motion Limited | Entering contacts in a communication message on a mobile device |
US20100029252A1 (en) * | 2004-12-22 | 2010-02-04 | Research In Motion Limited | Entering contacts in a communication message on a mobile device |
US20070055758A1 (en) * | 2005-08-22 | 2007-03-08 | Mccoy Sean M | Building automation system data management |
US7917232B2 (en) | 2005-08-22 | 2011-03-29 | Trane International Inc. | Building automation system data management |
US8099178B2 (en) | 2005-08-22 | 2012-01-17 | Trane International Inc. | Building automation system facilitating user customization |
US8055386B2 (en) | 2005-08-22 | 2011-11-08 | Trane International Inc. | Building automation system data management |
US20070067062A1 (en) * | 2005-08-22 | 2007-03-22 | Mairs Susan M | Building automation system facilitating user customization |
US7870090B2 (en) | 2005-08-22 | 2011-01-11 | Trane International Inc. | Building automation system date management |
US20070055698A1 (en) * | 2005-08-22 | 2007-03-08 | Mccoy Sean M | Building automation system data management |
US7904186B2 (en) | 2005-08-22 | 2011-03-08 | Trane International, Inc. | Building automation system facilitating user customization |
US20070055756A1 (en) * | 2005-08-22 | 2007-03-08 | Richards David M | Dynamically extensible and automatically configurable building automation system and architecture |
US8055387B2 (en) | 2005-08-22 | 2011-11-08 | Trane International Inc. | Building automation system data management |
US20070055760A1 (en) * | 2005-08-22 | 2007-03-08 | Mccoy Sean M | Building automation system data management |
US8290627B2 (en) | 2005-08-22 | 2012-10-16 | Trane International Inc. | Dynamically extensible and automatically configurable building automation system and architecture |
US20070055757A1 (en) * | 2005-08-22 | 2007-03-08 | Mairs Susan M | Building automation system facilitating user customization |
US20070055759A1 (en) * | 2005-08-22 | 2007-03-08 | Mccoy Sean M | Building automation system data management |
US8024054B2 (en) | 2005-08-22 | 2011-09-20 | Trane International, Inc. | Building automation system facilitating user customization |
US20070043476A1 (en) * | 2005-08-22 | 2007-02-22 | Richards David M | Dynamically extensible and automatically configurable building automation system and architecture |
US8050801B2 (en) | 2005-08-22 | 2011-11-01 | Trane International Inc. | Dynamically extensible and automatically configurable building automation system and architecture |
US7630964B2 (en) * | 2005-11-14 | 2009-12-08 | Microsoft Corporation | Determining relevance of documents to a query based on identifier distance |
US20070112734A1 (en) * | 2005-11-14 | 2007-05-17 | Microsoft Corporation | Determining relevance of documents to a query based on identifier distance |
US20070209009A1 (en) * | 2006-03-02 | 2007-09-06 | Inventec Corporation | Display with settings changed according to user's ID and method thereof |
US20080082782A1 (en) * | 2006-09-28 | 2008-04-03 | Microsoft Corporation | Location management of off-premise resources |
US7836056B2 (en) | 2006-09-28 | 2010-11-16 | Microsoft Corporation | Location management of off-premise resources |
US20080082490A1 (en) * | 2006-09-28 | 2008-04-03 | Microsoft Corporation | Rich index to cloud-based resources |
US11526913B2 (en) | 2007-06-18 | 2022-12-13 | Taboola.Com Ltd. | Real-time display adaptation |
US10719855B1 (en) | 2007-06-18 | 2020-07-21 | Taboola.Com Ltd. | Internet content commercialization |
US20090193339A1 (en) * | 2008-01-29 | 2009-07-30 | International Business Machines Corporation | Socially-authored context-initiated processes |
US11222169B2 (en) * | 2008-05-22 | 2022-01-11 | International Business Machines Corporation | Inputting data to a web page |
US10095675B2 (en) * | 2008-05-22 | 2018-10-09 | International Business Machines Corporation | Inputting data to a web page |
US9141628B1 (en) | 2008-11-07 | 2015-09-22 | Cloudlock, Inc. | Relationship model for modeling relationships between equivalent objects accessible over a network |
US20100185630A1 (en) * | 2008-12-30 | 2010-07-22 | Microsoft Corporation | Morphing social networks based on user context |
US8180824B2 (en) | 2009-02-23 | 2012-05-15 | Trane International, Inc. | Log collection data harvester for use in a building automation system |
US8635338B2 (en) | 2009-02-23 | 2014-01-21 | Trane International, Inc. | Log collection data harvester for use in a building automation system |
US20100228805A1 (en) * | 2009-02-23 | 2010-09-09 | Mccoy Sean M | Log collection data harvester for use in a building automation system |
US10198414B2 (en) * | 2009-09-10 | 2019-02-05 | Usablenet Inc. | Methods for optimizing interaction with a form in a website page and systems thereof |
US20110060997A1 (en) * | 2009-09-10 | 2011-03-10 | Usablenet Inc. | Methods for optimizing interaction with a form in a website page and systems thereof |
US9258201B2 (en) | 2010-02-23 | 2016-02-09 | Trane International Inc. | Active device management for use in a building automation system |
US20110208803A1 (en) * | 2010-02-23 | 2011-08-25 | Mccoy Sean M | Active device management for use in a building automation system |
US8793022B2 (en) | 2010-02-26 | 2014-07-29 | Trane International, Inc. | Automated air source and VAV box association |
US9605859B2 (en) | 2010-02-26 | 2017-03-28 | Trane International Inc. | Automated air source and VAV box association |
US20110213502A1 (en) * | 2010-02-26 | 2011-09-01 | Uden David J | Automated air source and vav box association |
US20110213867A1 (en) * | 2010-02-26 | 2011-09-01 | Mccoy Sean | Simultaneous connectivity and management across multiple building automation system networks |
US8219660B2 (en) | 2010-02-26 | 2012-07-10 | Trane International Inc. | Simultaneous connectivity and management across multiple building automation system networks |
US8959113B2 (en) | 2011-03-30 | 2015-02-17 | Open Text S.A. | System, method and computer program product for managing tabulated metadata |
US11917171B2 (en) | 2011-05-27 | 2024-02-27 | Dolby Laboratories Licensing Corporation | Scalable systems for controlling color management comprising varying levels of metadata |
US11736703B2 (en) | 2011-05-27 | 2023-08-22 | Dolby Laboratories Licensing Corporation | Scalable systems for controlling color management comprising varying levels of metadata |
US20150281707A1 (en) * | 2011-05-27 | 2015-10-01 | Dolby Laboratories Licensing Corporation | Scalable Systems For Controlling Color Management Comprising Varying Levels Of Metadata |
US11218709B2 (en) * | 2011-05-27 | 2022-01-04 | Dolby Laboratories Licensing Corporation | Scalable systems for controlling color management comprising varying levels of metadata |
US8572685B2 (en) * | 2012-01-06 | 2013-10-29 | Timothy J. Caplis | Consolidated data services apparatus and method |
US9128782B2 (en) | 2012-01-06 | 2015-09-08 | Tymphany Hong Kong Limited | Consolidated data services apparatus and method |
US9807604B2 (en) | 2013-07-19 | 2017-10-31 | Intel Corporation | Area-based location privacy management |
US9992023B2 (en) | 2015-07-10 | 2018-06-05 | Trusted Mobile, Llc | System for transparent authentication across installed applications |
US9477825B1 (en) | 2015-07-10 | 2016-10-25 | Trusted Mobile, Llc | System for transparent authentication across installed applications |
US10269235B2 (en) | 2016-08-26 | 2019-04-23 | Trane International Inc. | System and method to assist building automation system end user based on alarm parameters |
Also Published As
Publication number | Publication date |
---|---|
US20030135765A1 (en) | 2003-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7206791B2 (en) | System and method for managing and securing meta data | |
US20030135507A1 (en) | System and method for managing and securing meta data using central repository | |
US10963837B2 (en) | Systems, methods, and software for integration of online research tasks into law firm workflow | |
US6192380B1 (en) | Automatic web based form fill-in | |
US7490242B2 (en) | Secure management of authentication information | |
US7401289B2 (en) | Layout generator system and method | |
US8769133B2 (en) | Network-based verification and fraud-prevention system | |
CA2249759C (en) | Information delivery system and method including restriction processing | |
US7558795B2 (en) | Method and apparatus for tracking functional states of a Web-site and reporting results to web developers | |
US5802518A (en) | Information delivery system and method | |
US20020059369A1 (en) | Method and apparatus for creating and distributing non-sensitized information summaries to users | |
US20090319529A1 (en) | Information Rights Management | |
US20020138572A1 (en) | Determining a user's groups | |
US20130018984A1 (en) | Information card federation point tracking and management | |
EP1370931A1 (en) | Authorizing requesting entity to operate upon data structures | |
US20060235886A1 (en) | Method, system and software for centralized generation and storage of individualized requests and results | |
EP1589398B1 (en) | Method and system for displaying and managing security information | |
US7155678B2 (en) | Method, system, and software for generating and displaying custom views for accessing multiple applications | |
US20030018910A1 (en) | System and methods for providing multi-level security in a network at the application level | |
US20120005169A1 (en) | Method and system for securing data | |
US20030052912A1 (en) | Method and system for cell rendering and manipulation | |
US20050114523A1 (en) | Computer-implemented method, system and program product for providing real-time access to information on a computer system over a network | |
WO2010008397A1 (en) | System and method for automated filling of web-based forms | |
US20030182286A1 (en) | System and method to save, secure and access records of discussion | |
JP2007249540A (en) | Business system for organization, operation control method, and terminal device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HIND, JOHN R.;STOCKTON, MARCIA L.;REEL/FRAME:012526/0786 Effective date: 20020115 |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
AS | Assignment |
Owner name: GOOGLE INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INTERNATIONAL BUSINESS MACHINES CORPORATION;REEL/FRAME:026569/0275 Effective date: 20110630 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
AS | Assignment |
Owner name: GOOGLE LLC, CALIFORNIA Free format text: CHANGE OF NAME;ASSIGNOR:GOOGLE INC.;REEL/FRAME:044127/0735 Effective date: 20170929 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 12 |