IP Library Granted Patent US 8,219,807
Granted Patent B1
US 8,219,807 · App. 11/115,818 · Granted Jul 10, 2012

Fine grained access control for linux services

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,219,807
App. No.
11/115,818
Granted
Jul 10, 2012
Kind
B1
Abstract

A user requests to execute an application. The system authenticates the user and determines whether the user is authorized to execute the application. If the user is both authenticated and authorized to execute the application, the system grants the user permission to execute the application. Otherwise, the system denies the user permission to execute the application.

Claims (56)

1. An apparatus, comprising:

an application including an application name;

a receiver to receive a request from a user to execute the application;

a plurality of authentication modules to authenticate the user responsive to the request from the user to execute the application, each of the plurality of authentication modules capable of authenticating the user by themselves;

an authentication module selector to select an authentication module using the application name, the authentication module separate from each of the plurality of authentication modules;

an object set, including at least a first object representing the user and a second object including an indication as to whether the user is authorized to execute the application, the indication as to whether the user is authorized to execute the application includes a blacklist of IDs to be denied permission to execute the application and the first object includes a user ID (UID), wherein the UID is a unique ID assigned to the user by the system different from any ID assigned to other users; and

an authorization module to determine whether the UID is included in the blacklist of IDs.

2. An apparatus according to claim 1 , further comprising an access grantor to grant the user permission to execute the application if the user is authenticated by the selected authentication module and is authorized by the authorization module.

3. An apparatus according to claim 2 , wherein the access grantor is to deny the user permission to execute the application if the user is not authenticated by the selected authentication module and authorized by the authorization module.

4. An apparatus according to claim 1 , wherein:

the first object further includes a group ID (GID); and

the authorization module is further to determine whether the GID is included in the blacklist of IDs.

5. An apparatus according to claim 1 , wherein:

the object set further includes a group object, the group object identifying a grouping of users and including a group name, the grouping of users including the user; and

the authorization module is further to determine whether the group name is included is in the blacklist of IDs.

6. An apparatus according to claim 1 , wherein the application is designed to run on an operating system from LINUX.

7. A method, comprising:

receiving a request from a user to execute an application;

authenticating the user responsive to the request from the user to execute the application, including:

selecting an authentication module from a plurality of authentication modules using a name of the application, each of the plurality of authentication modules capable of authenticating the user by themselves; and

using the selected authentication module to authenticate the user; and

verifying that the user is authorized to execute the application using an authorization module, the authentication module separate from each of the plurality of authentication modules, including:

accessing an object set, the object set including at least a first object representing the user and a second object including an indication as to whether the user is authorized to execute the application, the indication as to whether the user is authorized to execute the application including a blacklist for the application;

determining a user ID (UID) for the user from the first object in the object set, wherein the UID is a unique ID assigned to the user by the system different from any ID assigned to other users;

determining if the UID is on the blacklist; and

if the UID is not on the blacklist for the application, indicating that the user is authorized to execute the application.

8. A method according to claim 7 , further comprising, if the user is authorized to execute the application and is authenticated, granting the user permission to execute the application.

9. A method according to claim 7 , further comprising, if the user is not authorized to execute the application or is not authenticated using the selected authentication module, denying the user permission to execute the application.

10. A method according to claim 7 , wherein determining whether the user is on a blacklist further includes:

determining a group ID (GID) for the user from the first object in the object set; and

determining if the GID is on the blacklist.

11. A method according to claim 7 , wherein determining whether the user is on a blacklist includes:

determining a group to which the user belongs, the group represented by a group object in the object set; and

determining if the group is on the blacklist.

12. An article, comprising:

a non-transitory storage medium, said non-transitory storage medium having stored thereon instructions, that, when executed by a machine, result in:

receiving a request from a user to execute an application;

authenticating the user responsive to the request from the user to execute the application, including:

selecting an authentication module from a plurality of authentication modules using a name of the application, each of the plurality of authentication modules capable of authenticating the user by themselves; and

using the selected authentication module to authenticate the user; and

verifying that the user is authorized to execute the application using an authorization module, the authentication module separate from each of the plurality of authentication modules, including:

accessing an object set, the object set including at least a first object representing the user and a second object including an indication as to whether the user is authorized to execute the application, the indication as to whether the user is authorized to execute the application including a blacklist for the application;

determining a user ID (UID) for the user from the first object in the object set, wherein the UID is a unique ID assigned to the user by the system different from any ID assigned to other users;

determining if the UID is on the blacklist; and

