Restricción de tabla cruzada de MS SQL Server
Tengo tres mesas:
1) Aplicaciones (AppId, Nombre)
2) Pantalla (ScreenId, Nombre)
3) Relación (AppId, ScreenId)
Ahora quiero aplicar algunas restricciones en la tabla relacionada: la misma pantalla se puede asignar a varias aplicaciones, pero no puede haber dos pantallas con el mismo nombre que asignadas a la misma aplicación.
Sé que puedo agregar Screen.Name a la tabla de relaciones y luego crear PK en AppId y Screen.Name, pero no quiero esa solución, ya que Screen.Name está sujeto a cambios.
¿Qué opciones adicionales tengo para lograr dicha restricción?