CS 537 Notes, Section #29: Protection and Security


The purpose of a protection system is to prevent accidental or intentional misuse of a system.

There are three aspects to a protection mechanism:

Even the slightest flaw in any of these areas may ruin the whole protection mechanism.

Authentication

User identification is most often done with passwords. This is a relatively weak form of protection.

Another form of identification: badge or key.

Key paradox: key must be cheap to make, hard to duplicate. This means there must be some trick (i.e. secret) that has to be protected.

Once identification is complete, the system must be sure to protect the identity since other parts of the system will rely on it.

Authorization Determination

Must indicate who is allowed to do what with what. Draw the general form as an access matrix with one row per user, one column per file. Each entry indicates the privileges of that user on that object. There are two general ways of storing this information: access lists and capabilities.

Access Lists: with each file, indicate which users are allowed to perform which operations.

Capabilities: with each user, indicate which files may be accessed, and in what ways.


Protection Matrix

Are the following things access-based or capability-based protection schemes?

Access Enforcement

Some part of the system must be responsible for enforcing access controls and protecting the authorization and identification information.



Copyright © 1997, 2002 Barton P. Miller
Non-University of Wisconsin students and teachers are welcome to print these notes their personal use. Further reproduction requires permission of the author.