0

WCF サービスを備えたステートレス サーバーがあります。サーバーは複数の DB 接続を持つことができます。したがって、WCF リクエストごとに DB 接続を提供する必要があります。これは request オブジェクト内で行います。したがって、サーバーへのすべての WCF 要求には、DB 接続に関する情報が含まれています。これは、関数の操作コントラクトです。

 <OperationContract()>
 Function ReadPersons(ByVal aRequest As ReadPersonsRequest) As PersonsResponse

これは、リクエストのデータ コントラクトです。

<DataContract()>
Public Class ReadPersonsRequest
    <DataMember()>
    Public Property DatabaseConfig() As DatabaseConfig

ここで、WCF サービスのカスタム認証が必要です。そこで、UserNamePasswordValidator から継承した CustomUserNamePasswordValidator を実装しました。ユーザー名とパスワードを取得します。ユーザーはDBに格納されます。したがって、認証のために DB リクエストを行う必要があります。問題は、サーバーがどの DB を使用する必要があるかがわからないことです。この情報は WCF サービス関数の要求オブジェクトで送信されるためです (上記を参照)。

UserNamePasswordValidator の実装で、呼び出された WCF サービス関数のパラメーター (要求オブジェクト) を取得する方法はありますか?

4

1 に答える 1