namespace Connected.Security.Authentication
{
///
/// The service which performs authentication requests.
///
///
/// The service uses registered to perform
/// the actual authentication.
///
public interface IAuthenticationService
{
///
/// Performs authentication against identity. Identity is not necessarry a user, it can be device, process
/// or any other entity which needs protection.
///
/// The authentication arguments explaining the identity. The following identities are supported by a
/// default authentication provider:
///
///
///
///
///
///
///
///
/// containing information about authentication wether it is successfull or not and
/// the reason why it was not successfully. If it's successfully it also provides identity.
///
Task Authenticate(AuthenticationArgs args);
}
}