Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
03/11/10 18:23:52 (15 years ago)
Author:
gkronber
Message:

Implemented deployment service on servdev.heuristiclab.com and changed all service references and configurations to point to the service address. Improved GUI of installation manager. Implemented user name authentication and authorization for the deployment service. #860 (Deployment server for plugin installation from web locations)

Location:
branches/DeploymentServer Prototype/HeuristicLab.Services/HeuristicLab.Services.Deployment
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/DeploymentServer Prototype/HeuristicLab.Services/HeuristicLab.Services.Deployment/Admin.cs

    r2771 r3006  
    66using System.Text;
    77using HeuristicLab.Services.Deployment.DataAccess;
     8using System.Security.Permissions;
    89
    910namespace HeuristicLab.Services.Deployment {
     
    1112  public class Admin : IAdmin {
    1213    #region IAdmin Members
    13 
     14    [PrincipalPermission(SecurityAction.Demand, Role = "Managers")]
    1415    public void DeployProduct(ProductDescription product) {
    1516      var store = new PluginStore();
    1617      store.Persist(product);
    1718    }
    18 
     19    [PrincipalPermission(SecurityAction.Demand, Role = "Managers")]
    1920    public void DeployPlugin(PluginDescription plugin, byte[] zipFile) {
    2021      var store = new PluginStore();
  • branches/DeploymentServer Prototype/HeuristicLab.Services/HeuristicLab.Services.Deployment/App.config

    r2771 r3006  
    44  </configSections>
    55  <system.diagnostics>
    6     <sources>
    7       <source name="System.ServiceModel.MessageLogging" switchValue="Warning, ActivityTracing">
    8         <listeners>
    9           <add type="System.Diagnostics.DefaultTraceListener" name="Default">
    10             <filter type="" />
    11           </add>
    12           <add name="ServiceModelMessageLoggingListener">
    13             <filter type="" />
    14           </add>
    15         </listeners>
    16       </source>
    17       <source name="System.ServiceModel" switchValue="Warning, ActivityTracing"
    18         propagateActivity="true">
    19         <listeners>
    20           <add type="System.Diagnostics.DefaultTraceListener" name="Default">
    21             <filter type="" />
    22           </add>
    23           <add name="ServiceModelTraceListener">
    24             <filter type="" />
    25           </add>
    26         </listeners>
    27       </source>
    28     </sources>
    29     <sharedListeners>
    30       <add initializeData="c:\users\p40086\documents\heuristiclab\hl3-core\branches\deploymentserver prototype\heuristiclab.services\heuristiclab.services.deployment\app_messages.svclog"
    31         type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
    32         name="ServiceModelMessageLoggingListener" traceOutputOptions="Timestamp">
    33         <filter type="" />
    34       </add>
    35       <add initializeData="c:\users\p40086\documents\heuristiclab\hl3-core\branches\deploymentserver prototype\heuristiclab.services\heuristiclab.services.deployment\app_tracelog.svclog"
    36         type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
    37         name="ServiceModelTraceListener" traceOutputOptions="Timestamp">
    38         <filter type="" />
    39       </add>
    40     </sharedListeners>
    416  </system.diagnostics>
    427  <connectionStrings>
    43     <add name="HeuristicLab.Services.Deployment.Properties.Settings.HeuristicLab_PluginStoreConnectionString"
    44       connectionString="Data Source=HEUREKA01\SQLEXPRESS;Initial Catalog=HeuristicLab.PluginStore;Integrated Security=True"
    45       providerName="System.Data.SqlClient" />
     8    <remove name="LocalSqlServer" />
     9    <add connectionString="Server=SERVDEV;Database=HeuristicLab.Deployment;Integrated Security=SSPI" name="HeuristicLab.Services.Deployment.DataAccess.Properties.Settings.HeuristicLab_PluginStoreConnectionString" />
     10    <add name="MyLocalSQLServer" connectionString="Initial Catalog=aspnetdb;data source=localhost;Integrated Security=SSPI;" />
    4611  </connectionStrings>
    4712  <system.web>
    48     <compilation debug="true" />
     13    <compilation debug="false" />
     14    <membership defaultProvider="MySqlMembershipProvider">
     15      <providers>
     16        <clear />
     17        <add name="MySqlMemberShipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="MyLocalSqlServer" enablePasswordReset="false" enablePasswordRetrieval="false" passwordFormat="Hashed" requiresQuestionAndAnswer="false" requiresUniqueEmail="false"  minRequiredNonalphanumericCharacters="0" minRequiredPasswordLength="8" />
     18      </providers>
     19    </membership>
     20    <authentication mode="Windows" />
     21    <roleManager enabled="true" defaultProvider="MySqlRoleProvider">
     22      <providers>
     23        <clear />
     24        <add name="MySqlRoleProvider" connectionStringName="MyLocalSQLServer" applicationName="HeuristicLab.Deployment" type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
     25      </providers>
     26    </roleManager>
    4927  </system.web>
    5028  <!-- When deploying the service library project, the content of the config file must be added to the host's
     
    5331    <bindings>
    5432      <wsHttpBinding>
    55         <binding name="DefaultWsHttpBinding" maxBufferPoolSize="10000000"
    56           maxReceivedMessageSize="1000000">
    57           <readerQuotas maxDepth="1000" maxStringContentLength="16000"
    58             maxArrayLength="10000000" maxBytesPerRead="10000000" maxNameTableCharCount="16000" />
     33        <binding name="DefaultWsHttpBinding" maxBufferPoolSize="10000000" maxReceivedMessageSize="1000000">
     34          <readerQuotas maxDepth="1000" maxStringContentLength="16000" maxArrayLength="10000000" maxBytesPerRead="10000000" maxNameTableCharCount="16000" />
     35          <security mode="Message">
     36            <message clientCredentialType="UserName" />
     37          </security>
    5938        </binding>
    6039      </wsHttpBinding>
     
    6443    </bindings>
    6544    <diagnostics performanceCounters="Default">
    66       <messageLogging logMalformedMessages="true" logMessagesAtTransportLevel="true" />
     45      <messageLogging logMalformedMessages="false" logMessagesAtTransportLevel="false" />
    6746    </diagnostics>
    6847    <services>
    69       <service behaviorConfiguration="HeuristicLab.Services.Deployment.UpdateBehavior"
    70         name="HeuristicLab.Services.Deployment.Update">
    71         <endpoint address="" binding="wsHttpBinding" bindingConfiguration="DefaultWsHttpBinding"
    72           contract="HeuristicLab.Services.Deployment.IUpdate">
    73           <identity>
    74             <dns value="localhost" />
    75           </identity>
     48      <service behaviorConfiguration="HeuristicLab.Services.Deployment.UpdateBehavior" name="HeuristicLab.Services.Deployment.Update">
     49        <endpoint address="" binding="wsHttpBinding" bindingConfiguration="DefaultWsHttpBinding" contract="HeuristicLab.Services.Deployment.IUpdate">
    7650        </endpoint>
    77         <endpoint address="mex" binding="mexHttpBinding" bindingConfiguration="DefaultMexHttpBinding"
    78           contract="IMetadataExchange" />
    79         <host>
    80           <baseAddresses>
    81             <add baseAddress="http://localhost:8731/Design_Time_Addresses/HeuristicLab.Services.Deployment/Update/" />
    82           </baseAddresses>
    83         </host>
     51        <endpoint address="mex" binding="mexHttpBinding" bindingConfiguration="DefaultMexHttpBinding" contract="IMetadataExchange" />
    8452      </service>
    85       <service behaviorConfiguration="HeuristicLab.Services.Deployment.AdminBehavior"
    86         name="HeuristicLab.Services.Deployment.Admin">
    87         <endpoint address="" binding="wsHttpBinding" bindingConfiguration="DefaultWsHttpBinding"
    88           contract="HeuristicLab.Services.Deployment.IAdmin">
    89           <identity>
    90             <dns value="localhost" />
    91           </identity>
     53      <service behaviorConfiguration="HeuristicLab.Services.Deployment.AdminBehavior" name="HeuristicLab.Services.Deployment.Admin">
     54        <endpoint address="" binding="wsHttpBinding" bindingConfiguration="DefaultWsHttpBinding" contract="HeuristicLab.Services.Deployment.IAdmin">
    9255        </endpoint>
    93         <endpoint address="mex" binding="mexHttpBinding" bindingConfiguration="DefaultMexHttpBinding"
    94           contract="IMetadataExchange" />
    95         <host>
    96           <baseAddresses>
    97             <add baseAddress="http://localhost:8731/Design_Time_Addresses/HeuristicLab.Services.Deployment/Admin/" />
    98           </baseAddresses>
    99         </host>
     56        <endpoint address="mex" binding="mexHttpBinding" bindingConfiguration="DefaultMexHttpBinding" contract="IMetadataExchange" />
    10057      </service>
    10158    </services>
     
    10562          <serviceMetadata httpGetEnabled="true" />
    10663          <serviceDebug includeExceptionDetailInFaults="false" />
     64          <serviceCredentials>
     65            <serviceCertificate findValue="servdev.heuristiclab.com" storeLocation="LocalMachine" storeName="My" x509FindType="FindBySubjectName" />
     66            <userNameAuthentication userNamePasswordValidationMode="MembershipProvider" membershipProviderName="MySqlMembershipProvider" />
     67          </serviceCredentials>
     68          <serviceAuthorization principalPermissionMode="UseAspNetRoles" roleProviderName="MySqlRoleProvider" />
    10769        </behavior>
    10870        <behavior name="HeuristicLab.Services.Deployment.AdminBehavior">
    10971          <serviceMetadata httpGetEnabled="true" />
    11072          <serviceDebug includeExceptionDetailInFaults="false" />
     73          <serviceCredentials>
     74            <serviceCertificate findValue="servdev.heuristiclab.com" storeLocation="LocalMachine" storeName="My" x509FindType="FindBySubjectName" />
     75            <userNameAuthentication userNamePasswordValidationMode="MembershipProvider" membershipProviderName="MySqlMembershipProvider" />
     76          </serviceCredentials>
     77          <serviceAuthorization principalPermissionMode="UseAspNetRoles" roleProviderName="MySqlRoleProvider" />
    11178        </behavior>
    11279      </serviceBehaviors>
  • branches/DeploymentServer Prototype/HeuristicLab.Services/HeuristicLab.Services.Deployment/Update.cs

    r2771 r3006  
    2727      return store.Plugins;
    2828    }
    29 
    3029    #endregion
    3130  }
Note: See TracChangeset for help on using the changeset viewer.