// .Net StockTrader Sample WCF Application for Benchmarking, Performance Analysis and Design Considerations for Service-Oriented Applications
//======================================================================================================
// This is the BSL Custom Username validator. It utilizes the provide base class,
// CustomUserNameValidator, that comes with Config Service. This base class uses the Configuration
// Service repository itself to validate against this user store. You can override to validate against
// your own custom store of username/passwords.
//======================================================================================================
using System;
using System.Collections.Generic;
using System.Text;
using Trade.Utility;
using Trade.BusinessServiceConfigurationSettings;
namespace Trade.BusinessServiceImplementation
{
///
/// No override necessary--we are going to use stock base methods to validate
/// against the service repository Users table.
///
public class TradeBSLCustomUserNameValidator : CustomUserNameValidator
{
public TradeBSLCustomUserNameValidator() { }
///
/// Overrides to instead validate the username/password against the Configuration DB Users table.
///
/// User id coming in as UserName credentials from client.
/// Password coming in as UserName credentials from client.
public override void Validate(string userName, string password)
{
//Add custom user name validation if desired here. Will only be activated if binding security is
//set for ClientCredentials = UserName.
if (userName!=Settings.BSL_VALID_USERID || password!=Settings.BSL_VALID_PASSWORD)
throw new Exception("UserName Authentication Failed");
}
}
}