Benutzer-Werkzeuge

Webseiten-Werkzeuge


openantrag

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
openantrag [20.06.2018 11:26] – [Datenbankanbindung] thoogeopenantrag [23.06.2018 15:33] (aktuell) – [Parlamente] thooge
Zeile 10: Zeile 10:
     * Pushbullet     * Pushbullet
     * Pushover     * Pushover
 +
 ===== Windows ===== ===== Windows =====
  
Zeile 16: Zeile 17:
 zu bekommen. Anschließend dann verwenden aktueller Versionen der zu bekommen. Anschließend dann verwenden aktueller Versionen der
 verwendeten Komponenten. verwendeten Komponenten.
 +
 +Nachdem die alte Konfiguration läuft, geht es an die Aktualisierung:
 +  * RavenDB 4.0.5
 +    * Datenbank aus 2.5 kann über 3.5 nach 4 konvertiert werden
 +    * Anwendung muß auf .NET 4.6.1 umgestellt werden
 +  * Es gibt einige Änderungen, der Programmcode muß angepaßt werden. Insgesondere gibt es keinen Connectionstring mehr.
  
 ==== RavenDB ==== ==== RavenDB ====
Zeile 40: Zeile 47:
 === Berechtigungen === === Berechtigungen ===
  
-Über ASP.NET Xml Security Providers: +Es gibt 
-https://docs.microsoft.com/en-us/iis/application-frameworks/building-and-running-aspnet-applications/how-to-use-the-sample-read-only-xml-membership-and-role-providers-with-iis+  * Einen Administrator 
 +  * Normale Benutzer 
 +    * ''ID'' 
 +    * ''User-Key'' 
 +    * ''Benutzername'' 
 +    * ''EMail'' 
 +    * ''API-Key'' 
 +    * ''Pushover-User-Key''
  
 +Die Berechtigungen werden aus der Datei ''Users.xml'' gelesen. 
 +Damit das ganze funktioniert wird noch ein Membership Provider benötigt.
 +Dies ist ein eigenständiges Projekt.
 +Siehe auch:
 +[[https://docs.microsoft.com/en-us/iis/application-frameworks/building-and-running-aspnet-applications/how-to-use-the-sample-read-only-xml-membership-and-role-providers-with-iis|Über ASP.NET Xml Security Providers]]
  
-TODO Genaues Format noch nicht geklärt+Der dort beschriebene Code muß geringfügig angepaßt werden, damit er für unsere Situation paßt. 
 +Insbesondere ist ein Verweis auf ''System.Web.ApplicationServices'' erforderlich.
  
-<file xml Roles.xml> +In ''ReadMembershipDataStore'' muß der providerUserKey (ein eindeutiger Schlüssel) aus der ''Users.xml'' 
-<?xml version="1.0encoding="utf-8"?> +übernommen werden. Wir verwenden ''UserID'' dazu: 
-<Roles> +<code vb> 
-</Roles> +MembershipUser user new MembershipUser( 
-</file>+ Name,                       // Provider name 
 + node["UserName"].InnerText, // Username 
 + node["UserID"].InnerText,   // providerUserKey 
 + node["EMail"].InnerText,    // Email 
 + String.Empty,               // passwordQuestion 
 + node["Password"].InnerText, // Comment 
 + true,                       // isApproved 
 + false,                      // isLockedOut 
 + DateTime.Now,               // creationDate 
 + DateTime.Now,               // lastLoginDate 
 + DateTime.Now,               // lastActivityDate 
 + DateTime.Now,               // lastPasswordChangedDate 
 + new DateTime(1980, 1, 1)    // lastLockoutDate 
 +); 
 + 
 +</code>
  
 <file xml Users.xml> <file xml Users.xml>
Zeile 57: Zeile 92:
    <User>    <User>
       <UserName>Bob</UserName>       <UserName>Bob</UserName>
 +      <UserID>bob</UserID>
       <Password>geheim</Password>       <Password>geheim</Password>
-      <EMail>bob@contoso.com</EMail> +      <EMail>bob@piratenpartei-sh.de</EMail> 
-      <Roles>Members</Roles>+      <Roles>testparlament</Roles>
    </User>    </User>
    <User>    <User>
       <UserName>Alice</UserName>       <UserName>Alice</UserName>
 +      <UserID>alice</UserID>
       <Password>geheim</Password>       <Password>geheim</Password>
-      <EMail>alice@contoso.com</EMail> +      <EMail>alice@piratenpartei-sh.de</EMail> 
-      <Roles>Members,Administrators</Roles>+      <Roles>admin,testparlament/Roles>
    </User>    </User>
 </Users> </Users>
 </file> </file>
 +
 +Rollen:
 +  * ''admin'' ist eine spezielle Rolle
 +  * Jedes Parlament (''representations.key'') entspricht einer Rolle
  
 === Anwendungseinstellungen === === Anwendungseinstellungen ===
Zeile 91: Zeile 132:
 | SendPushoverNotification       | Boolean    False    |               | | SendPushoverNotification       | Boolean    False    |               |
 | DefaultPagerListPageSize       | Integer    25                     | | DefaultPagerListPageSize       | Integer    25                     |
-| DefaultPagerListWingLength     | Integer             |               |+| DefaultPagerListWingLength     | Integer    10       |               |
 | RandomKey_AllowCapitalLetters  | Boolean                           | | RandomKey_AllowCapitalLetters  | Boolean                           |
 | RandomKey_Letters              | String    |                         | | RandomKey_Letters              | String    |                         |
Zeile 115: Zeile 156:
         label="Test" color="#999"          label="Test" color="#999" 
           name="Test-Parlament" name2="Parlament (Test)"           name="Test-Parlament" name2="Parlament (Test)"
-          level="4" federal="" map-url=""+          level="4" federal="SH" map-url=""
           group-type="1" group-name="Test"           group-type="1" group-name="Test"
           link=""           link=""
Zeile 167: Zeile 208:
     <compilation debug="true" targetFramework="4.5.1" />     <compilation debug="true" targetFramework="4.5.1" />
     <httpRuntime targetFramework="4.5.1" />     <httpRuntime targetFramework="4.5.1" />
 +
 +    <!-- PublicKeyToken aus der Assembly mit "sn -T <dllfile> extrahieren 
 +         oder aus %windir\Microsoft.NET\assembly% auslesen -->    
 +
 +    <membership defaultProvider="AspNetReadOnlyXmlMembershipProvider">
 +      <providers>
 +        <add name="AspNetReadOnlyXmlMembershipProvider"
 +           type="ReadOnlyXmlMembershipProvider, ReadOnlyXmlMembershipProvider, Version=1.0.0.0, Culture=neutral, PublicKeyToken=5f20f686ead4fa28"
 +           description="Read-only XML membership provider"
 +           xmlFileName="~/App_Data/Users.xml" />
 +      </providers>
 +    </membership>
 +    
 +    <roleManager enabled="true" defaultProvider="AspNetReadOnlyXmlRoleProvider">
 +      <providers>
 +        <add name="AspNetReadOnlyXmlRoleProvider"
 +           type="ReadOnlyXmlRoleProvider, ReadOnlyXmlRoleProvider, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6ae538083776793b"
 +           description="Read-only XML role provider"
 +           xmlFileName="~/App_Data/Users.xml" />
 +      </providers>
 +    </roleManager>
 +
 +    <authentication mode="Forms" />
 +
   </system.web>   </system.web>
  
Zeile 173: Zeile 238:
   </connectionStrings>   </connectionStrings>
  
- <appSettings>+  <appSettings
 +    <add key="SendMail" value="False"/> 
 +    <add key="SendTweets" value="False"/> 
 +    <add key="SendPushoverNotification" value="False"/>
     <add key="DefaultPagerListPageSize" value="25"/>     <add key="DefaultPagerListPageSize" value="25"/>
     <add key="DefaultPagerListWingLength" value="10"/>     <add key="DefaultPagerListWingLength" value="10"/>
 +    <add key="RandomKey_AllowCapitalLetters" value="False"/>
 +    <add key="RandomKey_Letters " value="abcdefghijklmnopqrstuvwxyz"/>
 +    <add key="RandomKey_Numbers " value="0123456789"/>
 +    <add key="NotificationPageCount" value="25"/>
 +    <add key="ProposalListCount" value="25"/>
   </appSettings>   </appSettings>
  
Zeile 193: Zeile 266:
   * Teaser.xml    * Teaser.xml 
  
 +==== Deploy ====
 +
 +Veröffentlichen der Anwendung auf einem Server (ohne Entwicklungsumgebung).
 +Erfolgreich getestet mit einem Windows 7 mit IIS.
 +
 +  - IIS installieren
 +  - RavenDB 2.5 muß laufen
 +  - ASP.NET initialisieren<code>
 +cd C:\Windows\Microsoft.NET\Framework\v4.0.30319
 +aspnet_regiis -i
 +</code>
 +  - Überkopieren der Daten 
 +    * Am besten die Funktion "Veröffentlichen" von Visual-Studio verwenden, in ein lokales Verzeichnis. Anschließend können die Dateien dann auf den echten Webserver übertragen werden.
  
 ===== Linux ===== ===== Linux =====
openantrag.1529494015.txt.gz · Zuletzt geändert: 20.06.2018 11:26 von thooge

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki