UPN 以外の属性で シングルサインオン する方法
今回は SAML でのシングルサインオン(以降 SSO )設定で、UPN 以外の属性を使用し SSO する方法について書いていきます。
可能なのか
まず可能なのかというと、可能です。
SAML トークン でSP( Service Provider ) に渡す NameIdentifer を UPN 以外の属性に変更することで実現可能となります。
参考:Microsoft 社 公開記事
設定方法
設定はエンタープライズアプリを SAML トークンを使用した SSO 設定する際の設定項目「ユーザー属性とクレーム」にて設定します。

編集する箇所は上記の「一意のユーザー ID」となります。
例えば SAML の NameID (一意のユーザー ID )としてオンプレADの samAccountName を使用したい場合、編集画面にてクレーム名「 http://省略/nameidentifier 」のソース属性を
「 user.onpremisessamaccountName 」としてあげます。

これで設定は完了です。
samAccountName で SSO が可能となります。
ちなみに Salesforce ではユーザー名がメールアドレスと同じ形式でないと作成できないため、以下のような設定方法となります。

また、他の方法についてもご紹介します。
例えば SP にUPNとは異なる名前で作成したユーザー名 「test@mahty.com」でSSOをさせたい場合、まず、ユーザー属性 user.extensionattribute2 の値として「test@mahty.com」を設定します。その後、以下のように user.extensionattribute2 を指定します。
※ オンプレミスの AD と同期している環境下であればオンプレミス側で ExtensionAttributeを編集し、同期してください。
※ 今回は ExtensionAttribute2 属性を使用しておりますが、その他の属性を使用することも可能です。

これで設定は完了です。
UPN とは異なるユーザー名 「test@mahty.com」で SSO することが可能となります。
まとめ
UPN 以外の属性を使用し SSO することは可能です。
SP側に一人が複数のアカウントを作成する場合、一方はUPN、一方は他属性として SSO が可能となり、有効な手段となりそうです。