if the UID is not on the blacklist for the application, indicating that the user is authorized to execute the application.

13. An article according to claim 12 , wherein the non-transitory storage medium has further instructions stored thereon that, when executed by the machine result in, if the user is authorized to execute the application and is authenticated, granting the user permission to execute the application.

14. An article according to claim 12 , wherein the non-transitory storage medium has further instructions stored thereon that, when executed by the machine result in, if the user is not authorized to execute the application or is not authenticated using the selected authentication module, denying the user permission to execute the application.

15. An article according to claim 12 , wherein determining whether the user is on a blacklist further includes:

determining a group ID (GID) for the user from the first object in the object set; and

determining if the GID is on the blacklist.

16. An article according to claim 12 , wherein determining whether the user is on a blacklist includes:

determining a group to which the user belongs, the group represented by a group object in the object set; and

determining if the group is on the blacklist.

17. An apparatus according to claim 1 , the object set further includes a third object including a second indication as to whether the user is authorized to execute a second application, wherein a first of the indication and the second indication can grant the user access to a first of the application and the second application as though the user were an administrative user, and a second of the indication and the second indication can grant the user access to a second of the application and the second application as though the user were a limited user.

18. A method according to claim 7 , wherein accessing an object set includes accessing the object set, the object set further including a third object including a second indication as to whether the user is authorized to execute a second application, a first of the indication and the second indication indicating that the user can access a first of the application and the second application as though the user were an administrative user, and a second of the indication and the second indication indicating that the user can access a second of the application and the second application as though the user were a limited user.

19. An article according to claim 12 , wherein accessing an object set includes accessing the object set, the object set further including a third object including a second indication as to whether the user is authorized to execute a second application, a first of the indication and the second indication indicating that the user can access a first of the application and the second application as though the user were an administrative user, and a second of the indication and the second indication indicating that the user can access a second of the application and the second application as though the user were a limited user.

Assignments (9)
RELEASE OF SECURITY INTEREST REEL/FRAME 035656/0251 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: BORLAND SOFTWARE CORPORATION; ATTACHMATE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.)
Reel/Frame 062623/0009 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0718 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC); BORLAND SOFTWARE CORPORATION; MICRO FOCUS (US), INC.; SERENA SOFTWARE, INC; ATTACHMATE CORPORATION; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062746/0399 →
CORRECTIVE ASSIGNMENT TO CORRECT THE TO CORRECT TYPO IN APPLICATION NUMBER 10708121 WHICH SHOULD BE 10708021 PREVIOUSLY RECORDED ON REEL 042388 FRAME 0386. ASSIGNOR(S) HEREBY CONFIRMS THE NOTICE OF SUCCESSION OF AGENCY. Recorded Jul 26, 2018
From: BANK OF AMERICA, N.A., AS PRIOR AGENT
To: JPMORGAN CHASE BANK, N.A., AS SUCCESSOR AGENT
Reel/Frame 048793/0832 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ATTACHMATE CORPORATION; BORLAND SOFTWARE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE, INC.; ENTIT SOFTWARE LLC; ARCSIGHT, LLC; SERENA SOFTWARE, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0718 →
NOTICE OF SUCCESSION OF AGENCY Recorded May 2, 2017
From: BANK OF AMERICA, N.A., AS PRIOR AGENT
To: JPMORGAN CHASE BANK, N.A., AS SUCCESSOR AGENT
Reel/Frame 042388/0386 →
CHANGE OF NAME Recorded Sep 13, 2016
From: NOVELL, INC.
To: MICRO FOCUS SOFTWARE INC.
Reel/Frame 040020/0703 →
SECURITY INTEREST Recorded May 13, 2015
From: MICRO FOCUS (US), INC.; BORLAND SOFTWARE CORPORATION; ATTACHMATE CORPORATION; NETIQ CORPORATION; NOVELL, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 035656/0251 →
RELEASE OF SECURITY INTEREST IN PATENTS FIRST LIEN (RELEASES RF 026270/0001 AND 027289/0727) Recorded May 22, 2012
From: CREDIT SUISSE AG, AS COLLATERAL AGENT
To: NOVELL, INC.
Reel/Frame 028252/0077 →
RELEASE OF SECURITY IN PATENTS SECOND LIEN (RELEASES RF 026275/0018 AND 027290/0983) Recorded May 22, 2012
From: CREDIT SUISSE AG, AS COLLATERAL AGENT
To: NOVELL, INC.
Reel/Frame 028252/0154 →