ServiceStackでasp.netメンバーシップを使用するにはどうすればよいですか?(ServiceStack.OrmLite、ServiceStack.Host.AspNetなど)
2 に答える
カスタムパスでServiceStackをホストできます。つまり、/ apiで、ASP.NET WebフォームとServiceStackを並べて実行し、ASP.NETで通常のASP.NETメンバーシッププロバイダーを使用できます。
次に、セッションプロバイダーを使用してUserSessionsをServiceStackと共有できます。これは、MVCでセッションをインスタンス化する方法の例です。ASP.NETでこれと同じクラスを使用できます。
別の方法は、ASP.NETメンバーシッププロバイダーを放棄し、ServiceStackに組み込まれている認証に固執することです。クレデンシャル(つまり、ユーザー/パス-必要なもの)のサポートだけでなく、Twitter / Facebook /BasicAuth+独自のサポートも含まれます。インメモリ、OrmLite、Redisバックエンドを使用します。
これは、OrmLiteバックエンドを使用して同じServiceStackアプリですべての認証オプションを使用するWebサイトの例です。
メンバーシップを使用し、メンバーシップフレームワークでORM liteを使用する場合(ただし、SqlMembershipProviderを使用することもできます)、次のようなカスタムプロバイダークラスを作成できます。
public class ServiceStackMembershipProvider : MembershipProvider
{
}
そして、ORMコンポーネントを使用して、すべてのメソッド(または少なくとも必要なメソッド)を実装します。