Author: atsushi
Date: 2007-02-28 07:51:13 -0500 (Wed, 28 Feb 2007)
New Revision: 73538

Added:
   trunk/olive/samples/services/secure-message/samplecli10.cs
   trunk/olive/samples/services/secure-message/samplesvc10.cs
Modified:
   trunk/olive/samples/services/secure-message/ChangeLog
   trunk/olive/samples/services/secure-message/Makefile
Log:
2007-02-28  Atsushi Enomoto  <[EMAIL PROTECTED]>

        * samplesvc10.cs, samplecli10.cs :
          new test, for SslSecurityTokenParameters.
        * Makefile : added above.



Modified: trunk/olive/samples/services/secure-message/ChangeLog
===================================================================
--- trunk/olive/samples/services/secure-message/ChangeLog       2007-02-28 
12:50:50 UTC (rev 73537)
+++ trunk/olive/samples/services/secure-message/ChangeLog       2007-02-28 
12:51:13 UTC (rev 73538)
@@ -1,3 +1,9 @@
+2007-02-28  Atsushi Enomoto  <[EMAIL PROTECTED]>
+
+       * samplesvc10.cs, samplecli10.cs :
+         new test, for SslSecurityTokenParameters.
+       * Makefile : added above.
+
 2007-02-27  Atsushi Enomoto  <[EMAIL PROTECTED]>
 
        * samplesvc6.cs : fix some security property check.

Modified: trunk/olive/samples/services/secure-message/Makefile
===================================================================
--- trunk/olive/samples/services/secure-message/Makefile        2007-02-28 
12:50:50 UTC (rev 73537)
+++ trunk/olive/samples/services/secure-message/Makefile        2007-02-28 
12:51:13 UTC (rev 73538)
@@ -7,8 +7,15 @@
        samplesvc6.exe samplecli6.exe \
        samplesvc7.exe samplecli7.exe \
        samplesvc8.exe samplecli8.exe \
-       samplesvc9.exe samplecli9.exe
+       samplesvc9.exe samplecli9.exe \
+       samplesvc10.exe samplecli10.exe
 
+samplesvc10.exe : samplesvc10.cs
+       gmcs -pkg:olive samplesvc10.cs
+
+samplecli10.exe : samplecli10.cs
+       gmcs -pkg:olive samplecli10.cs
+
 samplesvc9.exe : samplesvc9.cs
        gmcs -pkg:olive samplesvc9.cs Inspector.cs
 
@@ -73,4 +80,5 @@
        rm -f samplesvc7.exe samplesvc7.exe.mdb samplecli7.exe 
samplecli7.exe.mdb 
        rm -f samplesvc8.exe samplesvc8.exe.mdb samplecli8.exe 
samplecli8.exe.mdb 
        rm -f samplesvc9.exe samplesvc9.exe.mdb samplecli9.exe 
samplecli9.exe.mdb 
+       rm -f samplesvc10.exe samplesvc10.exe.mdb samplecli10.exe 
samplecli10.exe.mdb 
 

Added: trunk/olive/samples/services/secure-message/samplecli10.cs
===================================================================
--- trunk/olive/samples/services/secure-message/samplecli10.cs  2007-02-28 
12:50:50 UTC (rev 73537)
+++ trunk/olive/samples/services/secure-message/samplecli10.cs  2007-02-28 
12:51:13 UTC (rev 73538)
@@ -0,0 +1,86 @@
+using System;
+using System.IO;
+using System.Net;
+using System.Net.Security;
+using System.Xml;
+using System.Security.Cryptography;
+using System.Security.Cryptography.X509Certificates;
+using System.IdentityModel.Selectors;
+using System.IdentityModel.Tokens;
+using System.ServiceModel;
+using System.ServiceModel.Channels;
+using System.ServiceModel.Security;
+using System.ServiceModel.Security.Tokens;
+
+public class Tset
+{
+       public static void Main ()
+       {
+               try {
+                       Run ();
+               } catch (MessageSecurityException ex) {
+                       Console.WriteLine ("MessageSecurityException::::::");
+                       FaultException f = ex.InnerException as FaultException;
+                       if (f != null) 
+                               using (XmlWriter w = XmlWriter.Create 
(Console.Out)) {
+                                       f.CreateMessageFault ().WriteTo (w, 
EnvelopeVersion.Soap12);
+                               }
+                       else
+                               Console.WriteLine (ex);
+               } catch (WebException ex) {
+                       Console.WriteLine (ex);
+                       using (StreamReader sr = new StreamReader 
(ex.Response.GetResponseStream ()))
+                               Console.WriteLine (sr.ReadToEnd ());
+               }
+       }
+
+       static void Run ()
+       {
+               SymmetricSecurityBindingElement sbe =
+                       new SymmetricSecurityBindingElement ();
+               /*
+               X509SecurityTokenParameters p =
+                       new X509SecurityTokenParameters 
();//X509KeyIdentifierClauseType.Thumbprint, 
SecurityTokenInclusionMode.AlwaysToRecipient);
+               p.RequireDerivedKeys = false;
+               sbe.EndpointSupportingTokenParameters.Endorsing.Add (p);
+               */
+               sbe.ProtectionTokenParameters =
+                       new SslSecurityTokenParameters ();
+               HttpTransportBindingElement hbe =
+                       new HttpTransportBindingElement ();
+               CustomBinding binding = new CustomBinding (sbe, hbe);
+               X509Certificate2 cert = new X509Certificate2 ("test.pfx", 
"mono");
+               X509Certificate2 cert2 = cert;
+               FooProxy proxy = new FooProxy (binding,
+                       new EndpointAddress (new Uri ("http://localhost:8080";), 
new X509CertificateEndpointIdentity (cert2)));
+               proxy.ClientCredentials.ClientCertificate.Certificate = cert;
+               proxy.ClientCredentials.ServiceCertificate.Authentication
+                       .CertificateValidationMode =
+                       X509CertificateValidationMode.None;
+//             proxy.Endpoint.Behaviors.Add (new StdErrInspectionBehavior ());
+               proxy.Open ();
+               Console.WriteLine (proxy.Echo ("TEST FOR ECHO"));
+       }
+}
+
+//[ServiceContract (ProtectionLevel = ProtectionLevel.None)]// (SessionMode = 
SessionMode.NotAllowed)]
+[ServiceContract]
+public interface IFoo
+{
+       [OperationContract]
+       string Echo (string msg);
+}
+
+public class FooProxy : ClientBase<IFoo>, IFoo
+{
+       public FooProxy (Binding binding, EndpointAddress address)
+               : base (binding, address)
+       {
+       }
+
+       public string Echo (string msg)
+       {
+               return Channel.Echo (msg);
+       }
+}
+

