複数の形式の認証を必要とするアプリケーションを作成中です。
アプリケーションは Active Directory への認証をサポートする必要がありますが、ユーザーが Active Directory にいない場合は SQL メンバーシップ プロバイダーにフェールバックできる必要があります。ユーザー名は Active Directory ユーザー名とは異なる形式になるため、提供されたユーザー名に基づいてコードで SQL プロバイダーへの失敗を処理できます。
これは可能ですか?つまり、メンバーシップを使用して、ActiveDirectoryMembershipProvider と SqlMembershipProvider の両方を一緒に使用できますか、それとも自分で作成する必要がありますか?
もう 1 つの追加の複雑さは、Windows 認証に基づいて内部ユーザーを AD に自動的に認証したいが、内部ネットワークにないユーザー、または SQL プロバイダーを使用しているユーザーにはフォーム認証を使用したいということです。
これらはおそらく別のサーバーであり、1 つは内部、もう 1 つは外部であるため、データの複製を把握するために多くの計画を立て、AD ユーザーが外部サーバーにアクセスした場合にどのように認証するかなどを検討しています。
この道を歩き始めるとき、そこにはどんな考えがあるのだろうと思っています。私がやりたいことは、私が自分自身を転がさなくても可能ですか、またはこれらを噛み合わせる方法はありますか?
返信いただきありがとうございます。
私が最初に尋ねた理由は、約 7 年前に IIS を使用して認証し、資格情報を Lotus Domino Server Web App に戻すことで、この特定のセネリオを機能させることができたからです。ユーザーが Windows 認証/ISS を介して認証されなかった場合、Domino が認証を処理します。これは私がここでやろうとしていたことでしたが、実際には IIS で機能させる方法が思いつきませんでした。
あなたの返信の残りの部分については、あなたは私が取るべき道を進んでいると思います。私はこれを熟考し、頭の中で何度も投げました。とにかく、外部サーバー上のデータへのアクセスが制限されるため、アプリケーションは 2 つのサーバー上で多少異なります。すでに多くのことが異なるという事実は、これらを 2 つのアプリケーションとして扱うことで、同じアプリケーションで 2 種類の認証を使用する必要性をなくすことができます。
外部サーバー用に独自の認証/ログインウィンドウを作成するというアイデアを既に試しています。ユーザーが外部サーバーで AD 資格情報を使用してログインしようとすると、それを検出して内部にリダイレクトできます。サーバ。ローカル ネットワークまたは VPN に接続されていない場合は、単にアクセスできません。この部分にはまだいくつかの思考プロセスが必要なので、よくわかりません。
追加の考えとして、セキュリティ上の問題を発生させずに、AD 資格情報を使用して外部サーバーから SQL データベースに対してユーザーを認証できるようにするために、SQL データベースに十分な量の AD をプルする方法はありますか? 私が考えていることを明確に入力していることを願っています....
再度、感謝します!
ティム