WO2001067682A1 - Computer security system - Google Patents

Computer security system Download PDF

Info

Publication number
WO2001067682A1
WO2001067682A1 PCT/US2001/007048 US0107048W WO0167682A1 WO 2001067682 A1 WO2001067682 A1 WO 2001067682A1 US 0107048 W US0107048 W US 0107048W WO 0167682 A1 WO0167682 A1 WO 0167682A1
Authority
WO
WIPO (PCT)
Prior art keywords
access
asset
user
domain
role
Prior art date
Application number
PCT/US2001/007048
Other languages
French (fr)
Inventor
Daniel Brown
Fernando Zapata
Original Assignee
I2 Technologies, Inc.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=26882966&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=WO2001067682(A1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by I2 Technologies, Inc. filed Critical I2 Technologies, Inc.
Priority to DE10195870T priority Critical patent/DE10195870T1/en
Priority to AU2001245444A priority patent/AU2001245444A1/en
Publication of WO2001067682A1 publication Critical patent/WO2001067682A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/105Multiple levels of security

Definitions

  • the present invention relates generally to computer systems, and more specifically to security systems and methods for controlling and authorizing access to computer systems.
  • Security is an important consideration for computer systems that grant access to multiple users. This is especially true when access can be obtained from outside a physically restricted area, such as systems generally available over the internet. As systems become more complex, and access to data needs to be more widely distributed, security systems tend to become more complex.
  • a security system for a computer system provides one or more security domains. Access to assets registered to the security system is controlled by rights and privileges. Rights are derived from roles, and each user is assigned one or more roles. Privileges are attached to assets, and an appropriate combination of rights and privileges is required before a user is granted the specified type of access to the asset.
  • Figure 1 is a block diagram of a system for providing security to a computer system
  • Figure 2 is a diagram illustrating the structure of a computer security system in accordance with the present invention.
  • Figures 3 and 4 are diagrams illustrating domain relationships in accordance with a preferred embodiment
  • Figure 5 is a diagram illustrating preferred steps in granting access and authorization to a user
  • Figure 6 is a diagram illustrating the use of roles within a preferred security system
  • Figure 7 is a diagram showing the relationships between rights and privileges in a preferred embodiment
  • FIGS. 8 and 9 illustrate preferred use of access control lists in accordance with the preferred embodiment
  • Figure 10 is a diagram showing the use of bi-directional transfer of privileges.
  • Figures 11 and 12 are block diagrams illustrating preferred user authorization methods.
  • the described system describes a particular set of techniques and methods for granting users access to various files, executables, and other system assets available on the system being protected.
  • the described security system and method does not necessarily provide complete system security, but can be supplemented by other products widely available in order to provide complete security.
  • the description below indicates where and how it is to be implemented on any desired system.
  • FIG. 1 is a block diagram of a security system implemented in accordance with a preferred embodiment of the invention.
  • Figure 1 shows the architecture of the preferred system, with particular focus on the security service.
  • a first host machine 10 includes a web server application 12 and a servlet engine 14.
  • Application logic 16 that resides in the servlet engine 14 makes in-process calls to the security API where applicable.
  • the security service communicates with a database 18, which can be an Oracle database, via JDBC link 20.
  • a second host machine 22 contains the application 24 functionality to which access is desired.
  • the application 24 in turn relies on the security service 26 for access control information.
  • the BO Server 24 is a C++ engine, and communicates with Security 26 using a CORBA server called the "DNA Bridge 28.
  • the DNA Bridge 28 is responsible for sending raw permissibility data to the BO Server 24, which then handles the actual enforcement.
  • a domain is an administrative and access control boundary around a collection of security entities. These entities consist of: 1. members 30, 31, which are users who have authenticated themselves to the domain;
  • roles 34 which represent the responsibilities that members may assume;
  • ACLs Access Control Lists 38, which define the privileges that roles should have when accessing assets. Domains are used to provide a security "sandbox" for members. The "sandbox" controls what members may do to which assets during a given session with the system.
  • the system has many domains, some or all of which may be in use at any given time.
  • a domain can be mapped to any entity external to Security, but many applications have only found the need to map a domain to a business/company.
  • the universal security administrator 40 (also called the "super user"), is a special member who is allowed to administer the entire security model, including all of the entities within any domain. Another special entity is the role.
  • Security uses roles to implement declarative and programmatic security. There are two kinds of roles in the system:
  • his active role set consists of:
  • the member jsmith does not have the Assembler role when he logs into the Acme Computers domain because he has not been granted that role.
  • Trust may be unidirectional or bi-directional, as shown in Figure 3.
  • Domain ABC 50 has a unidirectional trust relationship with Domain DEF 54 (ABC trusts DEF), which implies that privileges on ABC's assets may be delegated from ABC to DEF.
  • ABC 50 has a bi-directional trust relationship with XYZ 52, which implies that privileges on ABC's assets may flow to XYZ, and vice-versa.
  • a domain may also own another domain, i.e. be responsible for its creation and destruction.
  • a parent-child topology is used to represent domain ownership and a peer-to-peer topology is used when there is a lack of ownership between domains.
  • the trust and ownership concepts may be combined. For example, a group of domains may be connected together in a parent-child topology, where each connection is also a unidirectional trust. This implies that privileges may be delegated from the top- most domain down to the lower-level domains. It also implies that each domain has created the domain(s) beneath it.
  • the model described in the previous paragraph can be illustated by an example. Assume a customer uses this model for its catalogs and categories. The customer creates subsidiary domains and then gives each subsidiary access to a subset of its catalogs and categories. The subsidiaries in turn create distributor domains and then give the distributors access to a further subset of the catalogs and categories. Support for additional domain relationship and topologies will be added as the need arises.
  • security principals that are associated with a user - consisting of domains and roles - determine what the user has access to. As shown in Figure 5, security principals are acquired after a user is authenticated. Authentication establishes the user's identity, which can then be used to obtain relevant information about the user's involvement in the business domain (such as what company he is employed with and what portal he has logged into). These "business principals” are subsequently used to derive the security principals that should be in effect for the member. The system uses these security principals to make authorization decisions.
  • roles 62 may be granted directly to a member 63, or they may be granted 64 to a group 66. Any member who is assigned to the group will in turn receive the privileges enjoyed by the group roles 64.
  • the relationship between members and roles is determined dynamically at login time.
  • a member 63 may be assigned to multiple roles, but only a subset of them may be usable within a given domain. For example, the member 63 in Figure 6 has been granted Role 1 62 and Role 2 64, but Domain A 68 only allows him to use Role 1 62, whereas Domain B 70 allows him to use both Roles 1 and 2. Whether or not a role is usable in a domain depends on the type of role (i.e. universal role or domain role).
  • rights 76 are attached to roles 72 and override privileges on assets.
  • the universal security administrator (super user) 40 has special rights which enable him to administer any asset in the system regardless of the privileges that have been specified on the asset.
  • the universal security administrator is an example of a right that is defined by the Security system, but rights may also be defined by an application. Applications that control workflow based upon a particular role are implicitly attaching rights to that role.
  • privileges 78 are attached to assets 74 and are used to grant fine-grained access to an asset
  • a single privilege identifies what operation may be performed by what role on which asset.
  • the mechansim for attaching privileges to assets 74 is the access control list (ACL) 80.
  • An ACL 80 contains a series of access control entries (ACEs) 82, each of which contains a domain identifier 84, a role identifier 86, and one or more privileges 88, as shown in Figure 8.
  • the domain identifier 84 and role identifier 86 are the security principals that may be associated with one or more members.
  • An ACE 82 contains both because a privilege for a role must be scoped by the domain (e.g. an Admin may be able to perform some operation in one domain, but may be prevented from doing so in a different domain).
  • a privilege allows the domain/role combination to perform an operation on the asset.
  • the basic operations consist of read and write. Other operations may be available, but these are dependent upon the type of asset being administered.
  • a domain/role may be granted ownership over a particular operation on the ACL.
  • An owner of an ACL is allowed to modify it within certain limits:
  • a domain/role owns an operation on an ACL
  • a member who possesses that domain/role principal combination may grant the operation to the same role within a different domain.
  • ACL ownership and administration are the mechanisms by which privileges are transferred between domains.
  • the capabilities of a role tend to diminish the further you move away from the "home" domain (i.e. where the asset is created). This is because an administrator may never pass on more privileges than he himself has. At most, the role capabilities would remain constant across all of the domains, but in practice this would not be likely.
  • a registered asset is a resource that the security system is responsible for protecting. Registered assets are classified according to their asset type, which determines how assets should be identified and what operations may be performed on them.
  • One possible list of basic asset types includes price group, price template, catalog, category, product group, and URL. This list would be of use in deploying an ordering system, or similar enterprise. New asset types may be defined at deployment time, as described below.
  • Meta-level operations are those that are performed without an instance, for example the create operation can be invoked for a Price Template, but it does not apply to an instance because the instance does not yet exist.
  • Instance-level operations such as read, write, and delete, are those that are performed on an explicit instance, such as deleting a Price Template, which requires a specific instance to delete.
  • Monikers are alphanumeric strings that conform to a predetermined format as defined by the asset type. Monikers may be hierarchical in nature, and they may be defined in terms of regular expressions. For example, an asset of type URL may have the following as a moniker:
  • the parent asset would be as follows:
  • the preferred system supports two modes of authorization: decision-based and entitlement-based.
  • decision-based mode illustrated in Figure 11, a simple yes/no answer is returned to the client.
  • Decision-based authorization is defined by the following sequence:
  • An initiator 90 sends a request to a resource manager 92.
  • the request consists of an asset, an operation to perform on that asset, and the initiator's principals
  • the request is intercepted by an access enforcement function 94 that lives inside of the resource manager 92.
  • the access enforcement function 94 forwards the request information to the access decision function 96.
  • the access decision function 96 renders a yes/no judgment on the request and returns this decision to the access enforcement function 94.
  • the access enforcement function 94 takes appropriate action (for example, allow request to proceed, redirect, send error message, etc.) based upon the recommendation provided. Access is allowed to the asset 98 only if the initiator's principals allow it.
  • Entitlement-based authorization is defined by the following sequence:
  • An initiator 90 sends a read request to a resource manager 92.
  • the request consists of query criteria (e.g. all computer peripheral-related categories) and the initiator's principals.
  • the request is intercepted by an access enforcement function 94 that lives inside of the resource manager 92. 3.
  • the access enforcement function 94 forwards the request information to the query modification function 100.
  • the query modification function 100 adds security-related criteria to the request and executes a business query 102.
  • the results of the query are returned to the access enforcement function 94.
  • the access enforcement function 94 takes appropriate action (e.g. returns query results to the initiator, redirects, etc.)
  • the objects that are returned conform to the initiator's application-specific criteria as well as some security-specific criteria.
  • the query results contain only the objects that the intiator has read access to, which may be a subset of those requested.
  • a preferred embodiment allows implementers to define new asset types. The steps for defining a new asset type are as follows:
  • Access Decision Function A process that renders an authorization decision (yes/no).
  • An ADF is internal to the security system.
  • Access Enforcement Function A process that reacts to an authorization decision.
  • An AEF typically controls workflow and may be internal or external to the security system.
  • Access Entitlement Function A process that performs queries and limits the results to only those objects that an initiator has read access to.
  • Active Principal Set A grouping of principals for a particular member. The APS is determined dynamically after a user is authenticated.
  • Anonymous User A user whose identity has not been verified by the system. An anonymous user is considered untrustworthy.
  • Asset A resource that is eligible for protection by the Security system. It is an actual physical file, application, object, or set of data.
  • Asset Type A category of resources having similar security characteristics. An Asset Type is associated with one or more operations, and an operation is associated with one or more asset types.
  • Authentication The process of determining the identity of a user. Authentication ensures that users are who they claim to be, but says nothing about their rights to perform an operation on a registered asset.
  • Authenticated User A user whose identity has been verified by the system.
  • Authorization The process of determining whether a user has the right to perform an operation on a registered (protected) asset. Authorization may occur in two modes:
  • decision mode in which an initiator makes a request to perform an operation on an asset and a yes/no response is furnished, or
  • Credential An item that a user supplies to the system to prove his/her identity.
  • a credential can consist of something the user knows (e.g. password) or has (e.g. digital certificate).
  • Group A named collection of members who have similar characteristics.
  • Initiator A client that makes a request of the security system.
  • An initiator may be a user or an application.
  • a member is associated with exactly one Person (from Profile Management), and a Person is associated with zero or one member.
  • Operation An action or procedure that may be performed upon an asset. An operation is specific to an asset type.
  • Policy A set of rules that describe the ability of various users to access the resources within an application.
  • a policy defines the principals that have the right to perform certain operations upon one or more assets.
  • Principal A name or identifier that the system uses to make authorization decisions.
  • a principal is a necessary component of a policy.
  • a principal may be associated with zero or more members, and a member may be associated with zero or more principals. The association between a principal and a member is determined dynamically.
  • Principal Acquisition The process by which one or more principals are bound to a member to form the Active Principal Set. Principal acquisition occurs after authentication.
  • Principal Type A category of principals having similar characteristics. Each principal among those of the same type must be unique. The principal types are: role, company, portal.
  • Registered Asset A logical representation of an actual system resource that is under the protection of the Security system.
  • Authorization Request An inquiry that an initiator makes of the security system, consisting of an asset, an operation, and an active principal set.
  • Role An abstract representation of a user's function or ability.
  • User Registration A process by which a user supplies information about himself and thereby becomes eligible for greater access to the resources within an application.
  • the product of the user registration process is a person and a member (account).
  • the described system allows for easy group administration of the overall security system. Because of transfer of privileges, various levels of administration can be passed down the line. For example, a single super user can designate other administrators having various degrees of administrative authority, so that various administrative functions can be distributed among numerous administrators. Each administrator can delegate all or a portion of her administrative rights as desired.

Abstract

A security sytem for a computer system provides one or more security domains (29). Access to assets (74) registered to the security system is controlled by rights (76) and privileges (78). Rights (76) are derived from roles (34), and each user is assigned one or more roles (34). Privileges (78) are attached to assets (74), and an appropriate combination of rights (76) and privileges (78) are required before a user is granted the specified type of access to the asset (74).

Description

COMPUTER SECURITY SYSTEM
Technical Field
The present invention relates generally to computer systems, and more specifically to security systems and methods for controlling and authorizing access to computer systems.
Description of the Prior Art
Security is an important consideration for computer systems that grant access to multiple users. This is especially true when access can be obtained from outside a physically restricted area, such as systems generally available over the internet. As systems become more complex, and access to data needs to be more widely distributed, security systems tend to become more complex.
Such issues arise in the context of different businesses sharing data and processes over distributed computer systems. It becomes important that security can be administered from more than one location, by more than one administrator. Further, due to different companies doing business in different ways, security systems intended for use by different business must be flexible, and able to accommodate different security implementations.
Present security systems are often cumbersome, and do not have the desired flexibility. It would be desirable to provide a computer security system that was flexible, extendable, and allowed multiple administrators to operate concurrently to provide needed security. It would be desirable that such a system allows administrators to define additional types of security, and supply security for additional types of objects, than are originally provided for.
Summary of the Invention
In accordance with the present invention, a security system for a computer system provides one or more security domains. Access to assets registered to the security system is controlled by rights and privileges. Rights are derived from roles, and each user is assigned one or more roles. Privileges are attached to assets, and an appropriate combination of rights and privileges is required before a user is granted the specified type of access to the asset.
Brief Description of the Drawings
The novel features believed characteristic of the invention are set forth in the appended claims. The invention itself however, as well as a preferred mode of use, further objects and advantages thereof, will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying drawings, wherein:
Figure 1 is a block diagram of a system for providing security to a computer system;
Figure 2 is a diagram illustrating the structure of a computer security system in accordance with the present invention;
Figures 3 and 4 are diagrams illustrating domain relationships in accordance with a preferred embodiment; Figure 5 is a diagram illustrating preferred steps in granting access and authorization to a user;
Figure 6 is a diagram illustrating the use of roles within a preferred security system;
Figure 7 is a diagram showing the relationships between rights and privileges in a preferred embodiment;
Figures 8 and 9 illustrate preferred use of access control lists in accordance with the preferred embodiment;
Figure 10 is a diagram showing the use of bi-directional transfer of privileges; and
Figures 11 and 12 are block diagrams illustrating preferred user authorization methods.
Description of the Preferred Embodiment
It will be understood by those skilled in the art that the following description can easily be implemented on numerous different underlying systems. The described system describes a particular set of techniques and methods for granting users access to various files, executables, and other system assets available on the system being protected. The described security system and method does not necessarily provide complete system security, but can be supplemented by other products widely available in order to provide complete security. As will be appreciated by those of ordinary skill, the description below indicates where and how it is to be implemented on any desired system.
Figure 1 is a block diagram of a security system implemented in accordance with a preferred embodiment of the invention. Figure 1 shows the architecture of the preferred system, with particular focus on the security service. A first host machine 10 includes a web server application 12 and a servlet engine 14. Application logic 16 that resides in the servlet engine 14 makes in-process calls to the security API where applicable. The security service communicates with a database 18, which can be an Oracle database, via JDBC link 20.
A second host machine 22 contains the application 24 functionality to which access is desired. The application 24 in turn relies on the security service 26 for access control information. In one embodiment, the BO Server 24 is a C++ engine, and communicates with Security 26 using a CORBA server called the "DNA Bridge 28. The DNA Bridge 28 is responsible for sending raw permissibility data to the BO Server 24, which then handles the actual enforcement.
The described security model is centered on the concept of a domain 29, shown in Figure 2. A domain is an administrative and access control boundary around a collection of security entities. These entities consist of: 1. members 30, 31, which are users who have authenticated themselves to the domain;
2. groups 32, which are collections of members used to facilitate administration;
3. roles 34, which represent the responsibilities that members may assume;
4. registered assets 36, which are resources that the system is responsible for protecting;
5. ACLs (Access Control Lists) 38, which define the privileges that roles should have when accessing assets. Domains are used to provide a security "sandbox" for members. The "sandbox" controls what members may do to which assets during a given session with the system.
The system has many domains, some or all of which may be in use at any given time.
A domain can be mapped to any entity external to Security, but many applications have only found the need to map a domain to a business/company.
Most entities reside within a single domain for the duration of a session, but there exist some special entities that have visibility across multiple domains. One of these, the universal security administrator 40 (also called the "super user"), is a special member who is allowed to administer the entire security model, including all of the entities within any domain. Another special entity is the role. Security uses roles to implement declarative and programmatic security. There are two kinds of roles in the system:
1. domain roles 34, which are visible only within a single domain; and
2. universal roles 42, which are visible across all domains.
Universal roles 42 represent user responsibilities that are commonly accepted and understood by several collaborating domains. They exist so that the workflow of a shared application is consistent for - and understandable by ~ all of its users. Domain roles 34 have meaning only within the domain in which they are defined.
The domain to which a user authenticates himself at the beginning of a session dictates the roles that he may utilize. The following example illustrates:
1. Let domains be "Acme Computers" and "Beta Bank"
2. Let member be "jsmith"
3. Let universal roles be "Administrator" and "Purchaser"
4. Let domain role for Beta Bank be "Teller" 5. Let domain role for Acme Computers be "Assembler"
6. Let jsmith be assigned to both domains
7. Let jsmith be assigned to roles Administrator, Purchaser, and Teller
If jsmith logs into the Acme Computers domain, his active role set consists of:
Administrator, Purchaser
If jsmith logs into the Beta Bank domain, his active role set consists of:
Administrator, Purchaser, Teller
The member jsmith does not have the Assembler role when he logs into the Acme Computers domain because he has not been granted that role.
Two domains may be joined by a trust relationship. A trust relationship determines how privileges may be delegated from one domain to another. Trust may be unidirectional or bi-directional, as shown in Figure 3. For example, Domain ABC 50 has a unidirectional trust relationship with Domain DEF 54 (ABC trusts DEF), which implies that privileges on ABC's assets may be delegated from ABC to DEF. ABC 50 has a bi-directional trust relationship with XYZ 52, which implies that privileges on ABC's assets may flow to XYZ, and vice-versa.
A domain may also own another domain, i.e. be responsible for its creation and destruction. As shown in Figure 4, a parent-child topology is used to represent domain ownership and a peer-to-peer topology is used when there is a lack of ownership between domains.
The trust and ownership concepts may be combined. For example, a group of domains may be connected together in a parent-child topology, where each connection is also a unidirectional trust. This implies that privileges may be delegated from the top- most domain down to the lower-level domains. It also implies that each domain has created the domain(s) beneath it.
The model described in the previous paragraph can be illustated by an example. Assume a customer uses this model for its catalogs and categories. The customer creates subsidiary domains and then gives each subsidiary access to a subset of its catalogs and categories. The subsidiaries in turn create distributor domains and then give the distributors access to a further subset of the catalogs and categories. Support for additional domain relationship and topologies will be added as the need arises.
The "security principals" that are associated with a user - consisting of domains and roles - determine what the user has access to. As shown in Figure 5, security principals are acquired after a user is authenticated. Authentication establishes the user's identity, which can then be used to obtain relevant information about the user's involvement in the business domain (such as what company he is employed with and what portal he has logged into). These "business principals" are subsequently used to derive the security principals that should be in effect for the member. The system uses these security principals to make authorization decisions.
As indicated in Figure 6, roles 62 may be granted directly to a member 63, or they may be granted 64 to a group 66. Any member who is assigned to the group will in turn receive the privileges enjoyed by the group roles 64. The relationship between members and roles is determined dynamically at login time. A member 63 may be assigned to multiple roles, but only a subset of them may be usable within a given domain. For example, the member 63 in Figure 6 has been granted Role 1 62 and Role 2 64, but Domain A 68 only allows him to use Role 1 62, whereas Domain B 70 allows him to use both Roles 1 and 2. Whether or not a role is usable in a domain depends on the type of role (i.e. universal role or domain role).
As shown in Figure 7, the roles that a member has been granted ultimately determine what assets 74 the member can access. Access control decisions are made by combining rights with privileges:
1. rights 76 are attached to roles 72 and override privileges on assets. For example, the universal security administrator (super user) 40 has special rights which enable him to administer any asset in the system regardless of the privileges that have been specified on the asset. The universal security administrator is an example of a right that is defined by the Security system, but rights may also be defined by an application. Applications that control workflow based upon a particular role are implicitly attaching rights to that role.
2. privileges 78 are attached to assets 74 and are used to grant fine-grained access to an asset
A single privilege identifies what operation may be performed by what role on which asset. The mechansim for attaching privileges to assets 74 is the access control list (ACL) 80. An ACL 80 contains a series of access control entries (ACEs) 82, each of which contains a domain identifier 84, a role identifier 86, and one or more privileges 88, as shown in Figure 8. The domain identifier 84 and role identifier 86 are the security principals that may be associated with one or more members. An ACE 82 contains both because a privilege for a role must be scoped by the domain (e.g. an Admin may be able to perform some operation in one domain, but may be prevented from doing so in a different domain). A privilege allows the domain/role combination to perform an operation on the asset. As shown in Figure 9, the basic operations consist of read and write. Other operations may be available, but these are dependent upon the type of asset being administered.
In addition to privileges, a domain/role may be granted ownership over a particular operation on the ACL. An owner of an ACL is allowed to modify it within certain limits:
1. if a domain/role owns an operation on an ACL, a member who possesses that domain/role principal combination may grant the operation to the same role within a different domain.
For example, in Figure 9, a member who is in Domain ABC and has Role Foo owns the write operation on the ACL. This member effectively becomes an administrator of the ACL and is therefore allowed to grant the write operation to Role Foo in Domain DEF. He is also allowed to grant Domain DEF/Role Foo ownership of the write operation.
ACL ownership and administration are the mechanisms by which privileges are transferred between domains. In a unidirectional transfer of privileges, the capabilities of a role tend to diminish the further you move away from the "home" domain (i.e. where the asset is created). This is because an administrator may never pass on more privileges than he himself has. At most, the role capabilities would remain constant across all of the domains, but in practice this would not be likely.
In a bi-directional transfer of privileges, as shown in Figure 10, the capabilities of a role would vary across domains according to the asset in question. A registered asset is a resource that the security system is responsible for protecting. Registered assets are classified according to their asset type, which determines how assets should be identified and what operations may be performed on them. One possible list of basic asset types includes price group, price template, catalog, category, product group, and URL. This list would be of use in deploying an ordering system, or similar enterprise. New asset types may be defined at deployment time, as described below.
An asset type defines both meta-level and instance-level operations. Meta-level operations are those that are performed without an instance, for example the create operation can be invoked for a Price Template, but it does not apply to an instance because the instance does not yet exist. Instance-level operations, such as read, write, and delete, are those that are performed on an explicit instance, such as deleting a Price Template, which requires a specific instance to delete.
Individual assets are identified via a name known as a moniker. Monikers are alphanumeric strings that conform to a predetermined format as defined by the asset type. Monikers may be hierarchical in nature, and they may be defined in terms of regular expressions. For example, an asset of type URL may have the following as a moniker:
/RhythmAuthor/Content/Pricing/CategoryList.jsp
The parent asset would be as follows:
/RhythmAuthor/Content/Pricing
The preferred system supports two modes of authorization: decision-based and entitlement-based. The main difference between the two modes is the information that is returned by the security system. In decision-based mode, illustrated in Figure 11, a simple yes/no answer is returned to the client. Decision-based authorization is defined by the following sequence:
1. An initiator 90 sends a request to a resource manager 92. The request consists of an asset, an operation to perform on that asset, and the initiator's principals
(role and domain).
2. The request is intercepted by an access enforcement function 94 that lives inside of the resource manager 92.
3. The access enforcement function 94 forwards the request information to the access decision function 96.
4. The access decision function 96 renders a yes/no judgment on the request and returns this decision to the access enforcement function 94.
5. The access enforcement function 94 takes appropriate action (for example, allow request to proceed, redirect, send error message, etc.) based upon the recommendation provided. Access is allowed to the asset 98 only if the initiator's principals allow it.
In entitlement-based mode, illistrated in Figure 12, a collection of objects 99 is returned to the client. Entitlement-based authorization is defined by the following sequence:
1. An initiator 90 sends a read request to a resource manager 92. The request consists of query criteria (e.g. all computer peripheral-related categories) and the initiator's principals.
2. The request is intercepted by an access enforcement function 94 that lives inside of the resource manager 92. 3. The access enforcement function 94 forwards the request information to the query modification function 100.
4. The query modification function 100 adds security-related criteria to the request and executes a business query 102.
5. The results of the query are returned to the access enforcement function 94. 6. The access enforcement function 94 takes appropriate action (e.g. returns query results to the initiator, redirects, etc.)
The objects that are returned conform to the initiator's application-specific criteria as well as some security-specific criteria. The query results contain only the objects that the intiator has read access to, which may be a subset of those requested. A preferred embodiment allows implementers to define new asset types. The steps for defining a new asset type are as follows:
1. Create a new row in the SEC_ASSET_TYPE table. Supply values for columns NAME, DESCRIPTION, and FORMAT. The latter must be a valid regular expression that defines a unique moniker format (i.e. naming format for the string used to identify the asset). The uniqueness requirement exists because when a request is made for an asset, the moniker is supplied as an argument. In order for security to match the asset with its correct type, the moniker argument is compared against each naming format. The asset type is discovered as soon as an exact match is made. For example, the moniker
"BLM:CM.Catalog.Catalog:[2FA4A958AA8311 D4985A00508BD626C1]" cannot be mistaken as a moniker for a URL asset type because it will not match the URL format "(/[A-Za-z0-9/.J+)([?]{0,1 }.*)".
2. Determine what operations should apply to the new asset type. If these operations do not already exist in the SEC_OPERATION table, go ahead and add them. Supply values for columns NAME, DESCRIPTION, and META_FLAG. The value for the latter column should be "false" if the operation is instance-level, and "true" if it is meta-level.
3. Associate the operations with the new asset type by adding entries to the SEC_ASSET_OPERATION table. This table is merely a link table to facilitate many-to-many relationships between asset types and operations.
The above description sets forth the mechanism and steps of the preferred security system. Although the terms used are relatively self-explanatory, the following list will assist those skilled in the art in understanding the description:
Access Decision Function (ADF): A process that renders an authorization decision (yes/no). An ADF is internal to the security system.
Access Enforcement Function (AEF): A process that reacts to an authorization decision. An AEF typically controls workflow and may be internal or external to the security system.
Access Entitlement Function: A process that performs queries and limits the results to only those objects that an initiator has read access to. Active Principal Set (APS): A grouping of principals for a particular member. The APS is determined dynamically after a user is authenticated.
Anonymous User: A user whose identity has not been verified by the system. An anonymous user is considered untrustworthy.
Asset: A resource that is eligible for protection by the Security system. It is an actual physical file, application, object, or set of data.
Asset Type: A category of resources having similar security characteristics. An Asset Type is associated with one or more operations, and an operation is associated with one or more asset types.
Authentication: The process of determining the identity of a user. Authentication ensures that users are who they claim to be, but says nothing about their rights to perform an operation on a registered asset.
Authenticated User: A user whose identity has been verified by the system.
Authorization: The process of determining whether a user has the right to perform an operation on a registered (protected) asset. Authorization may occur in two modes:
1. decision mode, in which an initiator makes a request to perform an operation on an asset and a yes/no response is furnished, or
2. entitlement mode, in which an initiator makes a request to perform the read operation on a set of assets, and a filtered subset of the assets is furnished. The filtered subset contains only those assets that the initiator is allowed to read. Credential: An item that a user supplies to the system to prove his/her identity. A credential can consist of something the user knows (e.g. password) or has (e.g. digital certificate).
Group: A named collection of members who have similar characteristics.
Initiator: A client that makes a request of the security system. An initiator may be a user or an application.
Member: An account that is associated with an authenticated user. A member is associated with exactly one Person (from Profile Management), and a Person is associated with zero or one member. Operation: An action or procedure that may be performed upon an asset. An operation is specific to an asset type.
Policy: A set of rules that describe the ability of various users to access the resources within an application. A policy defines the principals that have the right to perform certain operations upon one or more assets. Principal: A name or identifier that the system uses to make authorization decisions. A principal is a necessary component of a policy. A principal may be associated with zero or more members, and a member may be associated with zero or more principals. The association between a principal and a member is determined dynamically.
Principal Acquisition: The process by which one or more principals are bound to a member to form the Active Principal Set. Principal acquisition occurs after authentication. Principal Type: A category of principals having similar characteristics. Each principal among those of the same type must be unique. The principal types are: role, company, portal.
Registered Asset: A logical representation of an actual system resource that is under the protection of the Security system.
Authorization Request: An inquiry that an initiator makes of the security system, consisting of an asset, an operation, and an active principal set.
Role: An abstract representation of a user's function or ability.
User: A person or entity that interacts with the application.
User Registration: A process by which a user supplies information about himself and thereby becomes eligible for greater access to the resources within an application. The product of the user registration process is a person and a member (account).
The described system allows for easy group administration of the overall security system. Because of transfer of privileges, various levels of administration can be passed down the line. For example, a single super user can designate other administrators having various degrees of administrative authority, so that various administrative functions can be distributed among numerous administrators. Each administrator can delegate all or a portion of her administrative rights as desired.
Also, because bi-directional transfer of privileges is allowed, same-level administrators at different companies can cooperate to effectively administer a combined system. This allows administrators to grant privileges for those domains, or portions of a domain, that they are responsible for or familiar with. In this manner, it is not necessary that a single super user is tasked with all final security responsibility. Because a customer can define additional resource types, and additional types of security to be applied to them, the system is more flexible than most available security systems. When combined with the ability for separate domains to be treated together, with individual security within a domain, a truly generic and flexible security system is provided.
While the invention has been particularly shown and described with reference to a preferred embodiment, it will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the invention.

Claims

Claims
1. A security system for a computer system, comprising:
a plurality of assets within the computer system;
a plurality of members registered to use the computer system;
a plurality of roles defining user rights, each member having at least one role;
a plurality of access control lists corresponding to the assets, each list defining at least one privilege for accessing the asset according to a member's role; and
at least one domain, each domain having a subset of the assets and corresponding access control lists, and a subset of the members;
wherein access is allowed by a member to a requested asset within a domain when that member has a role corresponding to a privilege for that asset.
2. The system of Claim 1 , wherein the privileges for each asset include actions that can be performed on that asset, and wherein access is allowed when a requested access by a member includes an action to be performed form the access control list.
3. The system of Claim 1 , wherein the privileges include a read privilege.
4. The system of Claim 1 , wherein the privileges include a modify privilege.
5. The system of Claim 1 , wherein the privileges include a delete privilege.
6. The system of Claim 1 , wherein the system includes at least two domains.
7. A method for providing secure access to assets within a computer system, comprising the steps of:
when a user attempts to access an asset within a domain, determining a at least one role assigned to the user;
comparing rights corresponding to the role assigned to the user to a list of privileges corresponding to the asset;
if the attempted access is allowed for a role assigned to the user, allowing the user to access the asset.
8. The method of Claim 7, wherein a requested access is one from the types read, modify, or delete.
9. The method of Claim 7, further comprising the step of:
prior to the user attempting to access any assets, authenticating the user's identification, and assigning at least one role to the user.
PCT/US2001/007048 2000-03-06 2001-03-06 Computer security system WO2001067682A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE10195870T DE10195870T1 (en) 2000-03-06 2001-03-06 Computer Security System
AU2001245444A AU2001245444A1 (en) 2000-03-06 2001-03-06 Computer security system

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US18737500P 2000-03-06 2000-03-06
US60/187,375 2000-03-06
US09/800,168 2001-03-05
US09/800,168 US7013485B2 (en) 2000-03-06 2001-03-05 Computer security system

Publications (1)

Publication Number Publication Date
WO2001067682A1 true WO2001067682A1 (en) 2001-09-13

Family

ID=26882966

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2001/007048 WO2001067682A1 (en) 2000-03-06 2001-03-06 Computer security system

Country Status (4)

Country Link
US (1) US7013485B2 (en)
AU (1) AU2001245444A1 (en)
DE (1) DE10195870T1 (en)
WO (1) WO2001067682A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005008358A2 (en) 2003-07-22 2005-01-27 Kinor Technologies Inc. Information access using ontologies
US7644089B2 (en) * 2004-12-29 2010-01-05 Barclays Capital, Inc. System and method for corporate-wide policy management
GB2470008A (en) * 2009-05-05 2010-11-10 Egress Software Technologies L Secure user access to data
CN101951384A (en) * 2010-09-29 2011-01-19 南京信息工程大学 Distributed security domain logic boundary protection method

Families Citing this family (153)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020026592A1 (en) * 2000-06-16 2002-02-28 Vdg, Inc. Method for automatic permission management in role-based access control systems
US7080406B2 (en) * 2000-12-15 2006-07-18 International Business Machines Corporation Method for transferring privilege access to a resource manager with subsequent loss of privilege by the initiating identity
US20020156782A1 (en) * 2001-04-19 2002-10-24 Rubert Amy L. Controlling access to database
US20070038632A1 (en) * 2001-05-31 2007-02-15 Engstrom G E Time slot based calendar access control
US7392546B2 (en) * 2001-06-11 2008-06-24 Bea Systems, Inc. System and method for server security and entitlement processing
US7370365B2 (en) * 2001-09-05 2008-05-06 International Business Machines Corporation Dynamic control of authorization to access internet services
WO2003036500A1 (en) * 2001-10-24 2003-05-01 Bea Systems, Inc. System and method for application flow integration in a portal framework
US7178033B1 (en) 2001-12-12 2007-02-13 Pss Systems, Inc. Method and apparatus for securing digital assets
US8065713B1 (en) 2001-12-12 2011-11-22 Klimenty Vainstein System and method for providing multi-location access management to secured items
US8006280B1 (en) 2001-12-12 2011-08-23 Hildebrand Hal S Security system for generating keys from access rules in a decentralized manner and methods therefor
US7478418B2 (en) * 2001-12-12 2009-01-13 Guardian Data Storage, Llc Guaranteed delivery of changes to security policies in a distributed system
US7631184B2 (en) * 2002-05-14 2009-12-08 Nicholas Ryan System and method for imposing security on copies of secured items
US7260555B2 (en) 2001-12-12 2007-08-21 Guardian Data Storage, Llc Method and architecture for providing pervasive security to digital assets
US7681034B1 (en) 2001-12-12 2010-03-16 Chang-Ping Lee Method and apparatus for securing electronic data
US10360545B2 (en) 2001-12-12 2019-07-23 Guardian Data Storage, Llc Method and apparatus for accessing secured electronic data off-line
US7921288B1 (en) 2001-12-12 2011-04-05 Hildebrand Hal S System and method for providing different levels of key security for controlling access to secured items
US7783765B2 (en) 2001-12-12 2010-08-24 Hildebrand Hal S System and method for providing distributed access control to secured documents
USRE41546E1 (en) 2001-12-12 2010-08-17 Klimenty Vainstein Method and system for managing security tiers
US7921284B1 (en) 2001-12-12 2011-04-05 Gary Mark Kinghorn Method and system for protecting electronic data in enterprise environment
US10033700B2 (en) 2001-12-12 2018-07-24 Intellectual Ventures I Llc Dynamic evaluation of access rights
US7380120B1 (en) 2001-12-12 2008-05-27 Guardian Data Storage, Llc Secured data format for access control
US7565683B1 (en) 2001-12-12 2009-07-21 Weiqing Huang Method and system for implementing changes to security policies in a distributed security system
US7930756B1 (en) 2001-12-12 2011-04-19 Crocker Steven Toye Multi-level cryptographic transformations for securing digital assets
US7921450B1 (en) 2001-12-12 2011-04-05 Klimenty Vainstein Security system using indirect key generation from access rules and methods therefor
US7950066B1 (en) 2001-12-21 2011-05-24 Guardian Data Storage, Llc Method and system for restricting use of a clipboard application
US8176334B2 (en) 2002-09-30 2012-05-08 Guardian Data Storage, Llc Document security system that permits external users to gain access to secured files
US7822980B2 (en) * 2002-03-15 2010-10-26 International Business Machines Corporation Authenticated identity propagation and translation within a multiple computing unit environment
US8613102B2 (en) 2004-03-30 2013-12-17 Intellectual Ventures I Llc Method and system for providing document retention using cryptography
US7748045B2 (en) * 2004-03-30 2010-06-29 Michael Frederick Kenrich Method and system for providing cryptographic document retention with off-line access
WO2003093964A1 (en) * 2002-05-01 2003-11-13 Bea Systems, Inc. Enterprise application platform
US7725560B2 (en) 2002-05-01 2010-05-25 Bea Systems Inc. Web service-enabled portlet wizard
US7454508B2 (en) * 2002-06-28 2008-11-18 Microsoft Corporation Consent mechanism for online entities
US7302488B2 (en) * 2002-06-28 2007-11-27 Microsoft Corporation Parental controls customization and notification
CA2838180C (en) 2002-08-19 2014-12-02 Research In Motion Limited System and method for secure control of resources of wireless mobile communication devices
GB2392517A (en) * 2002-09-02 2004-03-03 Sony Uk Ltd Providing secure access to a database
US7512810B1 (en) * 2002-09-11 2009-03-31 Guardian Data Storage Llc Method and system for protecting encrypted files transmitted over a network
US7836310B1 (en) 2002-11-01 2010-11-16 Yevgeniy Gutnik Security system that uses indirect password-based encryption
US8538840B2 (en) * 2002-12-20 2013-09-17 Siebel Systems, Inc. Financial services data model
US7890990B1 (en) 2002-12-20 2011-02-15 Klimenty Vainstein Security system with staging capabilities
US7577838B1 (en) * 2002-12-20 2009-08-18 Alain Rossmann Hybrid systems for securing digital assets
US7636853B2 (en) * 2003-01-30 2009-12-22 Microsoft Corporation Authentication surety and decay system and method
US7653930B2 (en) 2003-02-14 2010-01-26 Bea Systems, Inc. Method for role and resource policy management optimization
US8831966B2 (en) 2003-02-14 2014-09-09 Oracle International Corporation Method for delegated administration
US7591000B2 (en) 2003-02-14 2009-09-15 Oracle International Corporation System and method for hierarchical role-based entitlements
US7293286B2 (en) * 2003-02-20 2007-11-06 Bea Systems, Inc. Federated management of content repositories
US7483904B2 (en) * 2003-02-20 2009-01-27 Bea Systems, Inc. Virtual repository content model
US7840614B2 (en) 2003-02-20 2010-11-23 Bea Systems, Inc. Virtual content repository application program interface
US20040167871A1 (en) * 2003-02-20 2004-08-26 Bea Systems, Inc. Content mining for virtual content repositories
US20040167868A1 (en) * 2003-02-20 2004-08-26 Bea Systems, Inc. System and method for a virtual content repository
US7562298B2 (en) * 2003-02-20 2009-07-14 Bea Systems, Inc. Virtual content repository browser
US20040230679A1 (en) * 2003-02-28 2004-11-18 Bales Christopher E. Systems and methods for portal and web server administration
US20040230917A1 (en) * 2003-02-28 2004-11-18 Bales Christopher E. Systems and methods for navigating a graphical hierarchy
US7810036B2 (en) 2003-02-28 2010-10-05 Bea Systems, Inc. Systems and methods for personalizing a portal
US8392298B2 (en) 2003-03-04 2013-03-05 Siebel Systems, Inc. Invoice adjustment data object for a common data object format
US8473399B2 (en) 2003-03-04 2013-06-25 Siebel Systems, Inc. Invoice data object for a common data object format
US8489470B2 (en) * 2003-03-24 2013-07-16 Siebel Systems, Inc. Inventory location common object
US20070208577A1 (en) * 2003-03-24 2007-09-06 Leon Maria T B Position common object
US7912932B2 (en) 2003-03-24 2011-03-22 Siebel Systems, Inc. Service request common object
US8510179B2 (en) * 2003-03-24 2013-08-13 Siebel Systems, Inc. Inventory transaction common object
US9704120B2 (en) * 2003-03-24 2017-07-11 Oracle International Corporation Inventory balance common object
US7904340B2 (en) * 2003-03-24 2011-03-08 Siebel Systems, Inc. Methods and computer-readable medium for defining a product model
US20070226037A1 (en) * 2003-03-25 2007-09-27 Shailendra Garg Modeling of opportunity data
US7657499B2 (en) * 2003-04-07 2010-02-02 Belarc, Inc. Grouping of computers in a computer information database system
US8285720B2 (en) 2003-04-07 2012-10-09 Belarc, Inc. Grouping of computers in a computer information database system
EP1627286A1 (en) * 2003-05-28 2006-02-22 Belarc, Inc. Secure user access subsystem for use in a computer information database system
US7343628B2 (en) * 2003-05-28 2008-03-11 Sap Ag Authorization data model
US8707034B1 (en) 2003-05-30 2014-04-22 Intellectual Ventures I Llc Method and system for using remote headers to secure electronic files
US7730543B1 (en) * 2003-06-30 2010-06-01 Satyajit Nath Method and system for enabling users of a group shared across multiple file security systems to access secured files
KR20050015818A (en) * 2003-08-07 2005-02-21 삼성전자주식회사 Networking apparatus and method avaiable for use under non-security
DE10336246A1 (en) * 2003-08-07 2005-03-10 Fujitsu Siemens Computers Gmbh Method for securing a computer system
US7703140B2 (en) * 2003-09-30 2010-04-20 Guardian Data Storage, Llc Method and system for securing digital assets using process-driven security policies
US8127366B2 (en) 2003-09-30 2012-02-28 Guardian Data Storage, Llc Method and apparatus for transitioning between states of security policies used to secure electronic documents
JP4139304B2 (en) * 2003-09-30 2008-08-27 株式会社森精機製作所 Authentication system
US20050257245A1 (en) * 2003-10-10 2005-11-17 Bea Systems, Inc. Distributed security system with dynamic roles
US20050097353A1 (en) * 2003-10-10 2005-05-05 Bea Systems, Inc. Policy analysis tool
US20050081055A1 (en) * 2003-10-10 2005-04-14 Bea Systems, Inc. Dynamically configurable distributed security system
US8549170B2 (en) 2003-12-19 2013-10-01 Nvidia Corporation Retransmission system and method for a transport offload engine
US7702909B2 (en) * 2003-12-22 2010-04-20 Klimenty Vainstein Method and system for validating timestamps
US7400878B2 (en) 2004-02-26 2008-07-15 Research In Motion Limited Computing device with environment aware features
US7774601B2 (en) * 2004-04-06 2010-08-10 Bea Systems, Inc. Method for delegated administration
US20050228784A1 (en) * 2004-04-13 2005-10-13 Bea Systems, Inc. System and method for batch operations in a virtual content repository
US7475091B2 (en) * 2004-04-13 2009-01-06 Bea Systems, Inc. System and method for viewing a virtual content repository
US7580953B2 (en) * 2004-04-13 2009-08-25 Bea Systems, Inc. System and method for schema lifecycles in a virtual content repository that integrates a plurality of content repositories
US20050251503A1 (en) * 2004-04-13 2005-11-10 Bea Systems, Inc. System and method for content and schema versioning
US20050246762A1 (en) * 2004-04-29 2005-11-03 International Business Machines Corporation Changing access permission based on usage of a computer resource
EP1741225B1 (en) 2004-04-30 2011-03-02 Research In Motion Limited System and method for filtering data transfers within a mobile device
US20050256906A1 (en) * 2004-05-14 2005-11-17 Bea Systems, Inc. Interface for portal and webserver administration-efficient updates
US20050257172A1 (en) * 2004-05-14 2005-11-17 Bea Systems, Inc. Interface for filtering for portal and webserver administration
US20050257154A1 (en) * 2004-05-14 2005-11-17 Bea Systems, Inc. Graphical association of elements for portal and webserver administration
US20050256899A1 (en) * 2004-05-14 2005-11-17 Bea Systems, Inc. System and method for representing hierarchical data structures
US7707427B1 (en) * 2004-07-19 2010-04-27 Michael Frederick Kenrich Multi-level file digests
US9697373B2 (en) * 2004-11-05 2017-07-04 International Business Machines Corporation Facilitating ownership of access control lists by users or groups
US7702758B2 (en) * 2004-11-18 2010-04-20 Oracle International Corporation Method and apparatus for securely deploying and managing applications in a distributed computing infrastructure
US7783670B2 (en) * 2004-11-18 2010-08-24 Bea Systems, Inc. Client server conversion for representing hierarchical data structures
US7703135B2 (en) * 2004-12-21 2010-04-20 International Business Machines Corporation Accessing protected resources via multi-identity security environments
US20060218394A1 (en) * 2005-03-28 2006-09-28 Yang Dung C Organizational role-based controlled access management system
US8631476B2 (en) * 2005-03-31 2014-01-14 Sap Ag Data processing system including explicit and generic grants of action authorization
US7614082B2 (en) 2005-06-29 2009-11-03 Research In Motion Limited System and method for privilege management and revocation
US20070073784A1 (en) * 2005-09-26 2007-03-29 Bea Systems, Inc. System and method for type inheritance for content management
US7483893B2 (en) * 2005-09-26 2009-01-27 Bae Systems, Inc. System and method for lightweight loading for managing content
US20070073638A1 (en) * 2005-09-26 2007-03-29 Bea Systems, Inc. System and method for using soft links to managed content
US20070073674A1 (en) * 2005-09-26 2007-03-29 Bea Systems, Inc. System and method for providing federated events for content management systems
US20070073673A1 (en) * 2005-09-26 2007-03-29 Bea Systems, Inc. System and method for content management security
US7752205B2 (en) 2005-09-26 2010-07-06 Bea Systems, Inc. Method and system for interacting with a virtual content repository
US7953734B2 (en) 2005-09-26 2011-05-31 Oracle International Corporation System and method for providing SPI extensions for content management system
US7917537B2 (en) 2005-09-26 2011-03-29 Oracle International Corporation System and method for providing link property types for content management
US7818344B2 (en) 2005-09-26 2010-10-19 Bea Systems, Inc. System and method for providing nested types for content management
US20090216831A1 (en) * 2005-11-21 2009-08-27 Buckner George R Entity identity management system and associated methods
US8024794B1 (en) * 2005-11-30 2011-09-20 Amdocs Software Systems Limited Dynamic role based authorization system and method
US8261331B2 (en) * 2006-01-17 2012-09-04 International Business Machines Corporation Security management for an integrated console for applications associated with multiple user registries
US8555403B1 (en) * 2006-03-30 2013-10-08 Emc Corporation Privileged access to managed content
US7895639B2 (en) * 2006-05-04 2011-02-22 Citrix Online, Llc Methods and systems for specifying and enforcing access control in a distributed system
US20080034402A1 (en) * 2006-08-07 2008-02-07 International Business Machines Corporation Methods, systems, and computer program products for implementing policy-based security control functions
US7904953B2 (en) * 2006-09-22 2011-03-08 Bea Systems, Inc. Pagelets
US8463852B2 (en) * 2006-10-06 2013-06-11 Oracle International Corporation Groupware portlets for integrating a portal with groupware systems
US7950049B2 (en) * 2006-10-24 2011-05-24 Avatier Corporation Hybrid meta-directory
US8931057B2 (en) 2006-10-24 2015-01-06 Avatier Corporation Apparatus and method for access validation
US7707623B2 (en) * 2006-10-24 2010-04-27 Avatier Corporation Self-service resource provisioning having collaborative compliance enforcement
US20080120302A1 (en) * 2006-11-17 2008-05-22 Thompson Timothy J Resource level role based access control for storage management
US8402514B1 (en) 2006-11-17 2013-03-19 Network Appliance, Inc. Hierarchy-aware role-based access control
US8904391B2 (en) * 2007-04-23 2014-12-02 International Business Machines Corporation Policy-based access control approach to staff activities of a business process
US20080271122A1 (en) * 2007-04-27 2008-10-30 John Edward Nolan Granulated hardware resource protection in an electronic system
US8650616B2 (en) * 2007-12-18 2014-02-11 Oracle International Corporation User definable policy for graduated authentication based on the partial orderings of principals
US8645423B2 (en) 2008-05-02 2014-02-04 Oracle International Corporation Method of partitioning a database
CN101316273B (en) * 2008-05-12 2012-08-22 华中科技大学 Distributed safety memory system
US8468607B2 (en) * 2009-10-07 2013-06-18 International Business Machines Corporation Associating multiple security domains to application servers
US20110307940A1 (en) * 2010-06-09 2011-12-15 Joseph Wong Integrated web application security framework
US8959451B2 (en) 2010-09-24 2015-02-17 Blackberry Limited Launching an application based on data classification
CN103229183B (en) 2010-09-24 2016-05-11 黑莓有限公司 Be used for the method and apparatus of the access control of differentiation
US9147085B2 (en) 2010-09-24 2015-09-29 Blackberry Limited Method for establishing a plurality of modes of operation on a mobile device
US9047451B2 (en) 2010-09-24 2015-06-02 Blackberry Limited Method and apparatus for differentiated access control
US8578461B2 (en) 2010-09-27 2013-11-05 Blackberry Limited Authenticating an auxiliary device from a portable electronic device
US9225727B2 (en) 2010-11-15 2015-12-29 Blackberry Limited Data source based application sandboxing
US20130039266A1 (en) 2011-08-08 2013-02-14 Research In Motion Limited System and method to increase link adaptation performance with multi-level feedback
US9497220B2 (en) 2011-10-17 2016-11-15 Blackberry Limited Dynamically generating perimeters
US9161226B2 (en) 2011-10-17 2015-10-13 Blackberry Limited Associating services to perimeters
US9613219B2 (en) 2011-11-10 2017-04-04 Blackberry Limited Managing cross perimeter access
US8799227B2 (en) 2011-11-11 2014-08-05 Blackberry Limited Presenting metadata from multiple perimeters
US9262604B2 (en) 2012-02-01 2016-02-16 Blackberry Limited Method and system for locking an electronic device
US9698975B2 (en) 2012-02-15 2017-07-04 Blackberry Limited Key management on device for perimeters
CA2805960C (en) 2012-02-16 2016-07-26 Research In Motion Limited Method and apparatus for management of multiple grouped resources on device
EP2629478B1 (en) 2012-02-16 2018-05-16 BlackBerry Limited Method and apparatus for separation of connection data by perimeter type
EP2629570B1 (en) 2012-02-16 2015-11-25 BlackBerry Limited Method and apparatus for automatic vpn login and interface selection
US9426145B2 (en) 2012-02-17 2016-08-23 Blackberry Limited Designation of classes for certificates and keys
CA2799903C (en) 2012-02-17 2017-10-24 Research In Motion Limited Certificate management method based on connectivity and policy
US9369466B2 (en) 2012-06-21 2016-06-14 Blackberry Limited Managing use of network resources
US8972762B2 (en) 2012-07-11 2015-03-03 Blackberry Limited Computing devices and methods for resetting inactivity timers on computing devices
US8656016B1 (en) 2012-10-24 2014-02-18 Blackberry Limited Managing application execution and data access on a device
US9075955B2 (en) 2012-10-24 2015-07-07 Blackberry Limited Managing permission settings applied to applications
CN104969176B (en) 2013-01-29 2019-12-27 黑莓有限公司 Method, device and medium for managing access of application to certificate and secret key
US10169937B1 (en) * 2016-10-20 2019-01-01 Jpmorgan Chase Bank, N.A. Systems and methods for multifactor physical authentication
US11582244B2 (en) 2017-03-23 2023-02-14 International Business Machines Corporation Access control of administrative operations within an application
US11822683B2 (en) 2018-11-30 2023-11-21 Seclore Technology Private Limited System for automatic permission management in different collaboration systems

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5315657A (en) 1990-09-28 1994-05-24 Digital Equipment Corporation Compound principals in access control lists
US5956715A (en) * 1994-12-13 1999-09-21 Microsoft Corporation Method and system for controlling user access to a resource in a networked computing environment
US5677851A (en) * 1994-12-15 1997-10-14 Novell, Inc. Method and apparatus to secure digital directory object changes
US5889952A (en) * 1996-08-14 1999-03-30 Microsoft Corporation Access check system utilizing cached access permissions
US5748890A (en) 1996-12-23 1998-05-05 U S West, Inc. Method and system for authenticating and auditing access by a user to non-natively secured applications
CA2228331C (en) * 1998-01-30 2002-01-15 Ibm Canada Limited-Ibm Canada Limitee A token-based deadline enforcement system for electronic document submission
US6748890B1 (en) * 2003-03-17 2004-06-15 Michael Norment Device and method for carrying and tethering a power kite

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
KADNIER G.W.: "Windows NT 4: The Complete Reference, (chapter 16)", 1997, THE MCGRAW-HILL CO., CALIFORNIA,, XP002943545 *
SANT'ANGELO: "Windows NT 4: Administrator's Survival Guide", 1997, SAM'S PUBLISHING, INDIANAPOLIS, XP002943546 *
SOSINSKY B.: "Windows NT 4 Answers! Certified Teach Support,(Chapter 8)", 1998, OSBORNE/MCGRAW-HILL, CALIFORNIA, XP002943547 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005008358A2 (en) 2003-07-22 2005-01-27 Kinor Technologies Inc. Information access using ontologies
EP1654679A2 (en) * 2003-07-22 2006-05-10 Kinor Technologies Inc. Information access using ontologies
EP1654679A4 (en) * 2003-07-22 2010-11-24 Kinor Technologies Inc Information access using ontologies
US7644089B2 (en) * 2004-12-29 2010-01-05 Barclays Capital, Inc. System and method for corporate-wide policy management
GB2470008A (en) * 2009-05-05 2010-11-10 Egress Software Technologies L Secure user access to data
GB2470008B (en) * 2009-05-05 2014-01-29 Egress Software Technologies L Secure user access to data
CN101951384A (en) * 2010-09-29 2011-01-19 南京信息工程大学 Distributed security domain logic boundary protection method
CN101951384B (en) * 2010-09-29 2013-08-07 南京信息工程大学 Distributed security domain logic boundary protection method

Also Published As

Publication number Publication date
DE10195870T1 (en) 2003-03-13
US7013485B2 (en) 2006-03-14
AU2001245444A1 (en) 2001-09-17
US20010047485A1 (en) 2001-11-29

Similar Documents

Publication Publication Date Title
US7013485B2 (en) Computer security system
US7827598B2 (en) Grouped access control list actions
EP1514173B1 (en) Managing secure resources in web resources that are accessed by multiple portals
US7882549B2 (en) Systems for authenticating a user's credentials against multiple sets of credentials
US7062563B1 (en) Method and system for implementing current user links
US7103784B1 (en) Group types for administration of networks
US7185359B2 (en) Authentication and authorization across autonomous network systems
US7865959B1 (en) Method and system for management of access information
US6256737B1 (en) System, method and computer program product for allowing access to enterprise resources using biometric devices
US4919545A (en) Distributed security procedure for intelligent networks
US6327658B1 (en) Distributed object system and service supply method therein
US8990896B2 (en) Extensible mechanism for securing objects using claims
US6678682B1 (en) Method, system, and software for enterprise access management control
US20020178377A1 (en) Method and system for server support for pluggable authorization systems
US6732172B1 (en) Method and system for providing cross-platform access to an internet user in a heterogeneous network environment
US6681330B2 (en) Method and system for a heterogeneous computer network system with unobtrusive cross-platform user access
MXPA04007410A (en) Moving principals across security boundaries without service interruption.
EP1838069B1 (en) Registration of peer to peer services
US8019992B2 (en) Method for granting user privileges in electronic commerce security domains
US6826695B1 (en) Method and system for grouping of systems in heterogeneous computer network
CN115378635A (en) Inter-system cross-domain access control method and platform based on roles
TW493122B (en) Computer security system
Smith-Thomas et al. Implementing role based, Clark-Wilson enforcement rules in a B1 on-line transaction processing system
Huawei Technologies Co., Ltd. Database Security Fundamentals
Basin Access Control and Security Policies I

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP