Author: bendewey
Date: Thu Mar 4 02:41:05 2010
New Revision: 918824
URL: http://svn.apache.org/viewvc?rev=918824&view=rev
Log:
JIRA: STONEHENGE-103
Updated .NET Stocktrader to support username with Transport Security, Thanks
Submitted by: Pablo Cibraro
Added:
incubator/stonehenge/trunk/stocktrader/dotnet/common/StockTraderUtility/PermissiveCertificatePolicy.cs
incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorImplementation/TradeOPSCustomUserNameValidator.cs
Removed:
incubator/stonehenge/trunk/stocktrader/dotnet/common/StockTraderUtility/ConfigCertificatePolicy.cs
Modified:
incubator/stonehenge/trunk/stocktrader/dotnet/business_service/BusinessServiceConfigurationSettings/Settings.cs
incubator/stonehenge/trunk/stocktrader/dotnet/business_service/BusinessServiceConsole/App.config
incubator/stonehenge/trunk/stocktrader/dotnet/business_service/BusinessServiceConsole/Program.cs
incubator/stonehenge/trunk/stocktrader/dotnet/business_service/OrderProcessorASyncClient/OrderProcessorAsyncClient.cs
incubator/stonehenge/trunk/stocktrader/dotnet/common/DALSQLServer/Config.cs
incubator/stonehenge/trunk/stocktrader/dotnet/common/OrderProcessorServiceConfigurationSettings/Settings.cs
incubator/stonehenge/trunk/stocktrader/dotnet/common/StockTraderUtility/Utility.csproj
incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorConsoleServiceHost/App.config
incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorConsoleServiceHost/Program.cs
incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorImplementation/OrderProcessorImplementation.csproj
incubator/stonehenge/trunk/stocktrader/dotnet/setup_utilities/DataLoad/insertdbconfig.sql
Modified:
incubator/stonehenge/trunk/stocktrader/dotnet/business_service/BusinessServiceConfigurationSettings/Settings.cs
URL:
http://svn.apache.org/viewvc/incubator/stonehenge/trunk/stocktrader/dotnet/business_service/BusinessServiceConfigurationSettings/Settings.cs?rev=918824&r1=918823&r2=918824&view=diff
==============================================================================
---
incubator/stonehenge/trunk/stocktrader/dotnet/business_service/BusinessServiceConfigurationSettings/Settings.cs
(original)
+++
incubator/stonehenge/trunk/stocktrader/dotnet/business_service/BusinessServiceConfigurationSettings/Settings.cs
Thu Mar 4 02:41:05 2010
@@ -93,7 +93,10 @@
public static string BSL_VALID_USERID;
public static string BSL_VALID_PASSWORD;
public static string BS_LABEL;
-
+ public static string OPS_LABEL;
+ public static string OPS_USERID;
+ public static string OPS_PASSWORD;
+ public static string OPS_SSL_CERTIFICATE;
//End Repository Settings -----------------------------------
@@ -107,7 +110,7 @@
//set on startup based on config settings from repository
public static int TRANSACTION_MODEL = -1;
- public Settings()
+ static Settings()
{
Settings.CS_DOTNET_ENDPOINT_CONFIG_HTTP =
ConfigurationManager.AppSettings.Get("CS_DOTNET_ENDPOINT_CONFIG_HTTP");
@@ -124,6 +127,11 @@
Settings.BSL_VALID_USERID =
ConfigurationManager.AppSettings.Get("BSL_VALID_USERID");
Settings.BSL_VALID_PASSWORD =
ConfigurationManager.AppSettings.Get("BSL_VALID_PASSWORD");
Settings.BS_LABEL =
ConfigurationManager.AppSettings.Get("BS_LABEL");
+ Settings.OPS_LABEL =
ConfigurationManager.AppSettings.Get("OPS_LABEL");
+ Settings.OPS_USERID =
ConfigurationManager.AppSettings.Get("OPS_USERID");
+ Settings.OPS_PASSWORD =
ConfigurationManager.AppSettings.Get("OPS_PASSWORD");
+ Settings.OPS_SSL_CERTIFICATE =
ConfigurationManager.AppSettings.Get("OPS_SSL_CERTIFICATE");
+
buildConnString();
setTxModel();
}
@@ -153,7 +161,7 @@
/// This method builds a connection string based on DAL setting and
settings for the database name, location, uid and password.
/// Called on host initialization and also when the DAL or DB
connection parameters are changed via ConfigWeb.
/// </summary>
- private void buildConnString()
+ private static void buildConnString()
{
switch (Settings.DAL)
{
Modified:
incubator/stonehenge/trunk/stocktrader/dotnet/business_service/BusinessServiceConsole/App.config
URL:
http://svn.apache.org/viewvc/incubator/stonehenge/trunk/stocktrader/dotnet/business_service/BusinessServiceConsole/App.config?rev=918824&r1=918823&r2=918824&view=diff
==============================================================================
---
incubator/stonehenge/trunk/stocktrader/dotnet/business_service/BusinessServiceConsole/App.config
(original)
+++
incubator/stonehenge/trunk/stocktrader/dotnet/business_service/BusinessServiceConsole/App.config
Thu Mar 4 02:41:05 2010
@@ -51,7 +51,9 @@
<add key="CS_DOTNET_ENDPOINT_CONFIG_HTTP"
value="ConfigClient_BasicHttpBinding"/>
<add key="DOTNET_OPS" value="OpsClient_BasicHttpBinding" />
<add key="DOTNET_OPSSEC" value="OpsClient_WsHttpBinding_MSec" />
+ <add key="DOTNET_OPSTSEC" value="OpsClient_WsHttpBinding_TSec" />
<add key="METRO_OPS" value="OpsClient_BasicHttpBinding" />
+ <add key="METRO_OPSSC" value="OpsClient_WsHttpBinding_TSec" />
<add key="METRO_OPSSEC" value="OpsClient_WsHttpBinding_MSec" />
<add key="PHP_OPS" value="OpsClient_BasicHttpBinding" />
<add key="PHP_OPSSEC" value="OpsClient_WsHttpBinding_MSec" />
@@ -62,6 +64,10 @@
<add key="ClientSettingsProvider.ServiceUri" value="" />
<add key="BS_LABEL" value="DOTNET_BS"/>
+ <add key="OPS_LABEL" value="DOTNET_OPSTSEC"/>
+ <add key="OPS_USERID" value="uid:0"/>
+ <add key="OPS_PASSWORD" value="xxx"/>
+ <add key="OPS_SSL_CERTIFICATE" value="CN=OPS.Com"/>
</appSettings>
<runtime>
@@ -142,6 +148,15 @@
</identity>
</endpoint>
+ <endpoint address="https://localhost:8005/tradeorderprocessor"
+ contract="Trade.OrderProcessorContract.IOrderProcessor"
+ binding="wsHttpBinding"
+ bindingConfiguration="OpsClient_WsHttpBinding_TSec"
+ name="OpsClient_WsHttpBinding_TSec">
+ <identity>
+ <dns value="OPS.Com"/>
+ </identity>
+ </endpoint>
</client>
@@ -185,8 +200,15 @@
<message clientCredentialType="Certificate"
negotiateServiceCredential="false" algorithmSuite="Default"
establishSecurityContext="false" />
</security>
</binding>
+
+ <binding name="OpsClient_WsHttpBinding_TSec">
+ <security mode="TransportWithMessageCredential">
+ <message clientCredentialType="UserName"
negotiateServiceCredential="false" establishSecurityContext="false" />
+ </security>
+ </binding>
</wsHttpBinding>
+
</bindings>
@@ -255,8 +277,7 @@
</add>
</sharedListeners>
<trace autoflush="true"></trace>
- </system.diagnostics>-->
-
-
+ </system.diagnostics>-->
</configuration>
+
Modified:
incubator/stonehenge/trunk/stocktrader/dotnet/business_service/BusinessServiceConsole/Program.cs
URL:
http://svn.apache.org/viewvc/incubator/stonehenge/trunk/stocktrader/dotnet/business_service/BusinessServiceConsole/Program.cs?rev=918824&r1=918823&r2=918824&view=diff
==============================================================================
---
incubator/stonehenge/trunk/stocktrader/dotnet/business_service/BusinessServiceConsole/Program.cs
(original)
+++
incubator/stonehenge/trunk/stocktrader/dotnet/business_service/BusinessServiceConsole/Program.cs
Thu Mar 4 02:41:05 2010
@@ -81,6 +81,8 @@
/// </summary>
public void start()
{
+ PermissiveCertificatePolicy.Enact();
+
string shortHostName = System.Net.Dns.GetHostName();
IPHostEntry myEntry =
System.Net.Dns.GetHostEntry(shortHostName);
string myName = myEntry.HostName;
@@ -100,7 +102,7 @@
ServiceConfiguration configuration = new
ServiceConfiguration();
configuration.AudienceRestriction.AudienceMode =
System.IdentityModel.Selectors.AudienceUriMode.BearerKeyOnly;
configuration.IssuerNameRegistry = new
SimpleIssuerNameRegistry();
-
+
FederatedServiceCredentials.ConfigureServiceHost(serviceHost,
configuration);
StockTraderUtility.DescribeService(serviceHost);
Modified:
incubator/stonehenge/trunk/stocktrader/dotnet/business_service/OrderProcessorASyncClient/OrderProcessorAsyncClient.cs
URL:
http://svn.apache.org/viewvc/incubator/stonehenge/trunk/stocktrader/dotnet/business_service/OrderProcessorASyncClient/OrderProcessorAsyncClient.cs?rev=918824&r1=918823&r2=918824&view=diff
==============================================================================
---
incubator/stonehenge/trunk/stocktrader/dotnet/business_service/OrderProcessorASyncClient/OrderProcessorAsyncClient.cs
(original)
+++
incubator/stonehenge/trunk/stocktrader/dotnet/business_service/OrderProcessorASyncClient/OrderProcessorAsyncClient.cs
Thu Mar 4 02:41:05 2010
@@ -73,7 +73,7 @@
{
try
{
- opsclient = new
Client.Client<IOrderProcessor>(ConfigurationManager.AppSettings.Get(clientConfig),
url);
+ opsclient = new
Client.Client<IOrderProcessor>(ConfigurationManager.AppSettings.Get(clientConfig),
url, Settings.OPS_USERID, Settings.OPS_PASSWORD);
}
catch
{
Modified:
incubator/stonehenge/trunk/stocktrader/dotnet/common/DALSQLServer/Config.cs
URL:
http://svn.apache.org/viewvc/incubator/stonehenge/trunk/stocktrader/dotnet/common/DALSQLServer/Config.cs?rev=918824&r1=918823&r2=918824&view=diff
==============================================================================
--- incubator/stonehenge/trunk/stocktrader/dotnet/common/DALSQLServer/Config.cs
(original)
+++ incubator/stonehenge/trunk/stocktrader/dotnet/common/DALSQLServer/Config.cs
Thu Mar 4 02:41:05 2010
@@ -120,10 +120,10 @@
private const string SQL_FIND_SERVICE = @"SET NOCOUNT ON; SELECT
SERVICENAME, URL, SEC FROM dbo.SERVICE WHERE SERVICENAME = @ServiceName";
private const string SQL_SET_BS_TO_OPS = @"INSERT INTO dbo.BSTOOPS
(BS, OPS) VALUES (@Bs, @Ops)";
private const string SQL_UPDATE_BS_TO_OPS = @"UPDATE dbo.BSTOOPS WITH
(ROWLOCK) SET o...@ops WHERE b...@bs";
- private const string SQL_COUNT_BS = @"SELECT COUNT(*) as count FROM
dbo.SERVICE WHERE SERVICENAME LIKE '%_BS' OR SERVICENAME LIKE '%_BSSEC'";
- private const string SQL_COUNT_OPS = @"SELECT COUNT(*) as count FROM
dbo.SERVICE WHERE SERVICENAME LIKE '%_OPS' OR SERVICENAME LIKE '%_OPSSEC'";
- private const string SQL_GET_BS = @"SELECT SERVICENAME, URL, SEC FROM
dbo.SERVICE WHERE SERVICENAME LIKE '%_BS' OR SERVICENAME LIKE '%_BSSEC'";
- private const string SQL_GET_OPS = @"SELECT SERVICENAME, URL, SEC FROM
dbo.SERVICE WHERE SERVICENAME LIKE '%_OPS' OR SERVICENAME LIKE '%_OPSSEC'";
+ private const string SQL_COUNT_BS = @"SELECT COUNT(*) as count FROM
dbo.SERVICE WHERE SERVICENAME LIKE '%_BS%'";
+ private const string SQL_COUNT_OPS = @"SELECT COUNT(*) as count FROM
dbo.SERVICE WHERE SERVICENAME LIKE '%_OPS%'";
+ private const string SQL_GET_BS = @"SELECT SERVICENAME, URL, SEC FROM
dbo.SERVICE WHERE SERVICENAME LIKE '%_BS%'";
+ private const string SQL_GET_OPS = @"SELECT SERVICENAME, URL, SEC FROM
dbo.SERVICE WHERE SERVICENAME LIKE '%_OPS%'";
private const string SQL_UPDATE_SERVICE_LOCATION = @"UPDATE
dbo.SERVICE WITH (ROWLOCK) SET URL = @Url, SEC = @Sec WHERE SERVICENAME =
@ServiceName";
private const string SQL_INSERT_SERVICE_LOCATION = @"INSERT INTO
dbo.SERVICE (SERVICENAME, URL, SEC) VALUES (@ServiceName, @Url, @Sec)";
Modified:
incubator/stonehenge/trunk/stocktrader/dotnet/common/OrderProcessorServiceConfigurationSettings/Settings.cs
URL:
http://svn.apache.org/viewvc/incubator/stonehenge/trunk/stocktrader/dotnet/common/OrderProcessorServiceConfigurationSettings/Settings.cs?rev=918824&r1=918823&r2=918824&view=diff
==============================================================================
---
incubator/stonehenge/trunk/stocktrader/dotnet/common/OrderProcessorServiceConfigurationSettings/Settings.cs
(original)
+++
incubator/stonehenge/trunk/stocktrader/dotnet/common/OrderProcessorServiceConfigurationSettings/Settings.cs
Thu Mar 4 02:41:05 2010
@@ -76,6 +76,8 @@
public static string ORDER_PROCESSING_BEHAVIOR;
public static int DISPLAYNUMBERORDERITERATIONS;
public static string OPS_LABEL;
+ public static string OPS_USERID;
+ public static string OPS_PASSWORD;
public Settings()
{
@@ -88,6 +90,8 @@
Settings.ORDER_PROCESSING_BEHAVIOR =
ConfigurationManager.AppSettings.Get("ORDER_PROCESSING_BEHAVIOR");
Settings.DISPLAYNUMBERORDERITERATIONS =
Convert.ToInt32(ConfigurationManager.AppSettings.Get("DISPLAYNUMBERORDERITERATIONS"));
Settings.OPS_LABEL =
ConfigurationManager.AppSettings.Get("OPS_LABEL");
+ Settings.OPS_USERID =
ConfigurationManager.AppSettings.Get("OPS_USERID");
+ Settings.OPS_PASSWORD =
ConfigurationManager.AppSettings.Get("OPS_PASSWORD");
buildConnString();
}
Added:
incubator/stonehenge/trunk/stocktrader/dotnet/common/StockTraderUtility/PermissiveCertificatePolicy.cs
URL:
http://svn.apache.org/viewvc/incubator/stonehenge/trunk/stocktrader/dotnet/common/StockTraderUtility/PermissiveCertificatePolicy.cs?rev=918824&view=auto
==============================================================================
---
incubator/stonehenge/trunk/stocktrader/dotnet/common/StockTraderUtility/PermissiveCertificatePolicy.cs
(added)
+++
incubator/stonehenge/trunk/stocktrader/dotnet/common/StockTraderUtility/PermissiveCertificatePolicy.cs
Thu Mar 4 02:41:05 2010
@@ -0,0 +1,23 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Net;
+using System.Net.Security;
+using System.Security.Cryptography.X509Certificates;
+
+namespace Trade.Utility
+{
+ public class PermissiveCertificatePolicy
+ {
+ public static void Enact()
+ {
+ ServicePointManager.ServerCertificateValidationCallback += new
RemoteCertificateValidationCallback(RemoteCertValidate);
+ }
+
+ static bool RemoteCertValidate(object sender, X509Certificate cert,
X509Chain chain, System.Net.Security.SslPolicyErrors error)
+ {
+ return true;
+ }
+ }
+}
Modified:
incubator/stonehenge/trunk/stocktrader/dotnet/common/StockTraderUtility/Utility.csproj
URL:
http://svn.apache.org/viewvc/incubator/stonehenge/trunk/stocktrader/dotnet/common/StockTraderUtility/Utility.csproj?rev=918824&r1=918823&r2=918824&view=diff
==============================================================================
---
incubator/stonehenge/trunk/stocktrader/dotnet/common/StockTraderUtility/Utility.csproj
(original)
+++
incubator/stonehenge/trunk/stocktrader/dotnet/common/StockTraderUtility/Utility.csproj
Thu Mar 4 02:41:05 2010
@@ -67,7 +67,6 @@
</ItemGroup>
<ItemGroup>
<Compile Include="CertificateUtil.cs" />
- <Compile Include="ConfigCertificatePolicy.cs" />
<Compile Include="Cryptography.cs" />
<Compile Include="Loggers\ConsoleLogger.cs" />
<Compile Include="CustomCertificateValidator.cs" />
@@ -75,6 +74,7 @@
<Compile Include="Loggers\EventViewerLogger.cs" />
<Compile Include="Loggers\ILogger.cs" />
<Compile Include="Loggers\NullLogger.cs" />
+ <Compile Include="PermissiveCertificatePolicy.cs" />
<Compile Include="SimpleIssuerNameRegistry.cs" />
<Compile Include="SQLHelper.cs" />
<Compile Include="Utility.cs" />
Modified:
incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorConsoleServiceHost/App.config
URL:
http://svn.apache.org/viewvc/incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorConsoleServiceHost/App.config?rev=918824&r1=918823&r2=918824&view=diff
==============================================================================
---
incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorConsoleServiceHost/App.config
(original)
+++
incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorConsoleServiceHost/App.config
Thu Mar 4 02:41:05 2010
@@ -35,7 +35,9 @@
<add key="DISPLAYNUMBERORDERITERATIONS" value="3" />
<add key="CS_DOTNET_ENDPOINT_CONFIG_HTTP"
value="ConfigClient_BasicHttpBinding"/>
<add key="OPS_LABEL" value="DOTNET_OPS"/>
-
+ <add key="OPS_USERID" value="uid:0"/>
+ <add key="OPS_PASSWORD" value="xxx"/>
+
<!--Possible values for logger mode: CONSOLE, EVENT_VIEWER-->
<add key="LOGGER_MODE" value="CONSOLE"/>
<add key="EVENT_LOG" value="Trade Order Processor"/>
@@ -60,7 +62,6 @@
Windows Communication Foundation.
-->
<system.serviceModel>
-
<services>
<service name="Trade.OrderProcessorImplementation.OrderProcessor"
behaviorConfiguration="OpsHost_MSec_Behavior">
@@ -75,6 +76,12 @@
bindingConfiguration="OpsHost_WsHttpBinding_MSec"
contract ="Trade.OrderProcessorContract.IOrderProcessor"
/>
+
+ <endpoint binding="wsHttpBinding"
+ bindingConfiguration="OpsHost_WsHttpBinding_TSec"
+ contract ="Trade.OrderProcessorContract.IOrderProcessor"
+ />
+
<endpoint address="Mex"
binding="mexHttpBinding"
contract="IMetadataExchange" />
@@ -103,6 +110,13 @@
<message clientCredentialType="Certificate"
negotiateServiceCredential="false" establishSecurityContext="false"/>
</security>
</binding>
+
+ <binding name="OpsHost_WsHttpBinding_TSec">
+ <security mode="TransportWithMessageCredential">
+ <message clientCredentialType="UserName"
negotiateServiceCredential="false" establishSecurityContext="false"
algorithmSuite="Default"/>
+ </security>
+ </binding>
+
</wsHttpBinding>
</bindings>
<behaviors>
@@ -116,9 +130,12 @@
<clientCertificate>
<authentication certificateValidationMode="None"
revocationMode="NoCheck" />
</clientCertificate>
+ <userNameAuthentication userNamePasswordValidationMode="Custom"
customUserNamePasswordValidatorType="Trade.OrderProcessorImplementation.TradeOPSCustomUserNameValidator,
Trade.OrderProcessorImplementation"/>
</serviceCredentials>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
+
+
</configuration>
Modified:
incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorConsoleServiceHost/Program.cs
URL:
http://svn.apache.org/viewvc/incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorConsoleServiceHost/Program.cs?rev=918824&r1=918823&r2=918824&view=diff
==============================================================================
---
incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorConsoleServiceHost/Program.cs
(original)
+++
incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorConsoleServiceHost/Program.cs
Thu Mar 4 02:41:05 2010
@@ -72,10 +72,11 @@
Settings thisSettings = new Settings();
Uri TradeServiceUriBase = new Uri("http://" + myName +
":8000/tradeorderprocessor");
+ Uri TradeServiceSecUriBase = new Uri("https://" + myName +
":8005/tradeorderprocessor");
//Create a ServiceHost for the Orderprocessor service.
Type serviceType = typeof(OrderProcessor);
- host = new ServiceHost(serviceType, TradeServiceUriBase);
+ host = new ServiceHost(serviceType, TradeServiceUriBase,
TradeServiceSecUriBase);
host.Open();
Modified:
incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorImplementation/OrderProcessorImplementation.csproj
URL:
http://svn.apache.org/viewvc/incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorImplementation/OrderProcessorImplementation.csproj?rev=918824&r1=918823&r2=918824&view=diff
==============================================================================
---
incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorImplementation/OrderProcessorImplementation.csproj
(original)
+++
incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorImplementation/OrderProcessorImplementation.csproj
Thu Mar 4 02:41:05 2010
@@ -70,6 +70,7 @@
<Compile Include="OrderProcessorService.cs" />
<Compile Include="ProcessOrder.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
+ <Compile Include="TradeOPSCustomUserNameValidator.cs" />
</ItemGroup>
<ItemGroup>
<Content Include="stocktrader.snk" />
Added:
incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorImplementation/TradeOPSCustomUserNameValidator.cs
URL:
http://svn.apache.org/viewvc/incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorImplementation/TradeOPSCustomUserNameValidator.cs?rev=918824&view=auto
==============================================================================
---
incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorImplementation/TradeOPSCustomUserNameValidator.cs
(added)
+++
incubator/stonehenge/trunk/stocktrader/dotnet/order_processor/OrderProcessorImplementation/TradeOPSCustomUserNameValidator.cs
Thu Mar 4 02:41:05 2010
@@ -0,0 +1,30 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using Trade.Utility;
+using Trade.OrderProcessorServiceConfigurationSettings;
+
+namespace Trade.OrderProcessorImplementation
+{
+ /// <summary>
+ /// No override necessary--we are going to use stock base methods to
validate
+ /// against the service repository Users table.
+ /// </summary>
+ public class TradeOPSCustomUserNameValidator : CustomUserNameValidator
+ {
+ public TradeOPSCustomUserNameValidator() { }
+ /// <summary>
+ /// Overrides to instead validate the username/password against the
Configuration DB Users table.
+ /// </summary>
+ /// <param name="userName">User id coming in as UserName credentials
from client.</param>
+ /// <param name="password">Password coming in as UserName credentials
from client.</param>
+ 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.OPS_USERID || password !=
Settings.OPS_PASSWORD)
+ throw new Exception("UserName Authentication Failed");
+ }
+ }
+}
Modified:
incubator/stonehenge/trunk/stocktrader/dotnet/setup_utilities/DataLoad/insertdbconfig.sql
URL:
http://svn.apache.org/viewvc/incubator/stonehenge/trunk/stocktrader/dotnet/setup_utilities/DataLoad/insertdbconfig.sql?rev=918824&r1=918823&r2=918824&view=diff
==============================================================================
---
incubator/stonehenge/trunk/stocktrader/dotnet/setup_utilities/DataLoad/insertdbconfig.sql
(original)
+++
incubator/stonehenge/trunk/stocktrader/dotnet/setup_utilities/DataLoad/insertdbconfig.sql
Thu Mar 4 02:41:05 2010
@@ -31,7 +31,9 @@
INSERT INTO [StockTraderDB].[dbo].[SERVICE]([SERVICENAME],[URL], [SEC])
VALUES ('DOTNET_OPS','http://localhost:8000/TradeOrderProcessor',
'False');
INSERT INTO [StockTraderDB].[dbo].[SERVICE]([SERVICENAME],[URL], [SEC])
- VALUES ('DOTNET_OPSSEC','http://localhost:8000/TradeOrderProcessor/sec',
'True');
+ VALUES ('DOTNET_OPSSEC','http://localhost:8000/TradeOrderProcessor/msec',
'True');
+INSERT INTO [StockTraderDB].[dbo].[SERVICE]([SERVICENAME],[URL], [SEC])
+ VALUES ('DOTNET_OPSTSEC','https://localhost:8005/tradeorderprocessor',
'True');
INSERT INTO [StockTraderDB].[dbo].[SERVICE]([SERVICENAME],[URL], [SEC])
VALUES
('METRO_BS','http://localhost:8090/business_service/TradeServiceWsas', 'False');
INSERT INTO [StockTraderDB].[dbo].[SERVICE]([SERVICENAME],[URL], [SEC])