As more and more enterprises make their critical information available on the Internet, whether only to employees or to end-customers, they are exposed to significant risks such as theft, fraud, and denial of service attacks. In general, the most significant consequences result from attacks within the system by otherwise legitimate users (or attackers posing as such users) performing unauthorized activities.
Detecting these kinds of attacks can require instrumenting applications to generate audit records based on activity that is only understood at the application layer.
In addition to having a means to detect attacks (the role of an intrusion detection system) it is essential to have well defined policies that indicate what to do under perceived attack conditions, or for that matter under suspicion of attack conditions so that data can be gathered to make an actual determination of whether an attack is present.
Countermeasures to such attacks must similarly be implemented at the application layers through enforcement of policies that can distinguish legitimate and illegitimate activities - a distinction that often requires application level knowledge.
While users might not be prevented from using resources to which they have legitimate access, protective measures, such as audit analysis along with the threshold control can be used to examine user actions. Consider an authorization policy: ``Members of department 1#1 can access the printer 2#2. If the number of print jobs created during the day is higher than 20, activate audit to log time, file and account names''. In this policy the threshold is used to detect suspicious use of resources. An audit log can reveal that an individual is printing far more records than the average user, which could indicate the running of a covert business.
The policies themselves must automatically adapt to meet the changing security requirements in the event of possible intrusion while allowing users to operate in the changing environment. For example, consider authorization policy: ``Tom can connect to host 3#3 if the system threat level is low (normal operational state). If the system threat level is medium (indicates suspicious behavior), Tom can connect only from a host within the administrative domain 4#4. The connection duration time should not exceed 2 hours. If the system threat level is high (system is under attack), Tom can not connect.''
Current access control systems are based on the premise that once a user is authorized to perform some operation, the access is granted unconditionally. This practice is not likely to detect the abuse of user privileges. To provide additional level of security checks, close monitoring of authorized actions may be necessary. Policies can be applied to controlling execution of the requested actions.
The points of the policy enforcement may include three time phases:
To protect sensitive and critical system resources in distributed environments, a system must be capable of supporting advanced security policies:
The ability to enforce advanced policies has practical importance, for example, in computational Grids [5]. Grids are large-scale distributed computing environments that enable applications to use scientific instruments, computational and information resources that are managed by diverse organizations.
System administrators contributing their resources to a Grid will require assurance that the resources are adequately protected. In a Grid setting, the security requirements include:
Authentication, authorization, audit, notification and intrusion detection systems are interrelated and should be used together to support effective system security.
The goal of this work is to design an authorization system that supports the advanced security policies.