← Back to Patent Explorer
US6339826B2 Expired / Lapsed US ⏱️ 0.0 years remaining

Client-server system for maintaining a user desktop consistent with server application user access permissions

Assignee: International Business Machines Corp
•
Filing: 1998-05-05
•
Granted: 2002-01-15
•
Expires: 2018-05-05
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system with a network interconnecting a server and a plurality of user stations. The server stores a plurality of user applications for downloading to user stations and further stores access permissions for the applications for each user. When a user attempts to log onto the system, the server uses the user's log-on identifier to build a list of applications for which the user has access permission. The server downloads to the station a list of applications to which the user has access permission. The user station uses the list to build a folder containing only the applications from the list to which the user has access permission. The system further verifies from the list that the user has access to applications that are represented by objects that the user may have added to his or her desktop at an earlier time. For each user desktop preference specified by the user at an earlier time that corresponds to a user application, the access permission for the user to the user application is checked from the list, and, if the application is not included on the list, the desktop object representing the application is removed from the desktop.

Inventors

  • 👤 Kent Fillmore Hayes, Jr.
  • 👤 Brett Graham King

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-01 05:55
CPC Classifications
G; G06; G06F; G06F21/00; G06F21/10; G06F21/12; G06F21/121; G06F21/60; G06F21/604; G06F21/62; G06F21/6218; G06F9/00; G06F9/06; G06F9/44; G06F9/451; H; H04; H04L; H04L41/00; H04L41/08; H04L41/0893; H04L41/22; H04L61/00; H04L61/45; H04L63/00; H04L63/08; H04L63/083; H04L63/10; H04L63/102; H04L67/00; H04L67/2866; H04L67/30; H04L67/306; H04L67/34; H04L9/00; H04L9/40; H04L67/01; H04L69/00; H04L69/30; H04L69/32; H04L69/322; H04L69/329

Claims Analysis

