In the popular press there are two schools of thinking. Those that always use artifical keys (autonumbers) and those that use natural keys when they exist. I belong to the latter. Use an autonumber when:
1. Your table does not contain an appropriate candidate key.
2. To create a unique key would require the use of more than three separate fields (Access allows 10, other RDBMS's allow more).
Relation tables fall into two classes. Those that can be uniquely defined with the two primary keys and those that can't. The first type are tables such as EmployeeSkills where the key would be EmployeeID plus SkillID. The second type are relations that need to be maintained over time. An example would be EmployeePositions. Here you would need the EmployeeID, PositionID, and a StartDate to uniquely define a row. History needs to be maintained and an employee may hold the same position during multiple timeframes. These tables for some reason seem to be more likely to have dependent tables and when that happens, I prefer to use an autonumber primary key and simply use a unique index to enforce the uniqueness of the "natural" key.