This invention is related in general to presentation of electronic information and more specifically to selective presentation of portions of electronic messages to different recipients.
Various forms of electronic messaging are in widespread use. Electronic mail (“email”), real-time chat, message boards or postings, web logs (“blogs”), web pages, etc., are each forms of electronic messaging. Some of these forms of electronic messaging play valuable roles in sensitive communications such as in business, government, or other applications where an electronic message is designed for a limited number or type of recipient.
For example, email systems provide many tools for users to maintain address books or contact lists, predefine group or distribution lists, set priorities, set delivery options, etc. However, such tools typically operate at a per-message level so that, for example, it is difficult or inefficient (and sometimes not possible) for a sender to provide an email message to multiple recipients where different recipients are only permitted to view selected portions of the email content.
A message originator, such as an author of an email, can designate “section access settings” which can selectively permit or deny access of portions of the email's content. Recipients who are not authorized may not exercise the access right upon the designated portion of content. In a preferred embodiment, the entire email content, including restricted portions, is provided to all recipients, including unauthorized recipients. Unauthorized recipients are prevented from exercising the access right even though the restricted portion has been received.
An email originator is provided with various controls and options to designate and control how different portions of an email's content are viewed. In a preferred embodiment the section access system is integrated into existing office tools or applications such as an email or other messaging program, directory services program, file maintenance system, etc. The section access system can use any suitable protocol such as Lightweight Directory Access Protocol (LDAP) to integrate with any Directory Server or a Repository such as Oracle Virtual Directory (OVD), etc. Other applications or functionality can be provided for use with embodiments of the invention such as by using an Application Program Interface (API), or other standard protocol or standalone or integrated application, as desired.
Each defined portion or section within an email message may have different section access settings. So, for example, a name of a recipient can be used to grant or deny access to a portion. A role such as “manager,” “vice president,” “group A,” or other person's name, title, management position, departmental organization, or designation can be used to set access rights. Types of access rights can include viewing, editing, forwarding, copying, etc. A particular embodiment uses tags in the email content, itself, to demarcate portions. Different approaches to controlling the access rights are possible. For example, public/private key pair encryption systems can be used. Other rights management or authentication approaches can also be used, as described below.
An originator or other sender of a message can invoke section access settings by using a menu or other control system. Default settings can be used so that a sender does not necessarily need to specify settings all the time. For example, sections or types of text that have had restricted access settings before can be automatically identified and the prior (or default) settings can be used again without the need for a sender to specify the settings.
Presentation of an email with section access settings can be configured in different ways. For example, recipients can be shown that portions of the email content have been removed from access. A line of text or a symbol can indicate that text has been omitted. Recipients who are able to view portions of content that are blocked from one or more other recipients may see the restricted portions indicated as, for example, by highlighting the text, indenting text, using a different font, rendering, animation or other presentation effect. Names or groups of restricted or permitted recipients may be shown to one or more of the recipients.
In a particular embodiment, a sender of the email message can set a forwarding permission on a per recipient level. If recipient A, who does not have the forward right, forwards the mail, the mail is received as a blank mail. The content is present, but is not visible to any of the recipients forwarded subsequently. A recipient who has the forward right is allowed to forward the mail and the section access settings, including view permissions, if any, are applied on the recipient end. A particular embodiment of the above can be implemented by a setting that denies any or all of the recipients from further forwarding the mail. In this case even if an attempt is made to forward the mail, the recipient will see only a blank mail. Even though different views are provided to different recipients, the same message version (e.g., the entire email content) can be provided to each recipient so that a recipient may be able to view portions that a sender (other than the originator) could not view.
A particular embodiment of the invention allows an email originator to define “section access settings” for different parts of an email message. Each section or portion can have one or more rights associated with it such as to allow a specific one or more recipients to view, edit, copy or perform some other action with or on the corresponding section. In a particular embodiment, forward permissions apply at a per mail or per recipient level, and NOT at a sectional level.
Subject line 116 includes a subject description or title. Although section access settings are described below primarily with respect to the message body, other embodiments may use such section access setting in any other input area of an email message that could be displayed or used by a recipient. For example, a message originator may wish to prevent some recipients from seeing part of a subject line, attachments, security settings, other recipients, etc.
Message body 120 includes text entered by the message originator to arrive at the display shown in
Pointer 140 is placed within box 130 and a mouse input device is right-clicked to bring up menu 150. Menu 150 can include standard word-processing options such as “Cut,” “Copy,” “Paste,” etc. Also included within menu 150 is an “AssignRights” option 160.
Tag 182 shows that the right “VIEWABLE” is set to allow the predefined group “SVP+” to have viewing access. “SVP+” can correspond with, or be mapped to, a group that is defined by the originator locally or by an administrator or other person who has made the group definition available globally to other users of the email system. Tag 200 terminates the demarcated text to which tag 182 applies.
Tag 184 shows that the originator has selected the text between tag 184 and tag 186 to not be viewable by the engineering departments. The attribute names and values such as “Dept” (an attribute) and “Eng” (a variable) can be defined when the features are implemented in an email system or other application. In such a case they would be defined by a software manufacturer. Alternatively, a system administrator can define the variables at a time of setting up or configuring an email system with section access setting ability. Another possibility is to allow users of the system to define attribute/values and other parameters of the system.
The text between tags 188 and 190 includes a hyperlink that has an indicator which is only viewable and operable by a recipient named “Lakshmi Dutt,” as defined by the “LINKABLE” tag. The hyperlink is to an external document, such as a document on the company network or the Internet, so that recipients other than Lakshmi Dutt will not be able to access the hyperlink or external document, or even to know that the word “Marketing” is associated with a hyperlink.
Text between tags 194 and 200 is only viewable by a group of recipients identified as belonging to a “Special Product Dev Team”. In the present example, it is assumed that the originator has set a “no forwarding” option for the email message. This prevents any recipient from forwarding viewable content to other recipients. As described, below, if a message with forward-prevented content is forwarded, the recipient of the forwarded message is not able to view the message content but may still see the sender's name. In this case, as in the other transfer cases discussed, herein, the entire content of the message can still be transferred to the recipients upon forwarding, but the ability to present, or view, the content is prevented at the recipients' client processes.
For example, view 302 represents the complete content as displayed to the originator of the message, as shown in
View 320 shows a rendering of the content to a recipient who is a Senior VP or above, who is not on a Special Products Development Team, who is not in Engineering and who is not Lakshmi Dutt. In view 320, the untagged text is shown at 322 and 326 in the same manner it is displayed for view 302 (and all other renderings of the message). In a particular embodiment, the entire content and tags of
In view 320, the type data for a recipient in the category of {Senior VP or above; NOT Special Product Dev; NOT Engineering; NOT Lakshmi Dutt} permits viewing of text 324 delimited by tags 182 and 192. The text between tags 182 and 192 is controlled by the tag <VIEWABLE=SVP+> so that, since the recipients of view 320 are at Senior VP or above, the text 182/192 is viewable to the recipients in this category. Similarly, text 184/186 has the condition <VIEWABLE=(NOT Dept=Eng)> and since the recipients in this category are not in the engineering department the condition is met so text 184/186 is viewable. The rendering of 188/190 has the condition <LINKABLE=Lakshmi Dutt> which is a condition that is not met by the recipients in this category. Since the condition is not met the link for 188/190 is not shown or enabled. Typically, hyperlinks can be shown by underlining, different colored text, etc. Such an indicator would not be visible to the recipients in the category of view 320 and no ability to click the word “Marketing” to see the associated document is provided. The text 194/200 (see 308) is not rendered in view 320 since this category of recipient are not members of the Special Products Development Team. The rendering of view 320 is shown in
View 330 is presented to recipients in the category of {Lakshmi; SVP or Above; NOT Special Products Dev; NOT Engineering}. In this view, text 182/192 is visible as with view 320. However, since this recipient is Lakshmi Dutt (or an account, device or process associated with or permitted to Lakshmi Dutt), the condition for 188/190 is also met so that the word “Marketing” is shown with a hyperlink indicator (i.e., underlined in this case) and the recipient, Lakshmi Dutt, can click the link to obtain the document, if desired. The text 194/200 (see 308) is not rendered in view 320 since Lakshmi Dutt is not a member of the Special Products Development Team. The rendering for view 330 is shown in
View 340 illustrates the rendering of content to users who are at Senior VP or lower but who named in the originator's group email “Company Management” to whom the original message has been sent. As shown, view 340 only presents, or renders, the untagged text since the text 182/192 and 194/200 does not meet their section access setting conditions. The rendering for view 330 is shown at
View 350 shows a rendering of the content to a user who is in category 348 {SVP or Above; NOT Lakshmi Dutt; is Engineering; is Special Products Dev}. A user in this category is presented with all of the original text except for 184/186 (since the user is Engineering, i.e., they are not “NOT Engineering”) and 188/190 (since the user is not Lakshmi). A rendering for view 350 is shown in
View 360 shows the event where a recipient of view 340 has forwarded the message to a recipient in category 348. Since forwarding ability has been prevented by the originator, no recipients of a forwarded version of the email are able to see any of the content of the email. Note that any forwarding of the content, even from a user back to the same user, would prevent the presentation of the email content. In a particular embodiment, a recipient of a forwarded message where forwarding is prevented still receives a message in the recipient's in-box. The forwarding sender's name appears in the “From:” line but the subject, text body, and other fields will be blank. This allows a recipient of a forward-prevented message from detecting that the forwarding sender intended to send something that was prevented from view or other access by the recipient. Other types of “transfer” related conditions on text or other portions of a message are possible. For example, a restriction can be made to prevent the message portion from being presented to a “CC” recipient, “BCC” recipient, forwarding beyond a time interval (e.g., no transfer after 1 week), etc.
Variations are possible from the specific mechanisms discussed above. For example, various approaches can be used to maintain and check a recipient's type data against a section access setting condition. A user's category properties can be maintained by a corporate email system, virtual directory system, shared database records, attributes in a user's, device's or application's account record; etc. The type data can be set up and maintained by an administrator/manager human or process or by the users, themselves, or by a combination of such entities.
To further illustrate features, several use cases are described, as follows:
Use Case 1: An originator is organizing a birthday party for a co-worker. For a mail that has 10 recipients, 9 people can be flagged to see the entire content, whereas the birthday boy will see only a portion of the mail. The portion that is visible to others but not to the birthday boy could include information such as surprise to be shared, cost and so on.
Use Case 2: VP1 needs to send a mail to Director D1 and Manager M1. This mail has sensitive content that the VP does not intend to share with anyone other than his directors. So, the VP sends one mail with all the information. The sensitive data is “marked” with section access settings such that only Directors and above in the organization hierarchy are allowed to be privy to that information. The other section of the mail is marked such that Managers and above will be privy to it. The rest of the mail is Generic (G) and everyone is allowed to read it.
Next, Manager M1 replies with text (M1D) to VP1's mail, and adds Director 2 and his own (M1) direct to the mail. Now, VP1 sees content D+M+G+M1D; Director D1 sees content D+M+G+M1D; Director D2 sees content D+M+G+M1D; and M1's Direct sees content G+M1D. In a particular embodiment the process of receiving and viewing message content is transparent (i.e., not noticeably different from receiving other email without features described herein) to the recipient. The recipient is unaware of the presence of “secure” information that he/she is not privy to.
Use Case 3: Embodiments of the invention can provide individual levels of segregation of information. For example, a VP needs to send a mail to Director (D) and Manager (M). This mail has sensitive content that the VP does not intend to share with anyone other than Director D only. The other content is visible to the manager M. Manager M replies to both the Director and the VP. A part of this mail is visible only to the director and the rest of the mail is visible to both the director and the VP. Director D sees content M+D while Manager M sees content M.
Next, Manager M replies with text (RG+RD) to the VP's mail with content that is visible only to the Director (RD) and the other part that is visible to both the Director and the VP (RG). VP sees content D+M+RG while Director D sees content D+M+RG+RD. Again, the receipt and presentation of different views of a same message content can be transparent to the recipients (and, in some cases, senders).
In
In a particular embodiment, an email server acts as a hub for email exchanges in a corporate environment. For example, Server1 and users USER1-3 can be in communication in a corporate network as, for example, via an email system. Users or servers such as USER4, USER5 and Server2 can be at geographically distant locations from the corporate environment and can also be part of the email system. An email server program may reside on Server1 and each user can operate an email client. In other applications, different parts of the email system (or other communication system) can reside in whole or in part on any of the components shown in
In one embodiment, encryption is used in order to protect portions of the message content from various types of rights access according to the section access settings. For example, text between tags that is restricted from viewing can be encrypted. The tags themselves may also be encrypted so that the nature of the condition required to access protected text is not disclosed. A public key system along with a key server and optional authentication server (or other secure access control components) can be used to require a client process to be verified for access. The verification/authentication can be performed by a process at the client's side or it can be a process executing in the email server or on a dedicated server. Any suitable type of authentication/encryption can be adapted for use with embodiments of the invention to control access rights. A particular embodiment uses the access control mechanisms included within a virtual directory system such as Oracle Virtual Directory (OVD, e.g., version 10.1.4), manufactured and distributed by Oracle Corp. OVD is an identity aggregator that has around 400+adaptors that talk to the underlying Identity Stores (LDAP based, File System, Database, and so on) An application meets its requirements by querying the OVD instead of the individual underlying Identity stores to retrieve the user attributes and/or authenticate the user. In this manner, corporate email clients are able to retrieve the user details from the directory (Auto complete feature, etc.) Other suitable security systems may be employed.
Although embodiments of the invention have been described as features in other existing applications, the functionality described herein may be deployed in any suitable manner. For example, rather than integrating the features into a third-party email program, the features can be provided as a stand-alone email program, a web-based application, an applet, widget, plug-in, or in any other suitable manner. Functions can be implemented in software, hardware or a combination of both, as desired.
Although embodiments have been described primarily with the use of tags, other types of tags or way of associating a condition with a portion of a message can be used. For example, codes included with an email message can point to address locations or otherwise serve as indexes into the message content to describe the condition to be met and the start and/or end of the text to which the condition applies. The codes can be stored in a file that is separate from the message content. A plugin-based mechanism can be used. Many different message portions can be the subject of a condition or restriction. In addition to text, other message portions include attachments, audio, images, hyperlinks, etc.
Any suitable programming language can be used to implement the routines including C, C++, Java, assembly language, etc. Different programming techniques can be employed such as procedural or object oriented. The routines can execute on a single processing device or multiple processors. Although the steps, operations or computations may be presented in a specific order, this order may be changed in different embodiments. In some embodiments, multiple steps shown as sequential in this specification can be performed at the same time. The sequence of operations described herein can be interrupted, suspended, or otherwise controlled by another process, such as an operating system, kernel, etc. The routines can operate in an operating system environment or as stand-alone routines occupying all, or a substantial part, of the system processing.
In the description herein, numerous specific details are provided, such as examples of components and/or methods, to provide a thorough understanding of embodiments of the present invention. One skilled in the relevant art will recognize, however, that an embodiment of the invention can be practiced without one or more of the specific details, or with other apparatus, systems, assemblies, methods, components, materials, parts, and/or the like. In other instances, well-known structures, materials, or operations are not specifically shown or described in detail to avoid obscuring aspects of embodiments of the present invention.
A “computer-readable storage device” can include electronic, magnetic, optical, electromagnetic, mechanical and/or electromechanical media, devices or software. In general, any suitable apparatus for providing information such as instructions or data to a processor can be used to achieve all or a portion of the functionality described herein.
A “processor” or “process” can include any hardware and/or software system, mechanism or component that processes data, signals or other information. A processor can include a system with a general-purpose central processing unit, multiple processing units, dedicated circuitry for achieving functionality, or other systems. Processing need not be limited to a geographic location, or have temporal limitations. For example, a processor can perform its functions in “real time,” “offline,” in a “batch mode,” etc. Portions of processing can be performed at different times and at different locations, by different (or the same) processing systems.
Reference throughout this specification to “one embodiment”, “an embodiment”, or “a specific embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention and not necessarily in all embodiments. Thus, respective appearances of the phrases “in one embodiment”, “in an embodiment”, or “in a specific embodiment” in various places throughout this specification are not necessarily referring to the same embodiment. Furthermore, the particular features, structures, or characteristics of any specific embodiment of the present invention may be combined in any suitable manner with one or more other embodiments. It is to be understood that other variations and modifications of the embodiments of the present invention described and illustrated herein are possible in light of the teachings herein and are to be considered as part of the spirit and scope of the present invention.
Embodiments of the invention may be implemented by using a programmed general purpose digital computer, by using application specific integrated circuits, programmable logic devices, field programmable gate arrays, optical, chemical, biological, quantum or nanoengineered systems, components and mechanisms may be used. In general, the functions described herein can be achieved by any means as is known in the art. Distributed, or networked systems, components and circuits can be used. Communication, or transfer, of data may be wired, wireless, or by any other means.
It will also be appreciated that one or more of the elements depicted in the drawings/figures can also be implemented in a more separated or integrated manner, or even removed or rendered as inoperable in certain cases, as is useful in accordance with a particular application. It is also within the spirit and scope of the present invention to implement a program or code that can be stored in a machine-readable medium to permit a computer to perform any of the methods described above.
Additionally, any signal arrows in the drawings/Figures should be considered only as exemplary, and not limiting, unless otherwise specifically noted. Furthermore, the term “or” as used herein is generally intended to mean “and/or” unless otherwise indicated. Combinations of components or steps will also be considered as being noted, where terminology is foreseen as rendering the ability to separate or combine is unclear.
As used in the description herein and throughout the claims that follow, “a”, “an”, and “the” includes plural references unless the context clearly dictates otherwise. Also, as used in the description herein and throughout the claims that follow, the meaning of “in” includes “in” and “on” unless the context clearly dictates otherwise.
The foregoing description of illustrated embodiments of the present invention, including what is described in the Abstract, is not intended to be exhaustive or to limit the invention to the precise forms disclosed herein. While specific embodiments of, and examples for, the invention are described herein for illustrative purposes only, various equivalent modifications are possible within the spirit and scope of the present invention, as those skilled in the relevant art will recognize and appreciate. As indicated, these modifications may be made to the present invention in light of the foregoing description of illustrated embodiments of the present invention and are to be included within the spirit and scope of the present invention.
Thus, while embodiments of the present invention have been described herein with reference to particular embodiments thereof, a latitude of modification, various changes and substitutions are intended in the foregoing disclosures, and it will be appreciated that in some instances some features of embodiments of the invention will be employed without a corresponding use of other features without departing from the scope and spirit of the invention as set forth. Therefore, many modifications may be made to adapt a particular situation or material to the essential scope and spirit of the present invention. It is intended that the invention not be limited to the particular terms used in following claims and/or to the particular embodiment disclosed as the best mode contemplated for carrying out this invention, but that the invention will include any and all embodiments and equivalents falling within the scope of the appended claims.