Added: trunk/olive/samples/services/secure-message/samplesvc10.cs
===================================================================
--- trunk/olive/samples/services/secure-message/samplesvc10.cs  2007-02-28 
12:50:50 UTC (rev 73537)
+++ trunk/olive/samples/services/secure-message/samplesvc10.cs  2007-02-28 
12:51:13 UTC (rev 73538)
@@ -0,0 +1,73 @@
+using System;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Security.Cryptography.X509Certificates;
+using System.IdentityModel.Selectors;
+using System.IdentityModel.Tokens;
+using System.ServiceModel;
+using System.ServiceModel.Channels;
+using System.ServiceModel.Description;
+using System.ServiceModel.Dispatcher;
+using System.ServiceModel.Security;
+using System.ServiceModel.Security.Tokens;
+
+public class Test
+{
+       public static void Main ()
+       {
+               SymmetricSecurityBindingElement sbe =
+                       new SymmetricSecurityBindingElement ();
+               sbe.ProtectionTokenParameters =
+                       new SslSecurityTokenParameters ();
+               /*
+               X509SecurityTokenParameters p =
+                       new X509SecurityTokenParameters 
();//X509KeyIdentifierClauseType.Thumbprint, 
SecurityTokenInclusionMode.AlwaysToRecipient);
+               p.RequireDerivedKeys = false;
+               sbe.EndpointSupportingTokenParameters.Endorsing.Add (p);
+               */
+               ServiceHost host = new ServiceHost (typeof (Foo));
+               HttpTransportBindingElement hbe =
+                       new HttpTransportBindingElement ();
+               CustomBinding binding = new CustomBinding (sbe, hbe);
+               binding.ReceiveTimeout = TimeSpan.FromSeconds (5);
+               host.AddServiceEndpoint ("IFoo",
+                       binding, new Uri ("http://localhost:8080";));
+               ServiceCredentials cred = new ServiceCredentials ();
+               cred.ServiceCertificate.Certificate =
+                       new X509Certificate2 ("test.pfx", "mono");
+               cred.ClientCertificate.Authentication.CertificateValidationMode 
=
+                       X509CertificateValidationMode.None;
+               host.Description.Behaviors.Add (cred);
+               host.Description.Behaviors.Find<ServiceDebugBehavior> ()
+                       .IncludeExceptionDetailInFaults = true;
+//             foreach (ServiceEndpoint se in host.Description.Endpoints)
+//                     se.Behaviors.Add (new StdErrInspectionBehavior ());
+               ServiceMetadataBehavior smb = new ServiceMetadataBehavior ();
+               smb.HttpGetEnabled = true;
+               smb.HttpGetUrl = new Uri ("http://localhost:8080/wsdl";);
+               host.Description.Behaviors.Add (smb);
+               host.Open ();
+               Console.WriteLine ("Hit [CR] key to close ...");
+               Console.ReadLine ();
+               host.Close ();
+       }
+}
+
+[ServiceContract]// (SessionMode = SessionMode.NotAllowed)]
+public interface IFoo
+{
+       [OperationContract]
+       string Echo (string msg);
+}
+
+[ServiceBehavior (IncludeExceptionDetailInFaults = true)]
+class Foo : IFoo
+{
+       public string Echo (string msg) 
+       {
+Console.WriteLine (msg);
+               return msg + msg;
+               //throw new NotImplementedException ();
+       }
+}
+

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to