Commit 3e9e476f authored by Joost Fock's avatar Joost Fock

Revert "Merge branch 'staging' into 'dev'"

This reverts commit 973ddb18, reversing
changes made to d7e16f29.
parent 894db203
Pipeline #892 failed with stages
in 2 minutes and 39 seconds
/*
* Copyright 2017 Chirojeugd-Vlaanderen vzw. See the NOTICE file at the
* top-level directory of this distribution, and at
* https://gapwiki.chiro.be/copyright
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
using System.Linq;
using DotNetCasClient.Security;
namespace Chiro.Cdf.Authentication.Dev
{
/// <summary>
/// Haalt het AD-nummer op uit de CasPrincipal, en geeft sowieso developerrechten.
/// DIT IS ENKEL TE GEBRUIKEN IN DEV!
/// </summary>
public class CasAuthenticatorDev: IAuthenticator
{
public UserInfo WieBenIk()
{
var principal = System.Web.HttpContext.Current.User as CasPrincipal;
return new UserInfo()
{
AdNr = int.Parse(principal.Assertion.Attributes["cas:ad_nummer"].First()),
// Normally no developer mode.
DeveloperMode = true
};
}
}
}
......@@ -42,7 +42,9 @@
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="CasAuthenticatorDev.cs" />
<Compile Include="CasAuthenticatorStaging.cs" />
<Compile Include="DummyAuthenticator.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
......
/*
* Copyright 2017 the GAP developers. See the NOTICE file at the
* top-level directory of this distribution, and at
* https://gapwiki.chiro.be/copyright
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
using System;
using System.Web;
namespace Chiro.Cdf.Authentication.Dev
{
/// <summary>
/// Dummy-authenticator voor dev, zodat het ook werkt als CAS niet beschikbaar is.
/// </summary>
public class DummyAuthenticator: IAuthenticator
{
/// <summary>
/// Levert een dummy-AD-nummer op, voor dev.
/// </summary>
/// <returns></returns>
public UserInfo WieBenIk()
{
// Voor dev 'berekenen' we een dummy-AD-nummer.
string userName;
userName = HttpContext.Current == null ? String.Empty : HttpContext.Current.User.Identity.Name;
if (String.IsNullOrEmpty(userName))
{
// Als we geen username vinden, geven we een dummy ad-nummer.
return new UserInfo()
{
AdNr = 42,
DeveloperMode = true
};
}
int result = 0;
foreach (char c in userName)
{
result += (int)c;
}
return new UserInfo
{
AdNr = result,
DeveloperMode = true
};
}
}
}
......@@ -22,9 +22,6 @@
</userSettings>
<applicationSettings>
<Chiro.Cdf.Authentication.Dev.Properties.Settings>
<setting name="TestAdNr" serializeAs="String">
<value>18</value>
</setting>
<setting name="DrupalDevRole" serializeAs="String">
<value>Toegang tot GAP-staging</value>
</setting>
......
......@@ -62,7 +62,7 @@
<value>lap-jve-8\private$\civisyncdev</value>
</setting>
<setting name="MaxBerichten" serializeAs="String">
<value>100</value>
<value>25</value>
</setting>
<setting name="Afzender" serializeAs="String">
<value>civisync@chiro.be</value>
......@@ -71,17 +71,16 @@
<value>helpdesk@chiro.be</value>
</setting>
<setting name="Onderwerp" serializeAs="String">
<value>Verdacht veel berichten in civisync-queue (STAGING)</value>
<value>Verdacht veel berichten in civisync-queue</value>
</setting>
<setting name="Inhoud" serializeAs="String">
<value>Dag helpdesker,
De message queue voor CiviSync-staging loopt vol.
Op staging is dat natuurlijk niet zo erg,
maar geef je dit even door aan Johan aub?
De message queue voor CiviSync loopt vol. Kun je dit
eens nakijken aub?
Bedankt!
</value>
Meer info op de adminwiki:
https://adminwiki.chiro.be/devel:civisyncissues</value>
</setting>
<setting name="Setting" serializeAs="String">
<value />
......
......@@ -37,7 +37,7 @@ internal sealed partial class Settings : global::System.Configuration.Applicatio
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("100")]
[global::System.Configuration.DefaultSettingValueAttribute("25")]
public int MaxBerichten {
get {
return ((int)(this["MaxBerichten"]));
......@@ -73,7 +73,7 @@ internal sealed partial class Settings : global::System.Configuration.Applicatio
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("Verdacht veel berichten in civisync-queue (STAGING)")]
[global::System.Configuration.DefaultSettingValueAttribute("Verdacht veel berichten in civisync-queue")]
public string Onderwerp {
get {
return ((string)(this["Onderwerp"]));
......@@ -85,9 +85,9 @@ internal sealed partial class Settings : global::System.Configuration.Applicatio
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("Dag helpdesker,\r\n\r\nDe message queue voor CiviSync-staging loopt vol. \r\nOp staging" +
" is dat natuurlijk niet zo erg,\r\nmaar geef je dit even door aan Johan aub?\r\n\r\nBe" +
"dankt!\r\n")]
[global::System.Configuration.DefaultSettingValueAttribute("Dag helpdesker,\r\n\r\nDe message queue voor CiviSync loopt vol. Kun je dit\r\neens nak" +
"ijken aub?\r\n\r\nMeer info op de adminwiki:\r\nhttps://adminwiki.chiro.be/devel:civis" +
"yncissues")]
public string Inhoud {
get {
return ((string)(this["Inhoud"]));
......@@ -108,7 +108,6 @@ internal sealed partial class Settings : global::System.Configuration.Applicatio
this["Setting"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("1000")]
......
......@@ -6,7 +6,7 @@
<Value Profile="(Default)">lap-jve-8\private$\civisyncdev</Value>
</Setting>
<Setting Name="MaxBerichten" Type="System.Int32" Scope="User">
<Value Profile="(Default)">100</Value>
<Value Profile="(Default)">25</Value>
</Setting>
<Setting Name="Afzender" Type="System.String" Scope="User">
<Value Profile="(Default)">civisync@chiro.be</Value>
......@@ -15,23 +15,19 @@
<Value Profile="(Default)">helpdesk@chiro.be</Value>
</Setting>
<Setting Name="Onderwerp" Type="System.String" Scope="User">
<Value Profile="(Default)">Verdacht veel berichten in civisync-queue (STAGING)</Value>
<Value Profile="(Default)">Verdacht veel berichten in civisync-queue</Value>
</Setting>
<Setting Name="Inhoud" Type="System.String" Scope="User">
<Value Profile="(Default)">Dag helpdesker,
De message queue voor CiviSync-staging loopt vol.
Op staging is dat natuurlijk niet zo erg,
maar geef je dit even door aan Johan aub?
De message queue voor CiviSync loopt vol. Kun je dit
eens nakijken aub?
Bedankt!
</Value>
Meer info op de adminwiki:
https://adminwiki.chiro.be/devel:civisyncissues</Value>
</Setting>
<Setting Name="Setting" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="LimitMembershipQuery" Type="System.Int32" Scope="User">
<Value Profile="(Default)">1000</Value>
</Setting>
</Settings>
</SettingsFile>
\ No newline at end of file
......@@ -18,7 +18,6 @@
* limitations under the License.
*/
using System.Security.Permissions;
using Chiro.Gap.WorkerInterfaces;
using Chiro.Gap.ServiceContracts.Mappers;
using Chiro.Cdf.AdnrWcfExtension;
......
......@@ -32,7 +32,7 @@
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\</OutputPath>
<DefineConstants>TRACE;DEBUG;KIPDORP</DefineConstants>
<DefineConstants>TRACE;DEBUG</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
......@@ -121,10 +121,6 @@
</Compile>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\tools\Chiro.CiviSync\Chiro.Kip.ServiceContracts\Chiro.Kip.ServiceContracts.csproj">
<Project>{6e81a10a-ad85-47a0-8b5d-70361f393cdd}</Project>
<Name>Chiro.Kip.ServiceContracts</Name>
</ProjectReference>
<ProjectReference Include="..\..\tools\Chiro.LoginService\Chiro.Ad.ServiceContracts\Chiro.Ad.ServiceContracts.csproj">
<Project>{D1E7BBDD-D833-4DC1-AF39-287448612425}</Project>
<Name>Chiro.Ad.ServiceContracts</Name>
......@@ -185,6 +181,10 @@
<Project>{8FAF739D-1058-4240-9466-BCA5DB8525D4}</Project>
<Name>Chiro.Gap.ServiceContracts</Name>
</ProjectReference>
<ProjectReference Include="..\Chiro.Gap.Services.Dev\Chiro.Gap.Services.Dev.csproj">
<Project>{DF253C73-7632-476E-B760-DEBA6D306E69}</Project>
<Name>Chiro.Gap.Services.Dev</Name>
</ProjectReference>
<ProjectReference Include="..\Chiro.Gap.SyncInterfaces\Chiro.Gap.SyncInterfaces.csproj">
<Project>{3ECF9801-795B-40FF-B19B-44A7C49DBB40}</Project>
<Name>Chiro.Gap.SyncInterfaces</Name>
......@@ -211,7 +211,6 @@
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="Properties\PublishProfiles\staging.pubxml" />
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
......
......@@ -19,7 +19,6 @@
using Chiro.Gap.ServiceContracts;
using Chiro.Gap.WorkerInterfaces;
using System.Diagnostics;
using System.Security.Permissions;
namespace Chiro.Gap.Services
{
......@@ -43,8 +42,6 @@ public class DbHacksService : BaseService, IDbHacksService
/// Erg lelijke hack die direct in de database schrijft om de aangelogde gebruiker
/// toegang te geven tot een testgroep.
/// </summary>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public void WillekeurigeGroepToekennen()
{
Debug.Assert(_authenticatieMgr.AdNummerGet().HasValue);
......
......@@ -19,7 +19,6 @@
using System;
using System.Linq;
using System.Security.Permissions;
using System.ServiceModel;
using System.Web;
using Chiro.Ad.ServiceContracts;
......@@ -143,8 +142,6 @@ public GavChecker Gav
/// voorkomen, eventuele bestaande rechten niet in <paramref name="gebruikersRecht"/> blijven
/// onaangeroerd.
/// </param>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public void RechtenToekennen(int gelieerdePersoonId, GebruikersRecht gebruikersRecht)
{
var gelieerdePersoon = _gelieerdePersonenRepo.ByID(gelieerdePersoonId);
......@@ -200,8 +197,6 @@ public void RechtenToekennen(int gelieerdePersoonId, GebruikersRecht gebruikersR
/// <param name="persoonID">Id van persoon met af te nemen gebruikersrechten</param>
/// <param name="groepIDs">Id's van groepen waarvoor gebruikersrecht afgenomen moet worden.</param>
/// <remarks>In praktijk gebeurt dit door de vervaldatum in het verleden te leggen.</remarks>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public void RechtenAfnemen(int persoonID, int[] groepIDs)
{
var persoon = _personenRepo.ByID(persoonID);
......@@ -229,8 +224,6 @@ public void RechtenAfnemen(int persoonID, int[] groepIDs)
/// Levert een redirection-url op naar de site van de verzekeraar
/// </summary>
/// <returns>Redirection-url naar de site van de verzekeraar</returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public string VerzekeringsUrlGet(int groepID)
{
int? adNummer = _authenticatieMgr.AdNummerGet();
......@@ -297,8 +290,6 @@ public string VerzekeringsUrlGet(int groepID)
/// <summary>
/// Indien de ingelogde gebruiker lid is voor gegeven groep in het recentste werkjaar, dan wordt de id van dat lid terug gegeven
/// </summary>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public int? AangelogdeGebruikerLidIdGet(int groepID)
{
int? adNummer = _authenticatieMgr.AdNummerGet();
......@@ -332,8 +323,6 @@ public string VerzekeringsUrlGet(int groepID)
/// <param name="adNummer">AD-nummer van een persoon.</param>
/// <param name="aanMaken">Als deze <c>true</c> is, wordt een 'stub' aangemaakt als de persoon niet wordt gevonden.</param>
/// <returns>Details van de persoon met gegeven <paramref name="adNummer"/>.</returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public GebruikersDetail DetailsOphalen(int adNummer, bool aanMaken)
{
int? mijnAdNummer = _authenticatieMgr.AdNummerGet();
......
......@@ -20,7 +20,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Permissions;
using System.Text;
using Chiro.Cdf.Poco;
using Chiro.Gap.Domain;
......@@ -163,14 +162,12 @@ protected virtual void Dispose(bool disposing)
#endregion
/// <summary>
/// Genereert de lijst van inteschrijven leden met de informatie die ze zouden krijgen als ze automagisch zouden worden ingeschreven, gebaseerd op een lijst van in te schrijven gelieerde personen.
/// </summary>
/// <param name="gelieerdePersoonIds">Lijst van gelieerde persoonIds waarover we inforamtie willen</param>
/// <returns>De LidIds van de personen die lid zijn gemaakt</returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public List<InschrijvingsVoorstel> InschrijvingVoorstellen(IList<int> gelieerdePersoonIds)
{
// TODO (#195): van onderstaande logica moet wel wat verhuizen naar de workers!
......@@ -244,8 +241,6 @@ public List<InschrijvingsVoorstel> InschrijvingVoorstellen(IList<int> gelieerdeP
/// </summary>
/// <param name="inschrijfInfo">Lijst van informatie over wie lid moet worden</param>
/// <returns>Lijst met meer informatie over de personen die niet ingeschreven konden worden.</returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public List<InschrijvingsVoorstel> Inschrijven(IList<InschrijvingsVerzoek> inschrijfInfo)
{
// TODO: Te veel nesting. Opkuis nodig.
......@@ -417,8 +412,6 @@ public List<InschrijvingsVoorstel> Inschrijven(IList<InschrijvingsVerzoek> insch
/// <param name="gelieerdePersoonIDs">Id's van de gelieerde personen</param>
/// <param name="foutBerichten">Als voor sommige personen die actie mislukte, bevat foutBerichten een
/// string waarin wat uitleg staat.</param>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public void Uitschrijven(IList<int> gelieerdePersoonIDs, out string foutBerichten)
{
// Deze code is tamelijk rommelig; gebruik ze niet als referentie-implementatie
......@@ -508,8 +501,6 @@ public void Uitschrijven(IList<int> gelieerdePersoonIDs, out string foutBerichte
/// </summary>
/// <param name="lidId">Id van lid met te vervangen functies</param>
/// <param name="functieIds">Ids van nieuwe functies voor het lid</param>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public void FunctiesVervangen(int lidId, IEnumerable<int> functieIds)
{
var lid = _ledenRepo.ByID(lidId);
......@@ -572,8 +563,6 @@ public void FunctiesVervangen(int lidId, IEnumerable<int> functieIds)
/// <param name="lidId">Lid dat nieuwe afdelingen moest krijgen</param>
/// <param name="afdelingsJaarIds">Id's van de te koppelen afdelingsjaren</param>
/// <returns>De GelieerdePersoonId van het lid</returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public int AfdelingenVervangen(int lidId, IList<int> afdelingsJaarIds)
{
var lid = _ledenRepo.ByID(lidId);
......@@ -590,8 +579,6 @@ public int AfdelingenVervangen(int lidId, IList<int> afdelingsJaarIds)
/// </summary>
/// <param name="lidIds">Id's van leden die nieuwe afdelingen moeten krijgen</param>
/// <param name="afdelingsJaarIds">Id's van de te koppelen afdelingsjaren</param>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public void AfdelingenVervangenBulk(IList<int> lidIds, IList<int> afdelingsJaarIds)
{
// Dit is een beetje een rare functie. Als er meerdere leden zijn, en meerdere afdelingen, dan moeten
......@@ -681,8 +668,6 @@ where afdelingsJaarIds.Contains(aj.ID)
/// <remarks>Dit is nogal een specifieke method. In ons domain model is gegeven dat verzekeringen gekoppeld zijn aan
/// personen, voor een bepaalde periode. Maar in eerste instantie zal alleen de verzekering loonverlies gebruikt worden,
/// die per definitie enkel voor leden bestaat.</remarks>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public int LoonVerliesVerzekeren(int lidId)
{
PersoonsVerzekering persoonsVerzekering;
......@@ -729,8 +714,6 @@ public int LoonVerliesVerzekeren(int lidId)
/// </summary>
/// <param name="lidId">Id van lid met te togglen lidtype</param>
/// <returns>Lid-ID van lid</returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public int TypeToggle(int lidId)
{
var origineelLid = _ledenRepo.ByID(lidId);
......@@ -772,8 +755,6 @@ public int TypeToggle(int lidId)
/// </summary>
/// <param name="lidId">Id van het lid waarin we geinteresseerd zijn</param>
/// <returns>naam, afdeling en lidtype van het gegeven lid</returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public LidAfdelingInfo AfdelingenOphalen(int lidId)
{
var lid = _ledenRepo.ByID(lidId);
......@@ -787,8 +768,6 @@ public LidAfdelingInfo AfdelingenOphalen(int lidId)
/// </summary>
/// <param name="lidId">Id op te halen lid</param>
/// <returns>Lidinfo; bevat info over gelieerde persoon, persoon, groep, afdelingen en functies</returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public PersoonLidInfo DetailsOphalen(int lidId)
{
var lid = _ledenRepo.ByID(lidId);
......@@ -805,8 +784,6 @@ public PersoonLidInfo DetailsOphalen(int lidId)
/// </summary>
/// <param name="lidID">ID van een lid</param>
/// <returns>beperkte informatie over de person</returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public PersoonInfo PersoonOphalen(int lidID)
{
var lid = _ledenRepo.ByID(lidID);
......@@ -823,8 +800,6 @@ public PersoonInfo PersoonOphalen(int lidID)
/// </summary>
/// <param name="lidID">ID van een lid</param>
/// <returns>beperkte lidinfo voor lid met gegeven <paramref name="lidID" /></returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public LidInfo LidInfoOphalen(int lidID)
{
var lid = _ledenRepo.ByID(lidID);
......@@ -850,8 +825,6 @@ public LidInfo LidInfoOphalen(int lidID)
/// Let er ook op dat je in de filter iets opgeeft als LidType
/// (Kind, Leiding of Alles), want anders krijg je niets terug.
/// </remarks>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public List<LidOverzicht> LijstZoekenLidOverzicht(LidFilter filter, bool metAdressen)
{
// Onderstaande throwt een exception als de filter zaken bevat waar je geen rechten op
......@@ -890,8 +863,6 @@ public List<LidOverzicht> LijstZoekenLidOverzicht(LidFilter filter, bool metAdre
/// Let er ook op dat je in de filter iets opgeeft als LidType
/// (Kind, Leiding of Alles), want anders krijg je niets terug.
/// </remarks>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public List<PersoonLidInfo> LijstZoekenPersoonLidInfo(LidFilter filter)
{
// Onderstaande throwt een exception als de filter zaken bevat waar je geen rechten op
......@@ -928,8 +899,6 @@ public List<PersoonLidInfo> ActieveLedenOphalen(int GroepId)
/// </summary>
/// <param name="lidId">Id van lid met te togglen lidgeld</param>
/// <returns>GelieerdePersoonId van lid</returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public int LidGeldToggle(int lidId)
{
var lid = _ledenRepo.ByID(lidId);
......
......@@ -20,7 +20,6 @@
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Security.Permissions;
using Chiro.Cdf.Poco;
using Chiro.Gap.Domain;
using Chiro.Gap.Poco.Model;
......@@ -156,8 +155,6 @@ protected virtual void Dispose(bool disposing)
/// <returns>Details van uitstappen</returns>
/// <remarks>We laten toe om inschrijvingen te doen voor uitstappen uit het verleden, om als dat
/// nodig is achteraf fouten in de administratie recht te zetten.</remarks>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public IEnumerable<UitstapInfo> OphalenVanGroep(int groepId, bool inschrijvenMogelijk)
{
IEnumerable<Uitstap> resultaat;
......@@ -196,8 +193,6 @@ public IEnumerable<UitstapInfo> OphalenVanGroep(int groepId, bool inschrijvenMog
/// </summary>
/// <param name="uitstapId">ID van de uitstap</param>
/// <returns>Details over de uitstap</returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public UitstapOverzicht DetailsOphalen(int uitstapId)
{
var uitstap = _uitstappenRepo.ByID(uitstapId);
......@@ -210,8 +205,6 @@ public UitstapOverzicht DetailsOphalen(int uitstapId)
/// </summary>
/// <param name="deelnemerId">ID van de relevante deelnemer</param>
/// <returns>Informatie over de deelnemer met ID <paramref name="deelnemerId"/></returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public DeelnemerDetail DeelnemerOphalen(int deelnemerId)
{
var resultaat = _deelnemersRepo.Select().FirstOrDefault(dln => dln.ID == deelnemerId);
......@@ -225,8 +218,6 @@ public DeelnemerDetail DeelnemerOphalen(int deelnemerId)
/// </summary>
/// <param name="uitstapId">ID van de relevante uitstap</param>
/// <returns>Informatie over alle deelnemers van de uitstap met gegeven <paramref name="uitstapId"/></returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public IEnumerable<DeelnemerDetail> DeelnemersOphalen(int uitstapId)
{
var uitstap = _uitstappenRepo.ByID(uitstapId);
......@@ -246,8 +237,6 @@ public IEnumerable<DeelnemerDetail> DeelnemersOphalen(int uitstapId)
/// Een lijstje met de geregistreerde bivakken en feedback over wat er op dit moment moet gebeuren
/// voor de bivakaangifte
/// </returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public BivakAangifteLijstInfo BivakStatusOphalen(int groepId)
{
var resultaat = new BivakAangifteLijstInfo();
......@@ -307,8 +296,6 @@ where u.IsBivak
/// <returns>ID van de uitstap</returns>
/// <remark>De contactdeelnemer zit niet bij in <paramref name="info"/>, daar wordt dus
/// niets mee gedaan.</remark>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public int Bewaren(int groepId, UitstapInfo info)
{
// Als de uitstap een ID heeft, moet een bestaande uitstap opgehaald worden.
......@@ -374,8 +361,6 @@ public int Bewaren(int groepId, UitstapInfo info)
/// <param name="uitstapId">ID van de uitstap</param>
/// <param name="plaatsNaam">Naam van de plaats</param>
/// <param name="adresInfo">Adres van de plaats</param>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public void PlaatsBewaren(int uitstapId, string plaatsNaam, AdresInfo adresInfo)
{
var uitstap = _uitstappenRepo.ByID(uitstapId);
......@@ -423,8 +408,6 @@ where String.Equals(p.Naam, plaatsNaam, StringComparison.OrdinalIgnoreCase)
/// </summary>
/// <param name="uitstapId">ID van de te verwijderen uitstap</param>
/// <returns>Verwijderd de uitstap en toont daarna het overzicht scherm</returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public void UitstapVerwijderen(int uitstapId)
{
var uitstap = _uitstappenRepo.ByID(uitstapId);
......@@ -455,8 +438,6 @@ public void UitstapVerwijderen(int uitstapId)
/// </summary>
/// <param name="deelnemerId">ID van de als contact in te stellen deelnemer</param>
/// <returns>De ID van de uitstap, ter controle, en misschien handig voor feedback</returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public int ContactInstellen(int deelnemerId)
{
var deelnemer = _deelnemersRepo.ByID(deelnemerId);
......@@ -513,8 +494,6 @@ public int ContactInstellen(int deelnemerId)
/// <param name="logistiekDeelnemer">Bepaalt of al dan niet ingeschreven wordt als
/// logistieker</param>
/// <returns>De basisgegevens van de uitstap, zodat die in de feedback gebruikt kan worden</returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public UitstapInfo Inschrijven(IList<int> gelieerdePersoonIDs, int geselecteerdeUitstapId,
bool logistiekDeelnemer)
{
......@@ -569,8 +548,6 @@ public int ContactInstellen(int deelnemerId)
/// </summary>
/// <param name="deelnemerId">ID uit te schrijven deelnemer</param>
/// <returns>ID van de uitstap, ter controle, en handig voor feedback</returns>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public int Uitschrijven(int deelnemerId)
{
var deelnemer = _deelnemersRepo.ByID(deelnemerId);
......@@ -596,8 +573,6 @@ public int Uitschrijven(int deelnemerId)
/// Updatet een deelnemer op basis van de info in <paramref name="info"/>
/// </summary>
/// <param name="info">Info nodig voor de update</param>
// applying PrincipalPermission at class level doesn't seem to work for a WCF service.
[PrincipalPermission(SecurityAction.Demand, Role = @"GapServiceConsumers")]
public void DeelnemerBewaren(DeelnemerInfo info)
{
var deelnemer = _deelnemersRepo.ByID(info.DeelnemerID);
......
......@@ -25,13 +25,13 @@
<container>
<!-- channelProvider -->
<!-- De DevChannelProvider spreekt geen webservices aan. Dat is meestal goed voor dev :-) -->
<!--<register type="Chiro.Cdf.ServiceHelper.IChannelProvider, Chiro.Cdf.ServiceHelper" mapTo="Chiro.Gap.Services.Dev.DevChannelProvider, Chiro.Gap.Services.Dev">
<lifetime type="PerOperationContext" />
</register>-->
<!-- Maar nu willen we messages naar de queue voor CiviSync, en AD-toegang. Dus: ChannelFactoryChannelProvider. -->
<register type="Chiro.Cdf.ServiceHelper.IChannelProvider, Chiro.Cdf.ServiceHelper" mapTo="Chiro.Cdf.ServiceHelper.ChannelFactoryChannelProvider, Chiro.Cdf.ServiceHelper">
<register type="Chiro.Cdf.ServiceHelper.IChannelProvider, Chiro.Cdf.ServiceHelper" mapTo="Chiro.Gap.Services.Dev.DevChannelProvider, Chiro.Gap.Services.Dev">
<lifetime type="PerOperationContext" />
</register>
<!--Als je wel met queues wil werken, dan gebruik je de ChannelFactoryChannelProvider. -->
<!--<register type="Chiro.Cdf.ServiceHelper.IChannelProvider, Chiro.Cdf.ServiceHelper" mapTo="Chiro.Cdf.ServiceHelper.ChannelFactoryChannelProvider, Chiro.Cdf.Servicehelper">
<lifetime type="PerOperationContext" />
</register>-->
<!-- repositoryprovider -->
<register type="Chiro.Cdf.Poco.IContext, Chiro.Cdf.Poco" mapTo="Chiro.Gap.Poco.Context.ChiroGroepEntities, Chiro.Gap.Poco.Context">
<lifetime type="PerInstanceContext"/>
......@@ -101,8 +101,8 @@
<register type="Chiro.Gap.WorkerInterfaces.IAbonnementenManager, Chiro.Gap.WorkerInterfaces" mapTo="Chiro.Gap.Workers.AbonnementenManager, Chiro.Gap.Workers">
<lifetime type="PerOperationContext" />
</register>
<!-- Voor staging kijken we de e-mailadressen na via het intranet -->
<register type="Chiro.Cdf.Intranet.IMailadrescontrole, Chiro.Cdf.Intranet" mapTo="Chiro.Cdf.Intranet.Mailadrescontrole, Chiro.Cdf.Intranet">
<!-- geen intranet-aanroepen in (lokale) dev -->
<register type="Chiro.Cdf.Intranet.IMailadrescontrole, Chiro.Cdf.Intranet" mapTo="Chiro.Cdf.Intranet.FakeMailadrescontrole, Chiro.Cdf.Intranet">
<lifetime type="PerOperationContext" />
</register>
<!-- de syncinterfaces -->
......@@ -182,7 +182,8 @@
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="false" multipleSiteBindingsEnabled="true" />
<bindings>
<!-- netMsmqBinding wordt gebruikt voor CiviSync. Is dus relevant in staging. -->
<!-- De msmq-binding voor de CiviSync. Laat ons die uitzetten in dev, want ze geeft problemen onder Linux. -->
<!---
<netMsmqBinding>
<binding name="NetMsmqBinding_ISyncPersoonService" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" deadLetterQueue="System" durable="true" exactlyOnce="true" maxReceivedMessageSize="65536" maxRetryCycles="2" receiveErrorHandling="Reject" receiveRetryCount="5" retryCycleDelay="00:30:00" timeToLive="1.00:00:00" useSourceJournal="false" useMsmqTracing="false" queueTransferProtocol="Native" maxBufferPoolSize="524288" useActiveDirectory="false">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
......@@ -192,15 +193,17 @@
</security>
</binding>
</netMsmqBinding>
-->
<!-- Onderstaande binding wordt gebruikt door de services van de backend. Deze services dus :-) -->
<wsHttpBinding>
<basicHttpBinding>
<!-- maxReceivedMessageSize groot genoeg, opdat Chiro Schelle ook alle lidvoorstellen
tegelijk kan krijgen bij de jaarovergang. -->
<binding name="ChiroWshttpBinding" closeTimeout="00:00:30" openTimeout="00:00:30" receiveTimeout="00:05:00" sendTimeout="00:05:00" maxReceivedMessageSize="260000"/>
</wsHttpBinding>
<binding name="ChiroBinding" closeTimeout="00:00:30" openTimeout="00:00:30" receiveTimeout="00:05:00" sendTimeout="00:05:00" maxReceivedMessageSize="260000"/>
</basicHttpBinding>
</bindings>
<!-- Clientdefinities hieronder zijn enkel relevant als je kipsync of de
loginservice wilt gebruiken. Meestal niet nodig voor dev. -->
<!---
<client>
<endpoint address="net.msmq://localhost/private/civisyncdev" binding="netMsmqBinding" bindingConfiguration="NetMsmqBinding_ISyncPersoonService" contract="Chiro.Kip.ServiceContracts.ISyncPersoonService" />
<endpoint address="http://localhost:50024/AdService.svc" binding="wsHttpBinding" bindingConfiguration="ChiroWshttpBinding" contract="Chiro.Ad.ServiceContracts.IAdService" />
......@@ -208,6 +211,7 @@
<endpoint address="http://localhost:50024/AdService.svc" binding="wsHttpBinding"
bindingConfiguration="ChiroWshttpBinding" contract="Chiro.Ad.ServiceContracts.IAdService" />
</client>
-->
<diagnostics performanceCounters="Off">
<messageLogging logMalformedMessages="false" logMessagesAtServiceLevel="false" logMessagesAtTransportLevel="false" />
</diagnostics>
......@@ -232,7 +236,7 @@
</behaviors>
<services>
<service behaviorConfiguration="GapServiceBehavior" name="Chiro.Gap.Services.GroepenService">
<endpoint address="" binding="wsHttpBinding" bindingConfiguration="ChiroWshttpBinding" contract="Chiro.Gap.ServiceContracts.IGroepenService">
<endpoint address="" binding="basicHttpBinding" bindingConfiguration="ChiroBinding" contract="Chiro.Gap.ServiceContracts.IGroepenService">
<identity>
<dns value="localhost" />
</identity>
......@@ -240,7 +244,7 @@
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
<service behaviorConfiguration="GapServiceBehavior" name="Chiro.Gap.Services.DbHacksService">
<endpoint address="" binding="wsHttpBinding" bindingConfiguration="ChiroWshttpBinding" contract="Chiro.Gap.ServiceContracts.IDbHacksService">
<endpoint address="" binding="basicHttpBinding" bindingConfiguration="ChiroBinding" contract="Chiro.Gap.ServiceContracts.IDbHacksService">
<identity>
<dns value="localhost" />
</identity>
......@@ -248,7 +252,7 @@