アプリでユーザー名/パスワードを使用する際のセキュリティ リスクを回避し、認証を簡素化するために、Windows Azure アクセス コントロールを使用しようとしています。ただし、これは、ユーザーを「事前認証」したい中規模または大規模の企業が使用できるサイトです。つまり、ユーザーが Azure ACS を介してサインインする前に、ユーザーの Windows Live ID を入力してユーザーを一括作成し、アカウントを自動的に作成したい場合があります。アカウントを作成するための 1 回限りのページへのリンクを記載したメールをそのユーザーに送信することで、これを実現できますが、もう少しシームレスなことをしたいと考えています。
私がやろうとしているのは、Team Foundation Service (*.visualstudio.com) を使用して、Windows Live ID を入力するだけでユーザーをチーム プロジェクトに追加できるようにする方法と同じです。一度入力すると、ユーザーはログインしてプロジェクトにアクセスできます。 、そのユーザーが以前に TFS にサインインしたことがない場合でも。
私が理解していないのは、ACS と System.IdentityModel を使用してそれを行う方法です。nameidentifier クレームを使用してユーザーを一意に識別できますが、特定のプロバイダーを介して別のユーザーの nameidentifier を取得するにはどうすればよいですか?
説明が下手で申し訳ありませんが、お気軽にご質問ください。