Total Claims: 17
Claim 1
Independent Claim 485 words
In a network system comprising a network interconnecting a server and a plurality of end user stations, a method of managing desktops on the end user stations from the server, wherein the server stores a plurality of applications for downloading to end user stations, and further stores access permissions for the applications for each end user and for one or more hierarchically-structured user groups, the method comprising steps of: processing a request from an end user of an end user station to access the applications stored at the server, further comprising the steps of: receiving at the server a log-on request including a user identifier of the end user; using the user identifier to build a list of applications for which the end user has access permission; downloading to the end user station a user profile for the end user, including the list of applications for which the end user has access permission at a time of the request; building and displaying a graphical object containing a set of icons on a desktop of the end user station, the set of icons representing the applications in the list; dragging and dropping, by the end user, additional icons representing applications from the list into the desktop or into other graphical objects used by the desktop, thereby dynamically revising the desktop or the other graphical objects; revising the user profile to reflect the revisions made by the end user; and storing the revised user profile; and processing a subsequent request from the end user to access the applications stored at the server, further comprising the steps of: receiving, at the server, a subsequent log-on request including the user identifier of the end user; building a subsequent list of applications for which the end user has access permission at a time of the subsequent request; downloading the subsequent list to the end user station; building and displaying a revised graphical object containing a revised set of icons on the desktop, the revised set of icons representing the applications in the subsequent list; checking, for each icon previously included by the end user into the desktop or into the other graphical objects used by the desktop, as indicated by the stored user profile, whether the corresponding application is present in the subsequent list; programmatically omitting, from the desktop or the other graphical objects used by the desktop, any icon previously included by the end user that corresponds to an application which is not present in the subsequent list; and proqrammatically including, in the desktop or the other graphical objects used by the desktop, icons previously included by the end user which correspond to applications which are present in the subsequent list, thereby programmatically restricting the desktop to display only those icons which, when selected by the end user, will be operative to request a download to the end user station of applications for which the end user is authorized.
Claim 2
Dependent Claim 485 words
In a network system comprising a network interconnecting a server and a plurality of end user stations, a method of managing desktops on the end user stations from the server, wherein the server stores a plurality of applications for downloading to end user stations, and further stores access permissions for the applications for each end user and for one or more hierarchically-structured user groups, the method comprising steps of: processing a request from an end user of an end user station to access the applications stored at the server, further comprising the steps of: receiving at the server a log-on request including a user identifier of the end user; using the user identifier to build a list of applications for which the end user has access permission; downloading to the end user station a user profile for the end user, including the list of applications for which the end user has access permission at a time of the request; building and displaying a graphical object containing a set of icons on a desktop of the end user station, the set of icons representing the applications in the list; dragging and dropping, by the end user, additional icons representing applications from the list into the desktop or into other graphical objects used by the desktop, thereby dynamically revising the desktop or the other graphical objects; revising the user profile to reflect the revisions made by the end user; and storing the revised user profile; and processing a subsequent request from the end user to access the applications stored at the server, further comprising the steps of: receiving, at the server, a subsequent log-on request including the user identifier of the end user; building a subsequent list of applications for which the end user has access permission at a time of the subsequent request; downloading the subsequent list to the end user station; building and displaying a revised graphical object containing a revised set of icons on the desktop, the revised set of icons representing the applications in the subsequent list; checking, for each icon previously included by the end user into the desktop or into the other graphical objects used by the desktop, as indicated by the stored user profile, whether the corresponding application is present in the subsequent list; programmatically omitting, from the desktop or the other graphical objects used by the desktop, any icon previously included by the end user that corresponds to an application which is not present in the subsequent list; and proqrammatically including, in the desktop or the other graphical objects used by the desktop, icons previously included by the end user which correspond to applications which are present in the subsequent list, thereby programmatically restricting the desktop to display only those icons which, when selected by the end user, will be operative to request a download to the end user station of applications for which the end user is authorized.
Claim 3
Dependent Claim 147 words
The method as claimed in claim 1 , wherein the step of using the user identifier to build the list of applications further comprises the steps of: hierarchically coalescing access permissions for the end user with access permissions for one or more of the hierarchically-structured user groups of which this end user is determined to be a member at the time of the request; and using the hierarchically coalesced access permissions when building the list of applications; and wherein the step of building the subsequent list of applications further comprises the steps of: subsequently hierarchically coalescing access permissions for the end user with access permissions for one or more of the hierarchically-structured user groups of which this end user is determined to be a member at the time of the subsequent request; and using the subsequently hierarchically coalesced access permissions when building the subsequent list of applications.
Claim 4
Independent Claim 57 words
A method of determining access permissions for an end user, comprising steps of: determining one or more hierarchically-structured user groups of which the end user is a member; and hierarchically coalescing group access permissions for each of the determined user groups with individual access permissions of the end user, thereby determining the end user's overall access permissions.
Claim 5
Independent Claim 57 words
A method of determining access permissions for an end user, comprising steps of: determining one or more hierarchically-structured user groups of which the end user is a member; and hierarchically coalescing group access permissions for each of the determined user groups with individual access permissions of the end user, thereby determining the end user's overall access permissions.
Claim 6
Independent Claim 271 words
A method of maintaining an end user's desktop consistent with access privileges of the end user, comprising steps of: obtaining, from a server across a network connection, a list of applications to which the end user has access permission at a first point in time, further comprising steps of: initially determining one or more hierarchically-structured user groups of which the end user is a member; and hierarchically coalescing group access permissions for each of the initially determined user groups with individual access permissions of the end user, thereby creating the list of applications; using the obtained list of applications to build and display a desktop on an end user station that is in use by the end user, wherein the displayed desktop provides graphical objects representing applications in the obtained list; remembering modifications which are made by the end user to the displayed desktop; obtaining, from the server, a current list of applications to which the end user has access permission at a subsequent point in time, further comprising steps of: subsequently determining one or more hierarchically-structured user groups of which the end user is a member; and hierarchically coalescing group access permissions for each of the subsequently determined user groups with access permissions of the end user, thereby creating the current list of applications; and using the obtained current list of applications to build and display a current desktop on the end user station, wherein the current desktop provides graphical objects representing only applications in the current list, thereby programmatically suppressing any of the remembered modifications referencing a particular application for which the end user no longer has access permission.
Claim 7
Independent Claim 271 words
A method of maintaining an end user's desktop consistent with access privileges of the end user, comprising steps of: obtaining, from a server across a network connection, a list of applications to which the end user has access permission at a first point in time, further comprising steps of: initially determining one or more hierarchically-structured user groups of which the end user is a member; and hierarchically coalescing group access permissions for each of the initially determined user groups with individual access permissions of the end user, thereby creating the list of applications; using the obtained list of applications to build and display a desktop on an end user station that is in use by the end user, wherein the displayed desktop provides graphical objects representing applications in the obtained list; remembering modifications which are made by the end user to the displayed desktop; obtaining, from the server, a current list of applications to which the end user has access permission at a subsequent point in time, further comprising steps of: subsequently determining one or more hierarchically-structured user groups of which the end user is a member; and hierarchically coalescing group access permissions for each of the subsequently determined user groups with access permissions of the end user, thereby creating the current list of applications; and using the obtained current list of applications to build and display a current desktop on the end user station, wherein the current desktop provides graphical objects representing only applications in the current list, thereby programmatically suppressing any of the remembered modifications referencing a particular application for which the end user no longer has access permission.
Claim 8
Independent Claim 283 words
A system for maintaining an end user's desktop consistent with access privileges of the end user, comprising: means for obtaining, from a server across a network connection, a list of applications to which the end user has access permission at a first point in time, further comprising: means for initially determining one or more hierarchically-structured user groups of which the end user is a member; and means for hierarchically coalescing group access permissions for each of the initially determined user groups with individual access permissions of the end user, thereby creating the list of applications; means for using the obtained list of applications to build and display a desktop on an end user station that is in use by the end user, wherein the displayed desktop provides graphical objects representing applications in the obtained list; means for remembering modifications which are made by the end user to the displayed desktop; means for obtaining, from the server, a current list of applications to which the end user has access permission at a subsequent point in time, further comprising: means for subsequently determining one or more hierarchically-structured user groups of which the end user is a member; and means for hierarchically coalescing group access permissions for each of the subsequently determined user groups with access permissions of the end user, thereby creating the current list of applications; and means for using the obtained current list of applications to build and display a current desktop on the end user station, wherein the current desktop provides graphical objects representing only applications in the current list, thereby programmatically suppressing any of the remembered modifications referencing a particular application for which the end user no longer has access permission.
Claim 9
Independent Claim 283 words
A system for maintaining an end user's desktop consistent with access privileges of the end user, comprising: means for obtaining, from a server across a network connection, a list of applications to which the end user has access permission at a first point in time, further comprising: means for initially determining one or more hierarchically-structured user groups of which the end user is a member; and means for hierarchically coalescing group access permissions for each of the initially determined user groups with individual access permissions of the end user, thereby creating the list of applications; means for using the obtained list of applications to build and display a desktop on an end user station that is in use by the end user, wherein the displayed desktop provides graphical objects representing applications in the obtained list; means for remembering modifications which are made by the end user to the displayed desktop; means for obtaining, from the server, a current list of applications to which the end user has access permission at a subsequent point in time, further comprising: means for subsequently determining one or more hierarchically-structured user groups of which the end user is a member; and means for hierarchically coalescing group access permissions for each of the subsequently determined user groups with access permissions of the end user, thereby creating the current list of applications; and means for using the obtained current list of applications to build and display a current desktop on the end user station, wherein the current desktop provides graphical objects representing only applications in the current list, thereby programmatically suppressing any of the remembered modifications referencing a particular application for which the end user no longer has access permission.
Claim 10
Independent Claim 59 words
A system for determining access permissions for an end user, comprising: means for determining one or more hierarchically-structured user groups of which the end user is a member; and means for hierarchically coalescing group access permissions for each of the determined user groups with individual access permissions of the end user, thereby determining the end user's overall access permissions.
Claim 11
Independent Claim 59 words
A system for determining access permissions for an end user, comprising: means for determining one or more hierarchically-structured user groups of which the end user is a member; and means for hierarchically coalescing group access permissions for each of the determined user groups with individual access permissions of the end user, thereby determining the end user's overall access permissions.
Claim 12
Dependent Claim 315 words
A computer program product for maintaining an end user's desktop consistent with access privileges of the end user, the computer program product embodied on one or more storage media and comprising: program code means for obtaining, from a server across a network connection, a list of applications to which the end user has access permission at a first point in time, further comprising: program code means for initially determining one or more hierarchically-structured user groups of which the end user is a member; and program code means for hierarchically coalescing group access permissions for each of the initially determined user groups with individual access permissions of the end user, thereby creating the list of applications; program code means for using the obtained list of applications to build and display a desktop on an end user station that is in use by the end user, wherein the displayed desktop provides graphical objects representing applications in the obtained list; program code means for remembering modifications which are made by the end user to the displayed desktop; program code means for obtaining, from the server, a current list of applications to which the end user has access permission at a subsequent point in time, further comprising: program code means for subsequently determining one or more hierarchically-structured user groups of which the end user is a member; and program code means for hierarchically coalescing group access permissions for each of the subsequently determined user groups with access permissions of the end user, thereby creating the current list of applications; and program code means for using the obtained current list of applications to build and display a current desktop on the end user station, wherein the current desktop provides graphical objects representing only applications in the current list, thereby programmatically suppressing any of the remembered modifications referencing a particular application for which the end user no longer has access permission.
Claim 13
Dependent Claim 315 words
A computer program product for maintaining an end user's desktop consistent with access privileges of the end user, the computer program product embodied on one or more storage media and comprising: program code means for obtaining, from a server across a network connection, a list of applications to which the end user has access permission at a first point in time, further comprising: program code means for initially determining one or more hierarchically-structured user groups of which the end user is a member; and program code means for hierarchically coalescing group access permissions for each of the initially determined user groups with individual access permissions of the end user, thereby creating the list of applications; program code means for using the obtained list of applications to build and display a desktop on an end user station that is in use by the end user, wherein the displayed desktop provides graphical objects representing applications in the obtained list; program code means for remembering modifications which are made by the end user to the displayed desktop; program code means for obtaining, from the server, a current list of applications to which the end user has access permission at a subsequent point in time, further comprising: program code means for subsequently determining one or more hierarchically-structured user groups of which the end user is a member; and program code means for hierarchically coalescing group access permissions for each of the subsequently determined user groups with access permissions of the end user, thereby creating the current list of applications; and program code means for using the obtained current list of applications to build and display a current desktop on the end user station, wherein the current desktop provides graphical objects representing only applications in the current list, thereby programmatically suppressing any of the remembered modifications referencing a particular application for which the end user no longer has access permission.
Claim 14
Dependent Claim 77 words
A computer program product for determining access permissions for an end user, the computer program product embodied on one or more storage media and comprising: program code means for determining one or more hierarchically-structured user groups of which the end user is a member; and program code means for hierarchically coalescing group access permissions for each of the determined user groups with individual access permissions of the end user, thereby determining the end user's overall access permissions.
Claim 15
Dependent Claim 77 words
A computer program product for determining access permissions for an end user, the computer program product embodied on one or more storage media and comprising: program code means for determining one or more hierarchically-structured user groups of which the end user is a member; and program code means for hierarchically coalescing group access permissions for each of the determined user groups with individual access permissions of the end user, thereby determining the end user's overall access permissions.
Claim 16
Dependent Claim 316 words
A computer program signal embodied in a carrier wave, the signal containing program code for maintaining an end user's desktop consistent with access privileges of the end user, the program code comprising: program code means for obtaining, from a server across a network connection, a list of applications to which the end user has access permission at a first point in time, further comprising: program code means for initially determining one or more hierarchically-structured user groups of which the end user is a member; and program code means for hierarchically coalescing group access permissions for each of the initially determined user groups with individual access permissions of the end user, thereby creating the list of applications; program code means for using the obtained list of applications to build and display a desktop on an end user station that is in use by the end user, wherein the displayed desktop provides graphical objects representing applications in the obtained list; program code means for remembering modifications which are made by the end user to the displayed desktop; program code means for obtaining, from the server, a current list of applications to which the end user has access permission at a subsequent point in time, further comprising: program code means for subsequently determining one or more hierarchically-structured user groups of which the end user is a member; and program code means for hierarchically coalescing group access permissions for each of the subsequently determined user groups with access permissions of the end user, thereby creating the current list of applications; and program code means for using the obtained current list of applications to build and display a current desktop on the end user station, wherein the current desktop provides graphical objects representing only applications in the current list, thereby programmatically suppressing any of the remembered modifications referencing a particular application for which the end user no longer has access permission.
Claim 17
Dependent Claim 316 words
A computer program signal embodied in a carrier wave, the signal containing program code for maintaining an end user's desktop consistent with access privileges of the end user, the program code comprising: program code means for obtaining, from a server across a network connection, a list of applications to which the end user has access permission at a first point in time, further comprising: program code means for initially determining one or more hierarchically-structured user groups of which the end user is a member; and program code means for hierarchically coalescing group access permissions for each of the initially determined user groups with individual access permissions of the end user, thereby creating the list of applications; program code means for using the obtained list of applications to build and display a desktop on an end user station that is in use by the end user, wherein the displayed desktop provides graphical objects representing applications in the obtained list; program code means for remembering modifications which are made by the end user to the displayed desktop; program code means for obtaining, from the server, a current list of applications to which the end user has access permission at a subsequent point in time, further comprising: program code means for subsequently determining one or more hierarchically-structured user groups of which the end user is a member; and program code means for hierarchically coalescing group access permissions for each of the subsequently determined user groups with access permissions of the end user, thereby creating the current list of applications; and program code means for using the obtained current list of applications to build and display a current desktop on the end user station, wherein the current desktop provides graphical objects representing only applications in the current list, thereby programmatically suppressing any of the remembered modifications referencing a particular application for which the end user no longer has access permission.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2005-01-14 2005-07-16 2006-01-15 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2009-01-14 2009-07-16 2010-01-15 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2013-01-14 2013-07-16 2014-01-15 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag