• No results found

Login PLC-webpagina 1 Waarvoor?

In document S7-1200 PLC-Web applicatie (pagina 35-39)

Hogeschoolbegeleiding: Harry Voermans 0765-25

Fase 8 Oplevering en inbedrijfstelling van uitbreiding bij de klant Fase 9 Volledige documentatie afmaken.

B.5 Login PLC-webpagina 1 Waarvoor?

Inloggen doet men om bepaalde permissies te krijgen op een site. Bij de PLC is dit om variabelen te kunnen schrijven. Om variabelen te lezen is dit niet nodig, dit is omdat deze al meteen op het scherm gepresenteerd worden.

Inloggen moet nu nog op de standaardpagina, maar de bedoeling is om dit ook vanaf de eigen pagina te kunnen zodat er maar 1 pagina nodig is.

De ondersteunde browsers zijn: - Internet Explorer 8.0+

- Mozilla Fire Fox 3.0+ - Opera 11.0+

Dit verklaart waarschijnlijk dat inloggen vanaf een andere browsers een error geeft.

Omdat de eigen webpagina vanaf een Ipad (Safari) bezocht gaat worden moet hier nog een oplossing voor bedacht worden. Mogelijkheden hiervoor zijn: andere webbrowser voor Ipad zoeken, inlog mogelijkheid maken op eigen pagina wat geen error geeft.

B.5.2 Users

Er is 1 standaard account om in te loggen, namelijk: “admin”, en deze accountnaam is niet te veranderen. Verder bestaat er geen mogelijkheid om meerdere users toe te voegen bij de PLC, en eventuele bevoegdheden aan de account te koppelen zoals bij HMI.

Het wachtwoord van dit account is gelijk aan het wachtwoord van de PLC (write/read protection). Is er geen wachtwoord ingesteld, dan logt men in door alleen “admin” bij user in te voeren en op ENTER of Login te drukken.

Er kan wel een aparte Login voor verschillende users gemaakt worden op de zelf ontworpen webpagina, maar voordat er met deze login gewerkt kan worden moet er eerst op de PLC met “admin” ingelogd worden omdat er dan variabelen geschreven worden. En dat maakt het dus overbodig. Tevens als je de “admin” gegevens hebt kan je ook in principe het PLC programma bewerken.

S7-1200 PLC-Web applicatie: Afstudeerscriptie B.5.3 Beveiliging

Naast het eventuele wachtwoord van de PLC is ook nog het inloggen encrypt met SSL (Secure Sockets Layer, port:443). Na de encrypted handshake tussen client en server wordt er een cookie

gegenereerd bij de client welke ervoor zorgt dat deze bevoegdheid tot het schrijven van variabelen krijgt.

Gaat de login niet goed, typfoutje of iets dergelijks, dan wordt er geen cookie geplaatst bij de client en worden zijn acties m.b.t. het schrijven van variabelen genegeerd. Er is dus opnieuw een login- sessie vereist voor het schrijven van variabelen.

Figuur 5: Login-sessie, bekeken met Wireshark

B.5.4

Eigen Login-formulier

Om de zelf ontworpen website een volledige functionaliteit te geven was mijn idee om een eigen Login-formulier maken welke is afgeleid van de standaard webpagina.

Door de bron van de webpagina te bestuderen werd duidelijk wat de te schrijven variabelen waren. Door deze over te nemen en een en eigen formulier te maken, lukte het om de login-variabele te setten waardoor de gebruiker IO kan schrijven.

Wel bleef er nog een klein probleem, ondanks dat de variabele geset wordt veranderd het formulier niet mee waarbij de user-status wordt uitgelezen met de mogelijkheid om ook weer uit te loggen. Als oplossing om toch de mogelijkheid voor het schrijven van IO apart in te schakelen is een knop gemaakt welke bij het indrukken de inloggegevens verstuurd. Wel werkt deze knop alleen maar bij de ondersteunende browsers.

S7-1200 PLC-Web applicatie: Afstudeerscriptie B.5.5 Tegenslagen

Tijdens het inloggen op de PLC vanaf Safari op de PC of Ipad komt er een 404-error terug. Na verschillende manieren te geprobeerd te hebben is met Wireshark geluisterd naar wat er op de “lijn tussen PC en PLC” gebeurd tijdens het inloggen. Hieruit blijkt dat de “encrypted handshake” niet goed verloopt. Dit komt omdat de beveiligde verbinding tussen de client (Safari) en de server (PLC) niet tot stand kan worden gebracht. Na contact met Siemens hierover blijkt de oorzaak van dit probleem in de webserver van de PLC te zitten.

Er is wel verbinding tussen client en server, maar deze verliest data of decrypt deze niet goed. Zo blijkt dat tijdens het inloggen aan het eind van de handshake bij aanvragen van de nieuwe pagina dat de cookie mist bij de client, welke van essentieel belang is.

Ook ontstaat soms tijdens de handshake een “Encrypt Alert (21)”. Na de definitie ervan opgezocht te hebben, blijkt dat dit betekend dat de decryptie niet goed is gegaan.

Figuur 6: Encrypt Alert

S7-1200 PLC-Web applicatie: Afstudeerscriptie B.5.6 Gezochte oplossingen

Omdat op de Ipad de webbrowser Safari problemen gaf, is er gezocht naar alternatieven waardoor wel de inlogfunctie zou werken. Volgens de systemmanual worden de browsers Fire Fox, Opera en IE ondersteund, dus is er naar deze browsers gezocht voor de Ipad.

Beschikbare browsers voor Ipad

Opera: Voor Ipad is Opera Mini beschikbaar. Na deze geïnstalleerd te hebben blijk deze niet bruikbaar te zijn. De browser kan de server zelf niet bereiken. De reden hiervan is onbekend, waarschijnlijk doordat het een Mini browser is en dus niet de mogelijkheden hiertoe heeft.

Andere mogelijke browsers zijn Apollo, Mercury en Dolphin. Maar deze gedragen zich hetzelfde als Safari. Wel surfen op de website van de PLC maar inloggen vertoond een 404-error.

Het lijkt er dus op dat het probleem zich niet alleen in Safari verschuilt maar ook in de Ipad zelf. B.5.7 Conclusie

Om een eigen login-formulier werkend te krijgen is de code nodig die in de webserver zit, maar deze is niet zomaar te achterhalen en Siemens geeft deze niet weg.

Het probleem dat ontstaat met het inloggen via een Ipad zal voorlopig niet door een eigen script te verhelpen zijn. Dit omdat volgens Siemens de login afhandeling security fixed zit in de ingebouwde webserver. Een oplossing hiervoor zal helaas vanuit Siemens met een update moeten komen, dus of dit nog komen gaat blijft de vraag.

B.6 Uitbreidingen

Dit onderdeel is voor de uitbreidingen m.b.t. de zonnepanelen opbrengsten en eventueel het oplaadt proces van de Fisker (elektrische auto).

De informatie over de zonnepanelen staat op een FTP server. Deze informatie zal als geheel gepresenteerd moeten worden binnen het scherm. Er kan informatie van andere servers worden getoond d.m.v. het plaatsen van “iframes” binnen de webpagina zelf. Door deze server als bron van het frame te stellen, wordt de inhoud zichtbaar binnen het desbetreffende frame.

Hoe de Fisker gepresenteerd kan worden binnen de mogelijkheden van de PLC webserver is nog niet duidelijk, omdat hier nog niks over bekend is hoe dit nu gebeurd.

B.7 Conclusie

Na dit onderzoek zijn de mogelijkheden van de PLC webserver duidelijk. Er kan een eigen webpagina ontworpen worden waarbij de gewenste data blok tags gepresenteerd worden op het beeld. Er kan ook visualisatie aan toegevoegd worden, maar dit heeft wel zijn grenzen. Dit komt omdat de ingebouwde webserver niet is bedoelt om de HMI te vervangen. Sensoren kunnen uitgelezen

worden, data tags kunnen geschreven worden en als visualisatie kunnen er afbeeldingen toegevoegd worden. Er kunnen geen grafieken gegenereerd worden omdat de webserver niet de mogelijkheden

S7-1200 PLC-Web applicatie: Afstudeerscriptie

C PLC website

In document S7-1200 PLC-Web applicatie (pagina 35-39)