How do you create a relationship to a non-primary key in SQL Server?
Create a unique index or unique constraint on UserName then you can reference it in a FK constraint fine.

Your statement that 


  Sql Server doesn't allow me to create a relationship on a non primary
  key column


is incorrect. SQL Server only cares that the column(s) participating in the FK relationship have a unique index defined.