Relationship tables frequently have three candidate keys, one of which need not be enforced with a constraint, and the choice of which key (if any) should be 'primary' is arbitrary. 
Consider this example from Joe Celko:
CREATE TABLE Couples
(boy_name INTEGER NOT NULL UNIQUE -- nested key
REFERENCES Boys (boy_name),
girl_name INTEGER NOT NULL UNIQUE -- nested key,
REFERENCES Girls(girl_name),
PRIMARY KEY(boy_name, girl_name)); -- compound key
The "Couples" table lets you insert
  these rows from the original set:
('Joe Celko', 'Brooke Shields')
('Alec Baldwin', 'Kim Bassinger')
Think about this table for a minute.
  The PRIMARY KEY is now redundant. If
  each boy appears only once in the
  table and each girl appears only once
  in the table, then each (boy_name,
  girl_name) pair can appear only once.
From a theoretical viewpoint, I could
  drop the compound key and make either
  boy_name or girl_name the new primary
  key, or I could just leave them as
  candidate keys.
SQL products and theory do not always
  match. Many products make the
  assumption that the PRIMARY KEY is in
  some way special in the data model and
  will be the way to access the table
  most of the time.
...HOWEVER I suspect you question is implying something more like, "Assuming I'm the kind of person who shuns natural keys in favour of artificial identifiers, should I add an artificial identifier to a table that is composed entirely of artificial identifiers referenced from other tables?"