using System.Collections.Generic; namespace ServiceStack.ServiceInterface.Auth { public interface IAuthProvider { string AuthRealm { get; set; } string Provider { get; set; } string CallbackUrl { get; set; } /// /// Remove the Users Session /// /// /// /// object Logout(IServiceBase service, Auth request); /// /// The entry point for all AuthProvider providers. Runs inside the AuthService so exceptions are treated normally. /// Overridable so you can provide your own Auth implementation. /// object Authenticate(IServiceBase authService, IAuthSession session, Auth request); /// /// Determine if the current session is already authenticated with this AuthProvider /// bool IsAuthorized(IAuthSession session, IOAuthTokens tokens, Auth request = null); } public interface IOAuthProvider : IAuthProvider { IAuthHttpGateway AuthHttpGateway { get; set; } string ConsumerKey { get; set; } string ConsumerSecret { get; set; } string RequestTokenUrl { get; set; } string AuthorizeUrl { get; set; } string AccessTokenUrl { get; set; } } }