EXAMENSARBETE. Android-applikation för hälsokontroll. Nicklas Pettersson. Högskoleingenjörsexamen Datateknik

Storlek: px
Starta visningen från sidan:

Download "EXAMENSARBETE. Android-applikation för hälsokontroll. Nicklas Pettersson. Högskoleingenjörsexamen Datateknik"

Transkript

1 EXAMENSARBETE Android-applikation för hälsokontroll Nicklas Pettersson Högskoleingenjörsexamen Datateknik Luleå tekniska universitet Institutionen för system- och rymdteknik

2 Sammanfattning Denna rapport beskriver planering och utveckling av en Android-applikation och en webbtjänst på uppdrag av Explizit AB. Applikationen och webbtjänsten ska vara knutna till CheckUp Life, en produkt för kontroll och uppföljningar av personers hälsostatus. Kraven är att Android-applikationen visuellt och funktionsmässigt ska likna den webbapplikation som idag existerar för CheckUp Life samt att kommunikation mellan applikation och webbtjänst håller hög säkerhet. Resultatet blev en REST-baserad webbtjänst, med WCF i grunden, säkrad med SSL och basic authentication och en Android-applikationen som kommunicerar med webbtjänsten samt visuellt och användarmässigt liknar webbapplikationen. i

3 Abstract This report describes the planning and development of an Android application and a web service on behalf of Explizit AB. The application and the web service shall be linked to CheckUp Life, a product for supervising and monitoring of people s health status. The requirements are that the Android application shall visually and functionally be similar to the web application that currently exists for CheckUp Life, and that the communication between application and web service is highly secured. The result was a RESTful web service, based on WCF, secured with SSL and basic authentication and an Anrdroid application that communicated with the web service and visually and functionally is similar to the web application. ii

4 Innehåll 1 Inledning Bakgrund Problem Teori Android Applikationer och säkerhet Windows Communication Foundation Kommunikation SOAP Representational State Transfer Meddelandeformat XML JSON Secure Sockets Layer Autentisering Basic access authentication Digest access authentication Metod Utrustning och utvecklingsmiljö Systemöversikt Utveckling av app Inloggning Diagram Kalender Träningsdagbok Detaljer Metoddetaljer Utveckling av webbtjänst Kommunikation WCF Säkerhet Konfidentialitet och integritet Autentisering Resultat Genomgång av funktionalitet Diskussion Fortsatt arbete iii

5 Figurer 1 Systemöversikt Skiss för användargränssnitt Inloggning Diagram som visar mätdata Kalender Träningsdagbok Detaljer Metoddetaljer iv

6 1 Inledning Detta examensarbete består av att skapa en Android-applikation och en webbtjänst till hälsokontrollssystemet CheckUp Life. Arbetet utförs åt Explizit AB i Skellefteå. 1.1 Bakgrund Explizit är ett konsultbolag med ett 40-tal anställda där merparten är placerade i huvudkontoret i Skellefteå och ett fåtal i Göteborg och Malmö. Företagets huvudsakliga inriktningar är inom områdena hälsa, fordonslösningar, industri och telekom. Explizit har en egenutvecklad produkt vid namn CheckUp som används för att på ett enkelt och effektivt sätt göra kontroller och uppföljningar av personers hälsostatus. Produkten består av en väska med olika mätverktyg som används för att kontrollera bland annat vikt, blodtryck, kolesterol m.m. För att registrera mätvärdena får varje person som är ansluten till systemet ett personligt id-kort som gör att värdena registreras på rätt person. Väskan innehåller en trådlös accesspunkt som används för att överföra de uppmätta värdena och slutligen överförs informationen till en databas för uppföljning. På en personlig webbsida är det sedan möjligt att avläsa förändringar och trender på ett grafiskt lättöverskådligt sätt. På webbsidan finns det även möjlighet att få information om de olika mätmetoderna och föra träningsdagbok. 1.2 Problem För att användarna ska få större valfrihet och ökad mobilitet, så att man via sin smartphone kan se sina värden och göra registreringar i sin träningsdagbok, behövs en mobilapp för detta. CheckUp Life består av en databas och en webbapplikation. Idag saknar CheckUp Life en webbtjänst för att kunna kommunicera med mobilappar. I examensarbetet ingår att skapa en webbtjänst för kommunikation med mobilappar samt skapa en Android-app för CheckUp Life. För webbtjänsten ska det avgöras vilken arkitektur eller vilket protokoll som bör användas för kommunikation mellan klient och server. En lämplig metod för att autentisera användarna ska tas fram och även en reflektion om säkerhet och eventuella åtgärder som tagits för att fastställa en hög säkerhet för användarna. Det ska fastställas vad som behövs i webbtjänsten för att en utvecklad app ska kunna hämta och spara information i databasen. Utvecklingen för detta ska göras i C#.NET. Vad gäller appen så ska det analyseras och verifieras att det befintliga grafiska gränssnittet i webbapplikationen fullt ut går att implementera i en app. Om problem uppstår så ska alternativa grafiska lösningar tas fram för att presentera informationen på ett bra och tydligt sätt i appen. I övrigt ska appen ha liknande design och grafisk profil som webbapplikationen för att användarna ska känna igen sig. 1

7 2 Teori 2.1 Android Android är ett Linuxbaserat operativsystem skapat för smartphones och läsplattor. Android utvecklas av Open Handset Alliance m.fl. och är dominanta på marknaden med 50.9% av marknadsandelen av sålda smartphones under fjärde kvartalet 2011[1]. Utvecklingen av applikationer sker med hjälp av Android SDK med språket Java Applikationer och säkerhet En Android-app skapas genom att kompilera kod- och resursfiler till ett Android package i form av en.apk-fil som sedan kan installeras i systemet. Varje applikation körs i en sandbox där följande regler gäller: Varje applikation är en egen användare i systemet. Endast användaren associerad med applikationen har access till dess filer. Varje applikation körs på en egen process. Varje process har sin egen virtual machine och är helt isolerad från andra applikationer. 2.2 Windows Communication Foundation Windows Communication Foundation (WCF) är ett API, tillhörande.net-ramverket, för att bygga tjänsteorienterade applikationer[2][3]. WCF är baserat kring Service-Oriented Architecture (SOA) där tjänsteapplikationen exponerar sina funktioner för klienterna. Fundamentala koncept för WCF är: Tjänst En entitet som exponerar ett antal slutpunkter för klienterna. Slutpunkt En entitet där meddelande kan skickas och tas emot. Den består av en adress, bindning och operationskontrakt. Adress En identifierare för kommunikation. Specificeras av en URI. Bindning Definierar hur en slutpunkt ska kommunicera. Här avgörs vilket transportprotokoll som ska användas, hur meddelandet ska kodas och om det ska skyddas på något sätt. 2

8 Kontrakt Operationskontrakt definierar vilka parametrar och vilken returtyp som gäller för den funktion som knyts till en slutpunkt. Datakontrakt beskriver avancerade datatyper som kan användas som en parameter eller returtyp. 2.3 Kommunikation För meddelandehanteringen mellan webbtjänst och klient används vanligtvis protokollet SOAP[4] eller en implementation enligt arkitekturen REST[5] SOAP SOAP är ett protokoll som vanligtvis används inom webbtjänster för utbyte av information. För att skicka SOAP-meddelanden används vanligtvis något av protokollen i applikationslagret, så som HTTP. Som meddelandeformat används XML[4]. SOAP-meddelanden består av ett så kallat SOAP Envelope som innehåller en header (valfritt) och en body. Headern kan innehålla uppgifter om autentisering eller annan sessionsdata, body innehåller den faktiska datan som ska behandlas av den endpoint som det skickas till Representational State Transfer Representational State Transfer (REST) är en arkitektur för distribuerade system beskriven av Roy T. Fielding. Den beskriver ett antal begränsningar för arkitekturen och genom att en service följer dessa (kod på begäran är frivillig) så kan den benämnas som RESTbaserad[5]: Klient-server Genom att helt separera klient och server så ökas klientens portabelitet och serverns skalbarhet samt att delarna kan utvecklas oberoende av varandra. Tillståndslös Varje serveranrop från klienten ska innehålla tillräcklig information för att utföra begäran och servern får inte använda sparad information för att förenkla anropet. Detta gör att servern ökar skalbarheten då den snabbt kan frigöra resurser och den blir pålitligare genom lättare återställning från fel. Cache Serversvar ska kunna sättas som cachebara eller icke cachebara för att öka prestandan och skalbarheten. Enhetligt gränssnitt Varje resurs ska vara adresserbar och resurserna och svaren ska innehålla en representation av resurserna. Om en klient innehar en representation av en resurs kan klienten 3

9 modifiera resursen på servern om den har de rättigheterna. Varje anrop innehåller tillräckligt med information för att veta hur det ska hanteras. Lagersystem Klienten ska inte kunna avgöra om den kommunicerar med en slutserver eller mellanliggande servrar som kan användas för exempelvis lastbalansering. Kod på begäran Servrar kan utöka sin funktionalitet genom att överföra exekverbar kod till klienten. REST används vanligtvis genom HTTP för att skicka meddelanden och använder då metoderna GET, POST, PUT, DELETE för accessen till resurserna. Vilket meddelandeformat som används är valfritt men vanligtvis används XML eller JSON. 2.4 Meddelandeformat De meddelandeformat som jag väljer som aktuella för att använda, baserat på vad som ska komma att stödjas, är XML[6] och JSON[7] XML Extensible Markup Language (XML)[6] är ett märkspråk som definierar en dokumentkodning med data i klartext som är enkel även för människor att kunna läsa och förstå. Den syntax som används är <namn>innehåll</namn> där ett exempel på telefonbok kan se ut så här: <telefonbok> <namn>john Doe</namn> <telefonnummer> <typ>hemma</typ> <nummer> </nummer> </telefonnummer> <telefonnummer> <typ>jobb</typ> <nummer> </nummer> </telefonnummer> </telefonbok> JSON JavaScript Object Notation (JSON)[7] är en klartextbaserad standard för datautbyte härlett från JavaScript vars design gör det lätt för människor att läsa. Det stödjer ett antal primitiva typer och syntaxen som används är namn : innehåll där motsvarande telefonbok ovan kan se ut så här: 4

10 { } "namn":"john Doe" "telefonnummer": [ { "typ":"hemma" "nummer":" " }, { "typ":"jobb" "nummer":" " } ] 2.5 Secure Sockets Layer Secure Sockets Layer (SSL)[9] är ett säkerhetsprotokoll som ger möjlighet till krypterad kommunikation över internet. En session initieras genom en handskakning där parterna kommer överens om vilken kryptering som ska användas och de nödvändiga nycklarna skapas och utbytes. Under handskakningen autentiserar sig servern genom att skicka ett certifikat till klienten. För att detta certifikat ska anses som giltigt ska det ha utfärdats av en certificate authority (CA) som garanterar att certifikatet är äkta. Det är även möjligt att skapa självsignerande certifikat vilket innebär att användaren manuellt måste godkänna certifikatet. 2.6 Autentisering Autentisering är en verifikation för att användaren är den som den utger sig för att vara. Detta sker vanligtvis genom att initialt ange användarnamn och lösenord och därefter kan en cookie eller token skapas med information som helt eller delvis kan bifogas meddelandena för att autentisera användaren. HTTP stödjer ett antal olika metoder för autentisering och de som undersöktes vidare var basic authentication och digest authentication[8] Basic access authentication Basic authentication baseras på att en klient måste autentisera sig med användarnamn och lösenord för varje anrop till servern och detta anrop kommer att behandlas endast om servern kan validera dessa uppgifter för det specifika anropet. Användaruppgifterna skickas som en base64-kodad sträng med användarnamn och lösenord skilda av ett kolon. Denna sträng föregås av strängen Basic och placeras tillsammans i Authorization headern i HTTP-anropet. Exempel: 5

11 Användarnamn: Lösenord: Sträng: Base64-kodad sträng: Authorization: username password username:password dxnlcm5hbwu6cgfzc3dvcmq= Basic dxnlcm5hbwu6cgfzc3dvcmq= Då användarnamn och lösenord skickas i klartext är basic authentication inte ansett som en säker metod för autentisering Digest access authentication Digest authentication skapades som ett alternativ för att undvika de största säkerhetsriskerna med basic authentication, det genom att lösenordet körs genom en hashfunktion innan det skickas. Inledningsvis när klienten gör ett anrop till en sida som kräver autentisering kommer servern att svara med uppgifter som klienten sedan använder, tillsammans med användarnamn och lösenord, för att skapa en hashsumma. Denna hashsumma skickas sedan för autentisering vilket gör att användarnamn och lösenord inte kommer att exponeras i klartext. 3 Metod I detta avsnitt beskrivs först den utrustning och programvara som använts vid arbetet och en översikt över det existerande systemet CheckUp Life och hur mitt arbete förhåller sig till detta. Sedan följer en beskrivning av hur app och webbtjänst har planerats och utvecklats samt beslut som tagits i samband med detta baserat på informationen i teoriavsnittet. Slutligen behandlas aspekter om säkerhet i kommunikationen mellan app och webbtjänst, hur det implementerats och resonemang kring detta. 3.1 Utrustning och utvecklingsmiljö Jag tilldelades en laptop med Windows 7 installerat som användes genom hela arbetet. För utvecklingen av appen så användes Eclipse med Android Development Tools som plugin för att öka produktiviteten i form av att många av verktygen i Android SDK integreras i Eclipse. För utvecklingen av webbtjänsten så användes Microsoft Visual Studio. Vid testning av webbtjänsten hade jag stor hjälp av programmet Fiddler för att generera och ta emot HTTP-anrop. 3.2 Systemöversikt CheckUp Life bestod, innan mitt arbetes början, av en databas, tjänstefunktioner samt en webbapplikation (Figur 1). Databasen innehåller information om användarna, dels deras mätdata men även användarnamn, lösenord och vilka rättigheter de har i systemet. 6

12 Tjänstefunktionerna används huvudsakligen för att hämta och spara information i databasen samt att verifiera användare vid inloggning. Webbtjänsten kommer att använda sig av funktioner i CheckUp Life Service på ungefär samma sätt som webbapplikationen gör för att mobilanvändare ska kunna använda tjänsten på bästa sätt. Figur 1: Systemöversikt 3.3 Utveckling av app Arbetet påbörjades med att planera appens grafiska vyer, beskrivningen av exjobbet anger att appens utseende ska, om möjligt, efterlikna webbapplikationens utseende för att använd-are ska känna igen sig. Enklare skisser (Figur 2) skapades över vad som vid det tillfället ansågs vara ett bra användargränsnitt och sedan implementerades detta för utvärdering. För att skapa enhetlighet för vyerna så skapades ett gemensamt titelfält med texten Checkup Life och en bakgrund som varje vy använder sig av. Titelfältet ger även möjlighet att ange en titel för den aktuella vyn. 7

13 Figur 2: Skiss för användargränssnitt Inloggning Startvyn (Figur 3) som möter användaren ger möjlighet att ange användarnamn och lösenord och logga in med dessa uppgifter. Om användaren väljer att försöka logga in kommer uppgifter att skickas till servern och vid ett godkännande sparas uppgifterna i minnet och kvarstår där tills appen avslutas. Vid en verifierad inloggning mottagen från servern så byts denna vy ut mot diagramvyn. 8

14 Figur 3: Inloggning Diagram Denna vy ska visa ett diagram (Figur 4) som visualiserar användarens mätdata på ett tydligt sätt. Det diagram som används i webbapplikationen är ett radardiagram men det var inledningsvis oklart ifall ett diagram av den typen skulle rymmas på en smartphone och samtidigt ge en klar och tydlig bild av diagram och tillhörande text. 9

15 Figur 4: Diagram som visar mätdata Efter att ha provat kopiera diagrambilden från webbapplikationen och visa den i en telefon så stod det klart att det skulle gå utmärkt att använda denna diagramtyp. I annat fall kunde ett stapeldiagram varit aktuellt. För att skapa diagrammet så fanns det ett flertal alternativ: Servern kan skapa ett diagram utifrån användarens mätdata och returnera resultat i form av en bild, webbapplikationen använder denna lösning. 10

16 Mätdatat kan skickas till Google via tjänsten Google Charts[10] som i sin tur returnerar en bild på diagrammet. Appen kan skapa diagrammet själv utifrån mätdatat. Första alternativet skulle skapa en onödig arbetsbelastning på servern vid bildskapandet samt att onödiga mängder data skulle skickas vilket jag gärna såg till att undvika då telefonernas hastighet vid dataöverföring kan vara dålig. Alternativ två skulle undvika serverbelastningen men det skulle istället blanda in en tredje part som man skulle behöva förlita sig på vilket kan skapa problem vid uppdateringar från deras sida, nedläggning av tjänsten och annat. Det sista alternativet framstod som det bästa då belastningen läggs på klienten, dataöverföringen blir låg och all information hålls inom server och klient. För att skapa diagrammet sökte jag efter ett diagrambibliotek med stöd för radardiagram som samtidigt skulle ha den typ av licens att appen skulle kunna publiceras utan krav från bibliotekets skapare men det gav ingen framgång. Det enda alternativet var då att själv implementera skapandet av diagrammet, vilket lyckligtvis inte krävde så mycket arbete som befarat och samtidigt gav fullständig kontroll och ett fullständigt dynamiskt diagram baserat på mängden mätdata som kommer in Kalender Kalendern (Figur 5) visar en kalendermånad där man genom att peka på ett datum kommer in i en mer detaljerad vy som kallas träningsdagbok där information om dagens aktiviteter kan föras. Här skiljer sig den slutliga vyn från det som hade planerats i förhand då de två rullistorna med år och månad har ersatts av två kreationer där det endast går att bläddra ett år eller en månad åt gången. Anledningen till detta är att jag anser att rullistor endast har sin plats där det inte är intuitivt vad som kommer före och efter det aktuella valet. Två rullistor gav heller inte, enligt mig, en särskilt estetiskt tilltalande lösning. Vid varje byte av år eller månad anropas servern för att returnera vilka dagar på denna månad som användaren har angivit information för. För att markera dessa i kalendern så syns vita hjärtan angränsande till de aktuella datumen. 11

17 Figur 5: Kalender Träningsdagbok Träningsdagboken (Figur 6) ger en insyn i en specifik dags aktiviteter och initialt hämtas dessa från servern. Vyn ger möjlighet till att lägga till aktiviter av olika slag och också radera befintliga. Denna vy var tvungen att göras scrollbar då det händer att inmatningsfältet och sparaknappen förflyttar sig för långt ner om antalet aktiviter blir för många och därmed upptar för stor plats. 12

18 Figur 6: Träningsdagbok Detaljer Detaljer (Figur 7) visar en lista över de mätmetoder som visades i diagrammet och även det senaste mätvärdet för respektive metod. Genom att peka på en av metoderna så fås ytterligare information om denna. 13

19 Figur 7: Detaljer Metoddetaljer Metoddetaljer (Figur 8) ger en vy av ett diagram och en lista som var för sig visar upp till ett års historik av mätvärden. Linjediagrammet skapades från grunden av samma orsaker som radardigrammet 14

20 3.4 Utveckling av webbtjänst Figur 8: Metoddetaljer Att skapa webbtjänsten blev initialt en betydligt svårare uppgift för mig än skapandet av appen. Jag hade mycket liten erfarenhet av webbtjänster sedan tidigare och hade ingen erfarenhet av C#.NET. Utöver detta så skulle det bli nödvändigt att läsa och förstå den existerande koden i CheckUp Life. Koden grundande sig på WCF och jag utgick från att det även skulle vara fallet för min webbtjänst. 15

21 3.4.1 Kommunikation Vad gäller frågan om SOAP eller REST skulle användas så var jag i kontakt med Elias Nyström[11] på Explizit som året innan hade gjort ett examensarbete där en Android-app kommunicerade mot en webbtjänst med hjälp av SOAP. Hans uppfattning var att stödet för SOAP inte var särskilt bra inom Android och detta hade orsakat honom problem. Jag hade tidigare under året, i kursen D0016E Projekt i datateknik, varit involverad i skapandet av en REST-baserad webbtjänst med tillhörande Android-app och hade bara goda erfarenheter av det. Fördelar med REST ansåg jag vara att det använder sig av HTML-anrop vilket är väldigt enkelt att åstadkomma via Android. Samtidigt är man fri att välja meddelandeformat medan SOAP låser sig till XML samt att data måste skickas i ett SOAP Envelope vilket leder till ökad datamängd. Mina tidigare goda erfarenheter av REST och Elias dåliga erfarenheter av SOAP gjorde att jag valde att gå vidare med REST med JSON som meddelandeformat vilket ger liten overhead för meddelanden WCF För att kunna komma åt alla de resurser som skulle vara nödvändiga definierades följande slutpunkter: Endpoint Metod Beskrivning login GET Verifierar att användarnamn och lösenord är korrekta. chart GET Hämtar uppgifter om användarens mätdata. traininglog GET Hämtar uppgifter om vilka datum som innehåller detaljerade aktiviteter. traininglog/details/{date} GET Hämtar detaljerade uppgifter om aktiviteterna för det specifika datumet. traininglog/details POST Skapar en ny aktivitet. traininglog/details/{id} DELETE Tar bort aktiviteten med det aktuella id:t. 3.5 Säkerhet Konfidentialitet och integritet För att användare ska kunna känna sig trygga när de kommunicerar med webbtjänsten krävs det att det inte finns risk för att deras uppgifter kan läsas av obehöriga eller att den data som skickas och tas emot inte har förändrats av en tredje part mellan klient 16

22 och server. SSL valdes som en lösning på detta då det är ett välanvänt säkerhetsprotokoll som bidrar med konfidentialitet och integritet. Konfidentialiteten genom att kryptera all applikationslagerdata så det blir oläsbart för alla som inte har rätt nycklar för dekryptering. Integritet genom att autentisera varje meddelande så att det inte kan förändras på vägen från sändare till mottagare. Implementationen av SSL var väldigt lättsam då WCF har fullt stöd för detta och det gick att åstadkomma med endast ett fåtal rader i config-filen. För att kunna använda sig av den skyddade tjänsten så var ett certifikat tvunget att skapas. Då ett riktigt certifikat innebär en kostnad till de som utfärdar det så var det bara aktuellt med ett självsignerat certifikat som används så länge som webbtjänsten körs lokalt. Problem uppstod här då klienten inte accepterade självsignerande certifikat utan det skulle vara nödvändigt att göra en lösning så att klienten accepterade samtliga certifikat oavsett härkomst. Då detta inte heller fungerade så testade jag att kommunicera med webbtjänsten via programmet Fiddler som jag generade anrop via och verifierade att webbtjänsten fungerande tillsammans med SSL. Vad som bör tas i beaktande är att om man väljer att klienten ska acceptera samtliga certifikat så försvinner en del av syftet med SSL, nämligen att säkerställa att servern som klienten kommunicerar med är den som den utger sig för att vara. Vid fall av felaktiga, utgångna eller självsignerande certifikat så har användaren, vid användandet av exemplevis webbläsare, möjlighet att manuellt acceptera eller neka certifikatet. Detta är en möjlighet som, mig veterligen, inte finns hos Android-appar och genom att acceptera alla certifikat kommer man vid olyckliga fall att kommunicera med någon annan än den tänkta servern utan vetskap om detta Autentisering Vid autentisering utan någon form av kryptering så framstår digest authentication som överlägsen basic authentication. Detta baserat på att användarnamn och lösenord inte skrivs ut i klartext vilket gör att någon som avlyssnar kommunikationen inte genast kan avläsa vilket användarnamn och lösenord som används. Digest authentication har även möjlighet att använda sig av en aktuell tidsstämpel inbakad i det hashvärde som skickas vilket skapar ett skydd mot återuppspelningsattacker genom att göra att ett svar endast är giltigt under en viss tid. Då jag bestämde mig för att använda SSL så gör detta att de fördelar som digest authentication har går förlorade. Säkerheten hos SSL överstiger vida den som finns hos digest authentication och genom krypteringen så kommer basic authentications användarnamn och lösenord inte längre att vara i klartext. En fördel som fortfarande kvarstår är att då användare i regel väljer betydligt kortare och mindre slumpartade lösenord än ett hashvärde så gör det digest authentication mindre sårbart för brute-force-attacker. Vad gäller många system, bland annat CheckUp Life, så låses en användare efter ett antal misslyckade inloggningar vilket gör att detta inte har någon betydelse. Med tanke på att basic authentication är väldigt enkelt att implementera och att det tillsammans med SSL ger ett, enligt mitt tyckte, fullgott skydd så beslutade jag mig för att välja det. 17

23 4 Resultat I detta examensarbete har en webbtjänst och en Android-app skapats till systemet Check- Up Life. De specifika problemen som formulerades har lösts på följande sätt: Bestämma protokoll/arkitektur för webbtjänsten REST valdes med anledning av att det är en arkitektur som ger stor valfrihet vad gäller sätt att kommunicera. Det lämpar sig bra för Android-appar då HTML-anrop sköts på ett enkelt sätt och meddelanden kan hållas så små som möjliga vilket är positivt då jag anser att mängden data som överförs bör hållas liten på smartphones. Ta fram en metod för autentisering Basic authentication används då det är enkelt att implementera och snabbt för klient och server att hantera. Tillsammans med SSL ger det dessutom ett fullgott skydd. Fastställa hög säkerhet för användarna SSL togs i bruk för att kryptera all den data som överförs till och från databasen. Detta gör att den inte är möjlig att avlyssna. Meddelandena autentiseras så att användarna kan vara säkra på att de inte har manipulerats av tredje part. Dessutom autentiseras klient och server för varandra så det hela tiden är klart att kommunikationen inte sker med någon okänd. Fastställa vad som behövs i webbtjänsten för att hämta och spara information i databasen Endpoints skapades för att ge tillgång till en representation av de resurser i databasen som skulle komma att hämtas och förändras. Funktioner länkades till dessa endpoints som sedan använde funktioner i CheckUp Life Service för att hämta, skapa eller modifiera resurserna i databasen. Verifiera att det givna gränssnittet kan implementeras i appen Samtliga av de funktioner från webbapplikation som skulle stödjas i appen gick att implementera på ett sätt som var närmast identiskt. Det som var tveksamt på förhand var framförallt radardiagrammet men det visade sig gå att implementera på ett dynamiskt sätt som gav en utmärkt visualisering av datat. 4.1 Genomgång av funktionalitet För att beskriva hur appen används följer här ett scenario som går igenom appens alla funktioner och vyer. Daniel tränar på ett gym som använder sig av CheckUp för att mäta de förändringar som sker allt eftersom hans träning fortskrider. Han använder sig av appen för att kunna följa sina, förhoppningsvis förbättrade, värden. Daniel startar appen och anger inledningsvis (Figur 3) sitt användarnamn och lösenord för att sedan trycka Logga in. Väl inloggad så syns ett diagram (Figur 4) som visar all mätdata som tagits. Daniel kan genom att se på de vita punkterna, som representerar mätdatat, märka om något av värdena hamnar 18

24 i den rödaktiga farozonen. Han trycker sedan Detaljer och ser en lista (Figur 7) med samtliga mätmetoder. Då Daniels största mening med träningen är att gå ner i vikt så bläddrar han till raden för vikt och trycker på denna. Ett diagram (Figur 8) över det senaste årets viktmätningar och en tabell över dessa visas och ger en bra överblick över hur Daniel lyckas med sitt mål. Han återgår till vyn med radardiagrammet och trycker denna gång Träningsdagbok. En kalender (Figur 5) med den aktuella månaden uppenbarar sig och hjärtan bredvid dagarna visar om det finns en aktivitet registrerad denna dag. Daniel trycker på en av dagarna och kommer då till ett formulär (Figur 6) för att registrera träningsaktiviteter han utfört. Han väljer Löpning i rullistan och anger sträckan 10 km och tiden 45 minuter, slutligen trycker han på Spara. Daniel är nu klar och stänger ner appen. 5 Diskussion Webbtjänster som använder REST för kommunikation med smartphones har, enligt min uppfattning, nått stor popularitet bland utvecklare jämfört med SOAP. Detta på grund av ett lättviktigt system som ger stor frihet för utvecklaren. Jag känner att det var ett mycket bra beslut att designa webbtjänsten på det sättet då implementation gick lätt och resultatet blev väl fungerande med bra prestanda. Webbtjänsten anser jag dessutom vara mycket lätt att utveckla vidare även för personer som inte har någon större kunskap om ämnet. Tveksamheter som uppstod under arbetet är att gärna hade sett något alternativ till WCF. Jag har inte arbetat med webbtjänster i någon stor utsträckning men beteendekonfigurationen i WCF upplevde jag som väl omfattande för min relativt okomplicerade tjänst. Detta gjorde att vad som var en enkel konfiguration krävde mycket läsande i dokumentation och testning innan det fungerade tillfredsställande. Det har varit intressant att ge sig in på okända områden då WCF samt C#.NET inte var något jag arbetat med tidigare. Detta skapade viss frustration initialt men känns nu som en berikande erfarenhet. Vad gäller Android-appen så var jag bekant med Androidutveckling sedan innan och det underlättade utvecklingen väldigt mycket främst med avseende på tidsaspekten. Användargränssnittet anser jag skulle kunna bli bättre på men min gebit är trots allt främst programmering. Då alla de uppsatta kraven uppfyllts så jag jag avslutningsvis inte vara annat än nöjd med vad som producerats under dessa 10 veckor som examensarbetet bestått av. 5.1 Fortsatt arbete För att arbetet ska uppnå en högre standard så finns det ett antal förbättringar som skulle kunna utföras: Möjlighet att spara användaruppgifter För tillfället så måste en användare ange sina uppgifter varje gång applikationen körs 19

25 utan möjligt att spara dessa för automatisk inloggning. Detta kan uppfattas som onödigt tidskrävande och skulle enkelt kunna ändras genom att spara uppgifterna i appens lagringsutrymme. Säkerheten för dessa uppgifter kan behöva ses över så att inte obehöriga kan komma åt dem. Stöd för olika skärmstorlekar Appen har för närvarande bara testats på en skärm av mediumstorlek och korrigeringar måste med all sannolikhet tas för att det ska se bra ut på smartphones med andra skärmstorlekar. Detta är till största delen en fråga om att ändra storleken på de bilder som används i appen. Snabbare generering av diagrammet Det är något för tidskrävande att hämta mätdatan för diagrammet i dagsläget. Flaskhalsen har identifierats hos webbtjänsten när den hämtar och filtrerar ut alla information från databasen. Detta skulle behöva optimeras så att det programflödet blir något smidigare. Stresstest av webbtjänst Det är ännu oklart hur väl webbtjänsten skulle klara en större mängd användare. Som det är för närvarande har jag enbart testat lokalt på min dator så hur resultatet ser ut i produktionsmiljö är jag ovetandes om. Troligtvis skulle tiden för diagramgenereringen bli ännu värre så det är något som absolut måste korrigeras. 20

26 Referenser [1] Gartner, Gartner Says Worldwide Smartphone Sales Soared in Fourth Quarter of 2011 With 47 Percent Growth, (Hämtad 22 maj 2012). [2] Microsoft, What Is Windows Communication Foundation, microsoft.com/en-us/library/ms aspx, (Hämtad 11 maj 2012). [3] Microsoft, Fundamental Windows Communication Foundation Concepts, msdn.microsoft.com/en-us/library/ms731079, (Hämtad 11 maj 2012). [4] W3C, SOAP Version 1.2 Part 1: Messaging Framework (Second Edition), April 2007 (Hämtad 22 maj 2012). [5] Roy T. Fielding, Architectural Styles and the Design of Network-based Software Architectures, Diss. University of California, Irvine, [6] W3C, Extensible Markup Language (XML) 1.0 (Fifth Edition), TR/REC-xml/, November (Hämtad 17 maj 2012). [7] D. Crockford, The application/json Media Type for JavaScript Object Notation (JSON), IETF RFC 4627, Juli [8] J. Franks et al, HTTP Authentication: Basic and Digest Access Authentication, IETF RFC 2617, Juni [9] A. Freier, P. Karlton, P. Kocher, The Secure Sockets Layer (SSL) Protocol Version 3.0, IETF RFC 6101, augusti [10] Google Charts, (Hämtad 22 maj 2012). [11] E. Nyström, Systemutvecklare, Explizit AB i Skellefteå. 21

Vitec Connect. Teknisk beskrivning REVIDERAT SENAST: VITEC. VITEC Affärsområde Mäklare

Vitec Connect. Teknisk beskrivning REVIDERAT SENAST: VITEC. VITEC Affärsområde Mäklare VITEC Vitec Connect Teknisk beskrivning REVIDERAT SENAST: 2016-02-10 VITEC Affärsområde Mäklare www.vitec.se/maklare info.maklare@vitec.se GÖTEBORG: REDEGATAN 1 B, 426 77 V. FRÖLUNDA VÄXEL: 031-360 61

Läs mer

Instruktion för integration mot CAS

Instruktion för integration mot CAS IT-enheten Instruktion för integration mot CAS Per Hörnblad Instruktion 2010-10-29 Sid 1 (7) Instruktion för integration mot CAS Projektnamn Instruktioner för Integration mot CAS Fastställt av Per Hörnblad

Läs mer

Webbtjänster med API er

Webbtjänster med API er Webbtjänster med API er Mål med lektionen! Veta kursmålen. Lite grunder om WCF Vem är jag? Mitt namn är Björn Jönsson och jobbar på Tahoe Solutions, ni når mig via mail: bjorn.jonsson@tahoesolutions.se

Läs mer

Det här dokumentet är till för att ge en översikt över ASP.NET MVC samt hur WCF Services används från.net applikationer.

Det här dokumentet är till för att ge en översikt över ASP.NET MVC samt hur WCF Services används från.net applikationer. Informationsinfrastruktur 7.5 hp Mattias Nordlindh Inledning Det här dokumentet är till för att ge en översikt över ASP.NET MVC samt hur WCF Services används från.net applikationer. Dokumentet består av

Läs mer

Filleveranser till VINN och KRITA

Filleveranser till VINN och KRITA Datum Sida 2017-04-25 1 (10) Mottagare: Uppgiftslämnare till VINN och KRITA Filleveranser till VINN och KRITA Sammanfattning I detta dokument beskrivs översiktligt Vinn/Kritas lösning för filleveranser

Läs mer

Swedbank Mobile Loadtesting. LoadRunner 11.04 Mobile App protocol

Swedbank Mobile Loadtesting. LoadRunner 11.04 Mobile App protocol Swedbank Mobile Loadtesting LoadRunner 11.04 Mobile App protocol Bakgrund Mission: Prestandatesta mobilt backend Typ: RESTful tjänst Underlag: Dokumenterat URI och API (Uniform Resource Identifier, Application

Läs mer

EIT060 Datasäkerhet - Projekt 2. Jacob Ferm, dt08jf0 Johan Paulsson, dt08jp8 Erik Söderqvist, dt08es8 Magnus Johansson, dt08mj9 26 februari 2011

EIT060 Datasäkerhet - Projekt 2. Jacob Ferm, dt08jf0 Johan Paulsson, dt08jp8 Erik Söderqvist, dt08es8 Magnus Johansson, dt08mj9 26 februari 2011 EIT060 Datasäkerhet - Projekt 2 Jacob Ferm, dt08jf0 Johan Paulsson, dt08jp8 Erik Söderqvist, dt08es8 Magnus Johansson, dt08mj9 26 februari 2011 Innehåll 1 Introduktion 1 2 SSL 1 2.1 Anslutningsprocessen.........................

Läs mer

2014-2015 Alla rättigheter till materialet reserverade Easec

2014-2015 Alla rättigheter till materialet reserverade Easec 1 2 Innehåll Introduktion... 3 Azure Client SDK Libraries... 4 Översikt: Azure Client Libraries... 5 Azure SDK... 6 Azure SDK (forts.)... 7 Azure SDK (forts.)... 8 Cloud Services... 10 Cloud Services...

Läs mer

Webbteknik II. Föreläsning 4. Watching the river flow. John Häggerud, 2011

Webbteknik II. Föreläsning 4. Watching the river flow. John Häggerud, 2011 Webbteknik II Föreläsning 4 Watching the river flow Web Service XML-RPC, SOAP, WSDL, UDDI HTTP Request, Response, Headers, Cache, Persistant Connection REST Hype or the golden way? Web Service / Webbtjänst

Läs mer

Webbserverprogrammering

Webbserverprogrammering Webbserverprogrammering WES Webbserverprogrammering Ämnet webbserverprogrammering behandlar funktionalitet för webblösningar och samspelet mellan beställare, användare, formgivare och utvecklare. Ämnets

Läs mer

Innehåll. Dokumentet gäller från och med version 2014.3 1

Innehåll. Dokumentet gäller från och med version 2014.3 1 Innehåll Introduktion... 2 Före installation... 2 Beroenden... 2 Syftet med programmet... 2 Installation av IIS... 2 Windows Server 2008... 2 Windows Server 2012... 6 Installation av webbapplikationen

Läs mer

Webbtjänster med API er

Webbtjänster med API er Webbtjänster med API er Mål med lektionen! Titta på hur service:ar fungerar och hur vi programmerar dem. Vad lektionen omfattar WCF Service WCF Services Vad är en WCF service? En WCF Service är ett program

Läs mer

XML-produkter. -Registret över verkliga huvudmän (RVH) Teknisk handledning för webbtjänst mot RVH (Web Services) Datum: Version: 1.

XML-produkter. -Registret över verkliga huvudmän (RVH) Teknisk handledning för webbtjänst mot RVH (Web Services) Datum: Version: 1. XML-produkter -Registret över verkliga huvudmän (RVH) Teknisk handledning för webbtjänst mot RVH (Web Services) Datum: 2018-09-18 Version: 1.0 Innehållsförteckning 1. Inledning... 3 1.1. Syfte 3 1.2. Målgrupp

Läs mer

Webbteknik. Innehåll. Historisk återblick Teknisk beskrivning Märkspråk Standardisering Trender. En kort introduktion

Webbteknik. Innehåll. Historisk återblick Teknisk beskrivning Märkspråk Standardisering Trender. En kort introduktion Webbteknik En kort introduktion Innehåll Historisk återblick Teknisk beskrivning Märkspråk Standardisering Trender 1 Historisk återblick 89 CERN Tim Berners Lee Ett plattformsoberoende sätt att sprida

Läs mer

Programutvecklingsprojekt Projektgrupp Elvin. Detailed Design Document

Programutvecklingsprojekt Projektgrupp Elvin. Detailed Design Document Programutvecklingsprojekt 2003-04-24 Projektgrupp Elvin Detailed Design Document Björn Engdahl Fredrik Dahlström Mats Eriksson Staffan Friberg Thomas Glod Tom Eriksson engdahl@kth.se fd@kth.se d94-mae@nada.kth.se

Läs mer

Storegate Pro Backup. Innehåll

Storegate Pro Backup. Innehåll Storegate Pro Backup Välkommen! I denna manual kan du bland annat läsa om funktioner och hur du ska konfigurerar programmet. Läs gärna vårt exempel om versionshantering och lagringsmängd innan du konfigurerar

Läs mer

Modul 3 Föreläsningsinnehåll

Modul 3 Föreläsningsinnehåll 2015-02-03 2015 Jacob Lindehoff, Linnéuniversitetet 1 Modul 3 Föreläsningsinnehåll Vad är ett certifikat? Användningsområden Microsoft Certificate Services Installation Laboration Ingår i Klustringslabben

Läs mer

Telia Connect för Windows

Telia Connect för Windows Telia Connect för Windows Version 3.0 Användarguide Updaterad: 3 juli 2007 Innehåll Ansluta till Internet...3 Information som presenteras av Telia Connect...4 Konfiguration av Telia Connect...7 Fliken

Läs mer

Webbteknik II. Föreläsning 5. Restless farewell. John Häggerud, 2011

Webbteknik II. Föreläsning 5. Restless farewell. John Häggerud, 2011 Webbteknik II Föreläsning 5 Restless farewell HTTP Request HTTP verbs (methods): GET, POST, HEAD, DELETE, PUT, OPTIONS, TRACE, CONNECT http://www.w3.org/protocols/rfc2616/rfc2616-sec9.html variable=value&variable2=value2

Läs mer

Systemutvecklare SU14, Malmö

Systemutvecklare SU14, Malmö Systemutvecklare SU14, Malmö Tentamen, Tenta Utveckling med ramverket.net(35 YH-poäng) Plats: Plushögskolan Malmö Tid: 2 februari 2015, kl. 9.00-12.00 Tillåtna hjälpmedel: Papper, penna, suddgummi. Ej

Läs mer

Regelverk. Infrastrukturen för vidareförmedling av grundläggande uppgifter om företag. Bilaga A. Tekniska ramverk. Version: 1.0

Regelverk. Infrastrukturen för vidareförmedling av grundläggande uppgifter om företag. Bilaga A. Tekniska ramverk. Version: 1.0 Regelverk Infrastrukturen för vidareförmedling av grundläggande uppgifter om företag Bilaga A Tekniska ramverk Version: 1.0 Innehållsförteckning 1 Bakgrund och syfte... 1 1.1 Definitioner 1 2 Inledning...

Läs mer

Daniel Akenine, Teknikchef, Microsoft Sverige

Daniel Akenine, Teknikchef, Microsoft Sverige Daniel Akenine, Teknikchef, Microsoft Sverige Quincy Invånare: 5,300 Arbete: 52% jordbruk 18 % byggsektor 18 % offentlig sektor Språk: Spanska 57% Företaget Inköp Företaget Inköp Installering Lång

Läs mer

Utkast/Version (8) Användarhandledning - inrapportering maskin-till-maskin

Utkast/Version (8) Användarhandledning - inrapportering maskin-till-maskin Utkast/Version Sida 2.0 1 (8) 2017-05-12 Användarhandledning - inrapportering maskin-till-maskin 2 (8) Innehåll 1. Rapportering till VINN eller KRITA... 3 1.1 Allmänt... 3 1.2 Terminologi... 3 2. Hämta

Läs mer

Skapa din egen MediaWiki

Skapa din egen MediaWiki Skapa din egen MediaWiki Inledning och syfte I detta moment skall du installera en egen wiki (Mediawiki), som du skall konfigurera. Du har möjligheten att använda en egen wiki på din dator eller webbhotell

Läs mer

WEBBSERVERPROGRAMMERING

WEBBSERVERPROGRAMMERING WEBBSERVERPROGRAMMERING Ämnet webbserverprogrammering behandlar funktionalitet för webblösningar och samspelet mellan beställare, användare, formgivare och utvecklare. Ämnets syfte Undervisningen i ämnet

Läs mer

Apotekens Service. federationsmodell

Apotekens Service. federationsmodell Apotekens Service Federationsmodell Detta dokument beskriver hur Apotekens Service samverkar inom identitetsfederationer Datum: 2011-12-12 Version: Författare: Stefan Larsson Senast ändrad: Dokumentnamn:

Läs mer

Installationsguide fo r CRM-certifikat

Installationsguide fo r CRM-certifikat Installationsguide fo r CRM-certifikat För att säkerställa en säker inloggning till CRM Finance webb så behöver alla kunder installera ett kund-unikt klientcertifikat innan man kan försöka logga in i systemet.

Läs mer

Datatal Flexi Presentity

Datatal Flexi Presentity Datatal Flexi Presentity En snabbguide för Presentity Innehållsförteckning 1. Login 2 2. Hänvisa 3 2.1 Att sätta hänvisningar 3 2.2 Snabbknappar 4 2.3 Windows gadget 5 3. Samtal 5 4. Status 6 4.1 Exempel

Läs mer

Innehållsförteckning:

Innehållsförteckning: Dokumenttitel Datum Godkänd av Sid SIT24 Manual E-post 2007-03-09 Sign 1(14) Utgivare/Handläggare Dokumentbeteckning Version Info Klass Björn Carlsson SIT24 mailmanual.doc 1.0.2 Öppen SIT24 Manual E-Post

Läs mer

Version Namn Datum Beskrivning 1.0 Förutsättningar Vitec Ekonomi 1.1 Marie Justering för krav på Windows Server

Version Namn Datum Beskrivning 1.0 Förutsättningar Vitec Ekonomi 1.1 Marie Justering för krav på Windows Server Version Namn Datum Beskrivning 1.0 Förutsättningar Vitec Ekonomi 1.1 Marie 2017-03-09 Justering för krav på Windows Server 2012 1.2 Micke 2017-04-07 Vitec Ekonomi från x.60 kräver IIS 8 och websocket.

Läs mer

Webbtjänster med API er

Webbtjänster med API er Webbtjänster med API er Mål med lektionen! En lite djupare inblick i RESTfulla tjänster Vad lektionen omfattar RESTful Services Överblick SOAP kan vara lite overkill för vissa specifika web service scenarion.

Läs mer

Compose Connect. Hosted Exchange

Compose Connect. Hosted Exchange Sida 1 av 15 Compose Connect Hosted Exchange Presentation av lösningen: Compose Hosted Exchange Följande möjligheter finns för hantering av e-post 1. Lokalinstallerad Outlook-klient För att kunna använda

Läs mer

Micro Focus Vibe Snabbstart för mobil

Micro Focus Vibe Snabbstart för mobil Micro Focus Vibe Snabbstart för mobil September 2018 Komma igång OBS: Mobil tillgång till en Micro Focus Vibe-webbplats kan inaktiveras av din Vibe-administratör. Om du inte kan använda Vibe via mobilgränssnittet

Läs mer

EIT060 Datasäkerhet - Projekt 2. Jacob Ferm, dt08jf0 Johan Paulsson, dt08jp8 Erik Söderqvist, dt08es8 Magnus Johansson, dt08mj9 26 februari 2011

EIT060 Datasäkerhet - Projekt 2. Jacob Ferm, dt08jf0 Johan Paulsson, dt08jp8 Erik Söderqvist, dt08es8 Magnus Johansson, dt08mj9 26 februari 2011 EIT060 Datasäkerhet - Projekt 2 Jacob Ferm, dt08jf0 Johan Paulsson, dt08jp8 Erik Söderqvist, dt08es8 Magnus Johansson, dt08mj9 26 februari 2011 Innehåll 1 Introduktion 1 2 SSL 1 2.1 Anslutningsprocessen.........................

Läs mer

Systemkrav och tekniska förutsättningar

Systemkrav och tekniska förutsättningar Systemkrav och tekniska förutsättningar Hogia Webbrapporter Det här dokumentet går igenom systemkrav, frågor och hanterar teknik och säkerhet kring Hogia Webbrapporter, vilket bl a innefattar allt ifrån

Läs mer

PHP - Fortsättning. PHP och MySQL

PHP - Fortsättning. PHP och MySQL PHP - Fortsättning Copyright 2016 Mahmud Al Hakim mahmud@dynamicos.se www.webacademy.se PHP och MySQL Skapa en databasbaserad telefonkatalog Steg 1 Skapa en MySQL databas. Steg 2 Skapa en tabell i denna

Läs mer

Extern åtkomst Manual för leverantör

Extern åtkomst Manual för leverantör Extern åtkomst Manual för leverantör 1. Webbresurserna i portalen körs i klientlöst läge och kräver ingen klient för att starta. Däremot krävs det att Citrix Receiver finns installerat om man ska köra

Läs mer

Decentraliserad administration av gästkonton vid Karlstads universitet

Decentraliserad administration av gästkonton vid Karlstads universitet Datavetenskap Opponent(er): Markus Fors Christian Grahn Respondent(er): Christian Ekström Per Rydberg Decentraliserad administration av gästkonton vid Karlstads universitet Oppositionsrapport, C/D-nivå

Läs mer

Använda Google Apps på din Android-telefon

Använda Google Apps på din Android-telefon Använda Google Apps på din Android-telefon Om du vill använda e-post, kontakter och kalender för Google Apps på din Android-enhet ska du och dina användare göra följande: 1. Öppna skärmen Konton och synkroniseringsinställningar

Läs mer

dit06omr@cs.umu.se 12 juni 2009 Projektplan Webb-baserat bokningssystem för flyg Kurs: Applikationsutveckling för internet, TFE

dit06omr@cs.umu.se 12 juni 2009 Projektplan Webb-baserat bokningssystem för flyg Kurs: Applikationsutveckling för internet, TFE Projektplan Webb-baserat bokningssystem för flyg Kurs: Applikationsutveckling för internet, TFE VT-09 Innehållsförteckning Inledning & problembeskrivning...1 Systembeskrivning...2 Affärsobjekt...2 Databasen...4

Läs mer

Webservice & ERP-Integration Rapport

Webservice & ERP-Integration Rapport Webservice & ERP-Integration Rapport Hardwood AB Mustafa Lazem 930916-9713 Jonas Ahrne 920325-0379 Hasan Nerjovaj 940130-7195 Stefan Liden 920628-0639 2014-05-18 Innehåll Bakgrund... 2 Syfte... 2 Projektbeskrivning...

Läs mer

Uppdragsbeskrivning. Paddel-appen Utmärkta kanotleder. Version 1.0 Mats Persson. Distributionslista. Namn Åtgärd Info.

Uppdragsbeskrivning. Paddel-appen Utmärkta kanotleder. Version 1.0 Mats Persson. Distributionslista. Namn Åtgärd Info. Paddel-appen Utmärkta kanotleder Version 1.0 Distributionslista Befattning Bolag/en het Säljare Sogeti Bengt Löwenhamn Konsultchef Sogeti Åsa Maspers Mentor/handledare Sogeti Student KaU Claes Barthelson

Läs mer

Regelverk. Infrastrukturen för vidareförmedling av grundläggande uppgifter om företag. Bilaga A. Tekniska ramverk. Version: 3.0

Regelverk. Infrastrukturen för vidareförmedling av grundläggande uppgifter om företag. Bilaga A. Tekniska ramverk. Version: 3.0 Regelverk Infrastrukturen för vidareförmedling av grundläggande uppgifter om företag Bilaga A Tekniska ramverk Version: 3.0 Innehållsförteckning 1 Bakgrund och syfte... 1 1.1 Definitioner 1 2 Inledning...

Läs mer

Snabbstart för Novell Vibe Mobile

Snabbstart för Novell Vibe Mobile Snabbstart för Novell Vibe Mobile Mars 2015 Komma igång Mobil tillgång till Novell Vibe-webbplatsen kan inaktiveras av din Vibe-administratör. Om du inte kan använda Vibemobilgränssnittet enligt beskrivningen

Läs mer

Instruktion för användande av Citrix MetaFrame

Instruktion för användande av Citrix MetaFrame Instruktion för användande av Citrix MetaFrame Öppna valfri browser, t ex Internet Explorer eller Firefox, och ange url en www.git.ltu.se. Detta medför att följande bild presenteras. OBS! Ny version av

Läs mer

Datum: 2011-02-10 Version: Författare: Christina Danielsson Senast ändrad:

Datum: 2011-02-10 Version: Författare: Christina Danielsson Senast ändrad: I N T E R N T Säkerhetskrav på extern part För enskild individs direktåtkomst till Datum: 2011-02-10 Version: Författare: Christina Danielsson Senast ändrad: Dokumentnamn: Säkerhetskrav på extern part

Läs mer

Metoder för verifiering av användare i ELMS 1.1

Metoder för verifiering av användare i ELMS 1.1 Metoder för verifiering av användare i ELMS 1.1 2012-12-21 Kivuto Solutions Inc. [KONFIDENTIELLT] INNEHÅLLSFÖRTECKNING ÖVERSIKT...1 VERIFIERINGSMETODER...2 IUV (Integrated User Verification)...2 Shibboleth

Läs mer

Vad är molnet?... 2. Vad är NAV i molnet?... 3. Vem passar NAV i molnet för?... 4. Fördelar med NAV i molnet... 5. Kom igång snabbt...

Vad är molnet?... 2. Vad är NAV i molnet?... 3. Vem passar NAV i molnet för?... 4. Fördelar med NAV i molnet... 5. Kom igång snabbt... Produktblad för NAV i molnet Innehåll Vad är molnet?... 2 Vad är NAV i molnet?... 3 Vem passar NAV i molnet för?... 4 Fördelar med NAV i molnet... 5 Kom igång snabbt... 5 Bli kostnadseffektiv... 5 Enkelt

Läs mer

Webbtjänster med API er

Webbtjänster med API er Webbtjänster med API er Repetera kunskaperna Mål med lektionen! Vad lektionen omfattar Repetition av kursen. Webbtjänster? En webbtjänst är en tjänst som erbjuds av en elektronisk anordning till en annan

Läs mer

Översikt. Installation av EasyPHP 1. Ladda ner från http://www.easyphp.org/ Jag använder Release 5.3.4.0 2. Installera EasyPHP.

Översikt. Installation av EasyPHP 1. Ladda ner från http://www.easyphp.org/ Jag använder Release 5.3.4.0 2. Installera EasyPHP. Laboration 1 Översikt 1. Att komma igång med laborationsmiljön a. installera Aptana Studio 3 b. Installera EasyPHP 2. Testa lite programmering a. Testa enkla uppgifter b. Testa automatiskt 3. Skapa inloggningsformulär

Läs mer

Microsoft Internet Information Services 7 / 7.5

Microsoft Internet Information Services 7 / 7.5 Microsoft Internet Information Services 7 / 7.5 Följande guide beskriver hur man administrerar certifikat på Microsoft IIS 7 & 7,5. För support och hjälp till användandet av denna guide kan du kontakta

Läs mer

Modul 6 Webbsäkerhet

Modul 6 Webbsäkerhet Modul 6 Webbsäkerhet Serverskript & Säkerhet Webbservrar & serverskript exponerar möjlighet för fjärranvändare att skicka data och köra kod vilket medför risker. Man ska aldrig lita på att alla vill göra

Läs mer

E12 "Evil is going on"

E12 Evil is going on E12 "Evil is going on" Föreläsning 12, HT2014 AJAX Kurs: 1dv403 Webbteknik I Johan Leitet E12 Evil is going on Dagens agenda AJAX XMLHttpRequest-objektet JSON Vad är AJAX? Asynchronous JavaScript and XML

Läs mer

Många företag och myndigheter sköter sina betalningar till Plusoch

Många företag och myndigheter sköter sina betalningar till Plusoch 70 80 60 ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 40 20 30 Manual 2 Installation Många företag och myndigheter sköter sina betalningar till Plusoch Bankgirot

Läs mer

Högskolan i Gävle. Introduktion till att skapa appar för Android VT Eat App! Jacob Gavin

Högskolan i Gävle. Introduktion till att skapa appar för Android VT Eat App! Jacob Gavin Högskolan i Gävle Introduktion till att skapa appar för Android VT 2016 Eat App! Jacob Gavin tfk16jgi@student.hig.se Inledning Syftet med Eat App är att få människor som inte tidigare mött varandra att

Läs mer

Integration med Vitec Express

Integration med Vitec Express i Softphone Integration med Vitec Express Med s molnväxellösning FrontOffice och Vitecs molnbaserade affärssystem Vitec Express kan mäklare jobba i Vitec och kommunicera med kunder på ett mycket enkelt

Läs mer

Services + REST och OAuth

Services + REST och OAuth Services + REST och OAuth Syftet med Services Skapa ett Drupal API för att exponera webb- API:er. Officiella versionen - Create a unified Drupal API for web services to be exposed in a variety of different

Läs mer

Stockholm Skolwebb. Information kring säkerhet och e-legitimation för Stockholm Skolwebb. skolwebb.stockholm.se

Stockholm Skolwebb. Information kring säkerhet och e-legitimation för Stockholm Skolwebb. skolwebb.stockholm.se S Stockholm Skolwebb Information kring säkerhet och e-legitimation för Stockholm Skolwebb Innehållsförteckning Säkerhet i Stockholm Skolwebb... 3 Roller i Stockholm Skolwebb... 3 Hur definieras rollerna

Läs mer

Grundläggande datavetenskap, 4p

Grundläggande datavetenskap, 4p Grundläggande datavetenskap, 4p Kapitel 4 Nätverk och Internet Utgående från boken Computer Science av: J. Glenn Brookshear 2004-11-23 IT och medier 1 Innehåll Nätverk Benämningar Topologier Sammankoppling

Läs mer

Platsbesök. Systemkrav

Platsbesök. Systemkrav Systemkrav Systemkrav 2016-15-19 2 (5) Systemkrav Dokumentet beskriver de krav som systemet ställer på maskinvara och programvara i de servrar och klientdatorer som ska användas för systemet. Nedan listade

Läs mer

Collector en Android-app för att samla saker. Kim Grönqvist (kg222dk) 2013-06-10 Slutrapport

Collector en Android-app för att samla saker. Kim Grönqvist (kg222dk) 2013-06-10 Slutrapport Collector en Android-app för att samla saker Kim Grönqvist (kg222dk) 2013-06-10 Slutrapport Abstrakt Jag har gjort en Android-app för att samla saker, Collector. Med den kan man upprätta att göra-listor

Läs mer

Systemkrav WinServ II Edition Release 2 (R2)

Systemkrav WinServ II Edition Release 2 (R2) Systemkrav WinServ II Edition Release 2 (R2) Observera: Alla rekommendationer är aktuella vid den tid då dokumentet publicerades och visar den senaste informationen för nödvändig mjukvara. Systemkrav för

Läs mer

Microsoft.NET Version Http Activation MapGuide Open source (installerad på en webbserver, tillgänglig utanför brandväggen) Web Deploy 3.

Microsoft.NET Version Http Activation MapGuide Open source (installerad på en webbserver, tillgänglig utanför brandväggen) Web Deploy 3. Systemkrav Systemkrav 2017-02-01 2 (5) Systemkrav Dokumentet beskriver de krav som systemet ställer på maskinvara och programvara i de servrar och klientdatorer som ska användas för systemet. Nedan listade

Läs mer

Telia Centrex IP Administratörswebb. Handbok

Telia Centrex IP Administratörswebb. Handbok Telia Centrex IP Administratörswebb Handbok Telia Centrex IP Administratörswebb Handbok 2 Handbok Telia Centrex IP Administratörswebb Du hittar alltid senaste versionen av denna handbok på https://ipac.telia.com

Läs mer

Flexi Exchange Connector. Copyright 1993-2013 Datatal AB. Med ensamrätt. Copyright 2013 Datatal AB. All rights reserved.

Flexi Exchange Connector. Copyright 1993-2013 Datatal AB. Med ensamrätt. Copyright 2013 Datatal AB. All rights reserved. Flexi Exchange Connector Copyright 1993-2013 Datatal AB. Med ensamrätt. Copyright 2013 Datatal AB. All rights reserved. 1 Översikt... 2 1.1 Vad gör Flexi Exchange Connector?... 2 1.2 Vilka serverkonfigurationer

Läs mer

Elisabet Stöök Konsult SAS Institute AB Copyright 2003, SAS Institute Inc. All rights reserved.

Elisabet Stöök Konsult SAS Institute AB Copyright 2003, SAS Institute Inc. All rights reserved. Administrera din SAS miljö med SAS Metadata Server och SAS Management Console. Elisabet Stöök Konsult SAS Institute AB Copyright 2003, SAS Institute Inc. All rights reserved. SAS Intelligence Value Chain

Läs mer

SLUTRAPPORT: TEXAS HOLDEM 4 FRIENDS

SLUTRAPPORT: TEXAS HOLDEM 4 FRIENDS SLUTRAPPORT: TEXAS HOLDEM 4 FRIENDS Individuellt Mjukvaruutvecklingsprojekt (Utvecklare av digitala tjänster) Den 1 juni 2011 ABSTRAKT Rapporten tar upp positiva och negativa erfarenheter som jag erhållit

Läs mer

Topologi. Utförande: I exemplet så kommer vi att utgå från att man gör laborationen i en Virtuell miljö (Virtualbox).

Topologi. Utförande: I exemplet så kommer vi att utgå från att man gör laborationen i en Virtuell miljö (Virtualbox). Nätverkssäkerhet Remote Access VPN med pfsense I denna laboration kommer vi att skapa en så kallad Remote Access VPN åtkomst (baserad på OpenVPN) så att klienter utifrån det oskyddade nätverket (Internet)

Läs mer

Tjänstebeskrivning Extern Åtkomst COSMIC LINK. Version 1.0

Tjänstebeskrivning Extern Åtkomst COSMIC LINK. Version 1.0 Tjänstebeskrivning Extern Åtkomst COSMIC LINK Version 1.0 Ändringshantering Ansvarig för dokumentet: Datum Ändring Ansvarig Version 2017-01-27 Prel. version för initial test Anders Carlberg 0.2 2017-02-14

Läs mer

Projektarbete 2: Interaktiv prototyp

Projektarbete 2: Interaktiv prototyp Projektarbete 2: Interaktiv prototyp Jonatan Hilmarch (Grupp 13) 880427-5595 hilmarch@skip.chalmers.se Kurs: Människa-Datorinteraktion TIG061 HT 2010 Projekt 1 - en tillbakablick Enligt projektets systemdefinition

Läs mer

Henrik Häggbom Examensarbete Nackademin Våren 2015

Henrik Häggbom Examensarbete Nackademin Våren 2015 AV Henrik Häggbom Examensarbete Nackademin Våren 2015 1 INLEDNING Som examensarbete på min utbildning på Nackademin Programutveckling.NET kommer jag skapa ett webbaserat system för statistik, tabeller

Läs mer

Laboration 2 RESTful webb-api

Laboration 2 RESTful webb-api Webbteknik II, 1DV449 Laboration 2 RESTful webb-api Author: John Häggerud & Johan Leitet Semester: HT 2011 Course code: 1DV449 Inledning I denna laboration är det tänkt att Du ska skriva ett eget webb-api

Läs mer

Uppdatera Easy Planning till SQL

Uppdatera Easy Planning till SQL Easy Planning SQL 8.x är vår senaste version av planeringsprogram. Vi rekommenderar alla kunder att uppdatera till den senaste versionen då många nya funktioner har tillkommit. Alla användare som har den

Läs mer

Installationsanvisningar

Installationsanvisningar Installationsanvisningar Hogia Webbrapporter INNEHÅLLSFÖRTECKNING Systemkrav version 2013.x 3 Installation av IIS för Windows Server 2008 5 Nyinstallation av Hogia Webbrapporter 8 Installation och inloggning

Läs mer

Att koppla FB till AD-inloggning

Att koppla FB till AD-inloggning Att koppla FB till AD-inloggning Helen Ekelöf 16. nov. 2017 (uppdaterad 22.maj 2018) SOKIGO Box 315 731 27 Köping +46 (0)8 23 56 00 info@sokigo.com http://www.sokigo.com Org.nr: 556550-6309 INNEHÅLLSFÖRTECKNING

Läs mer

iphone, ipad... 9 Anslut... 9 Anslutningsproblem... 9 Ta bort tidigare inloggningar... 9 Ta bort profil... 9

iphone, ipad... 9 Anslut... 9 Anslutningsproblem... 9 Ta bort tidigare inloggningar... 9 Ta bort profil... 9 2017-12-12 EDUROAM Innehåll Android... 2 Anslut med certifikat... 2 Återanslut med applikation... 4 Byt profil... 4 Avinstallera Eduroam applikation... 5 Anslut utan certifikat... 7 Anslutningsproblem...

Läs mer

Elektroniskt informationsutbyte mellan arbetsgivare och Försäkringskassan. Information om filöverföring

Elektroniskt informationsutbyte mellan arbetsgivare och Försäkringskassan. Information om filöverföring Elektroniskt informationsutbyte mellan arbetsgivare och Försäkringskassan Information om filöverföring Innehåll 1 AUTOMATISK ELLER MANUELL FILÖVERFÖRING...3 1.1 MANUELL FILÖVERFÖRING VIA WEBBPLATSEN...3

Läs mer

Instruktioner för Axxell's Trådlösa Nät

Instruktioner för Axxell's Trådlösa Nät Tobias Ahlfors Revisionshistorik Revision 1.1 2 Dec 2014 Innehållsförteckning Snabbguide... 1 Instruktioner... 1 Steg 1 - Network and Sharing Center... 1 Steg 2 - Skapa en ny nätverksprofil...

Läs mer

Guide för Google Cloud Print

Guide för Google Cloud Print Guide för Google Cloud Print Version A SWE Beskrivning av anmärkningar Följande anmärkning används i den här bruksanvisningen: Information om hur du agerar i en viss situation eller hur du använder en

Läs mer

JavaScript in SharePoint and not just for Apps. Wictor Wilén

JavaScript in SharePoint and not just for Apps. Wictor Wilén JavaScript in SharePoint and not just for Apps Wictor Wilén Wictor Wilén Agenda Varför JavaScript? JavaScript bibliotek SharePoint JS bibliotek JavaScript Client Side Object Model (JSOM/CSOM) REST Client

Läs mer

Undervisningen i ämnet webbutveckling ska ge eleverna förutsättningar att utveckla följande:

Undervisningen i ämnet webbutveckling ska ge eleverna förutsättningar att utveckla följande: WEBBUTVECKLING Ämnet webbutveckling behandlar de tekniker som används för att presentera och bearbeta information i webbläsaren samt utifrån dessa tekniker skapa och vidareutveckla statiska och dynamiska

Läs mer

Introduktion till MySQL

Introduktion till MySQL Introduktion till MySQL Vad är MySQL? MySQL är ett programmerings- och frågespråk för databaser. Med programmeringsspråk menas att du kan skapa och administrera databaser med hjälp av MySQL, och med frågespråk

Läs mer

Rekommenderad IT-miljö

Rekommenderad IT-miljö Rekommenderad IT-miljö INNEHÅLL SIDNUMMER Dator 1 Internetuppkoppling Webbläsare Webbläsare Inställningar Telefoner 2 Smartphone Inloggning med säkerhetsdosa Bilder Internet Explorer 3 Mozilla Firefox

Läs mer

Att koppla FB till AD-inloggning

Att koppla FB till AD-inloggning Att koppla FB till AD-inloggning Helen Ekelöf 16. nov. 2017 (uppdaterad 10.april 2018) SOKIGO Box 315 731 27 Köping +46 (0)8 23 56 00 info@sokigo.com http://www.sokigo.com Org.nr: 556550-6309 INNEHÅLLSFÖRTECKNING

Läs mer

Java Secure Sockets Extension JSSE. F5 Secure Sockets EDA095 Nätverksprogrammering! Roger Henriksson Datavetenskap Lunds universitet

Java Secure Sockets Extension JSSE. F5 Secure Sockets EDA095 Nätverksprogrammering! Roger Henriksson Datavetenskap Lunds universitet Java Secure Sockets Extension JSSE F5 Secure Sockets EDA095 Roger Henriksson Datavetenskap Lunds universitet Secure Sockets Layer SSL Transport Layer Security - TLS Protokoll och algoritmer för säker kommunikation

Läs mer

Behörighetssystem. Ska kontrollera att ingen läser, skriver, ändrar och/eller på annat sätt använder data utan rätt att göra det

Behörighetssystem. Ska kontrollera att ingen läser, skriver, ändrar och/eller på annat sätt använder data utan rätt att göra det Behörighetssystem Ska kontrollera att ingen läser, skriver, ändrar och/eller på annat sätt använder data utan rätt att göra det Systemet måste kunna registrera vilka resurser, d v s data och databärande

Läs mer

Användarmanual - OVK. Användarmanual OVK Version 1.5 Daterad: 2014-09-09

Användarmanual - OVK. Användarmanual OVK Version 1.5 Daterad: 2014-09-09 1 Användarmanual - OVK 2 Inloggning... 3 Allmänt... 4 Öppna protokoll... 6 Fylla i protokoll... 7 Skriva ut protokoll... 16 Returnera protokoll... 17 Uppföljning anmärkningar/åtgärder... 17 3 Inloggning

Läs mer

Microsoft Dynamics NAV 2015

Microsoft Dynamics NAV 2015 Microsoft Dynamics NAV 2015 Business Solutions Göteborg Prästgårdsgatan 28 431 44 Mölndal Stockholm Parmmätargatan 24 112 24 Stockholm Innehåll 3 Dynamics NAV 2015 för tablets 4 Förbättrad användarupplevelse

Läs mer

Instruktion: Trådlöst nätverk för privata enheter

Instruktion: Trådlöst nätverk för privata enheter Instruktion: Trådlöst nätverk för privata enheter orebro-byod Sida 2 av 21 Innehållsförteckning 1 Inledning... 3 2 Så ansluter du till nätverket orebro-byod... 4 2.1 Allmän information:... 4 2.2 Enkel

Läs mer

Quick Start CABAS. Generella systemkrav CABAS / CAB Plan. Kommunikation. Säkerhet

Quick Start CABAS. Generella systemkrav CABAS / CAB Plan. Kommunikation. Säkerhet Gunnel Frogedal 2014-07-17 6 32753 1 of 5 Quick Start CABAS Generella systemkrav CABAS / CAB Plan Applikationen stöds av följande operativsystem: Windows Vista SP2 Windows 7 SP1 Windows 8 (inte RT) Windows

Läs mer

Instruktion: Trådlöst utbildningsnät orebro-utbildning

Instruktion: Trådlöst utbildningsnät orebro-utbildning Instruktion: Trådlöst utbildningsnät orebro-utbildning Sida 2 av 19 Innehållsförteckning 1 Inledning... 3 2 Så ansluter du till nätverket orebro-utbildning... 4 2.1 Allmän information:... 4 2.2 Enkel anslutning

Läs mer

Mobile First Video on demand och livesändningar på Internet. Juni 2012

Mobile First Video on demand och livesändningar på Internet. Juni 2012 Mobile First Video on demand och livesändningar på Internet Juni 2012 1 Om detta dokument Marknaden och tekniken kring film (video on demand och livesändningar) på Internet utvecklas blixtsnabbt. Video

Läs mer

Öppna SGU. - Vad är öppna data? - 5 star model - Öppen standard - Öppna format - Öppen licens - Teknik - REST / Atom - Exempel

Öppna SGU. - Vad är öppna data? - 5 star model - Öppen standard - Öppna format - Öppen licens - Teknik - REST / Atom - Exempel Öppna data @ SGU - Vad är öppna data? - 5 star model - Öppen standard - Öppna format - Öppen licens - Teknik - REST / Atom - Exempel jonas.holmberg(at)sgu.se Vad är öppna data? Några begrepp: Öppna data:

Läs mer

Konfigurering av eduroam

Konfigurering av eduroam Konfigurering av eduroam Detta dokument beskriver hur en användare med konto från Chalmers konfigurerar nätverksanslutning till ett trådlöst nätverk på en eduroam-ansluten organisation, t.ex. Chalmers.

Läs mer

Idrottsapen. 1. Inledning. 2. Mål och syfte. 3. Projektbeskrivning

Idrottsapen. 1. Inledning. 2. Mål och syfte. 3. Projektbeskrivning Idrottsapen Slutrapport för projektet Idrottsappen. Projekttitel: Idrottsappen Uppdragstagaren: Sandklef GNU Labs, 710413-5137 1. Inledning Under samtal med olika aktiva personer inom olika idrotter framkom

Läs mer

Installationsguide Junos Pulse för MAC OS X

Installationsguide Junos Pulse för MAC OS X 1 (14) Installationsguide Junos Pulse för MAC OS X 1 Inledning Denna guide beskriver hur du installerar programmet Junos Pulse på MAC OS X Junos Pulse är en klientprogramvara som används i tjänsten Telia

Läs mer

30 år av erfarenhet och branschexperts

30 år av erfarenhet och branschexperts 30 år av erfarenhet och branschexperts Integrerad Säkerhet Integrerad Säkerhet Varför överordnat system Användarvänlighet Kvalitet Trygghet Kostnadseffektivitet Varför ett överordnat system? Med stora

Läs mer

SSL/TLS-protokollet och

SSL/TLS-protokollet och Tekn.dr. Göran Pulkkis Överlärare i Datateknik SSL/TLS-protokollet och SSL-baserade applikationer Innehåll Secure Socket Layer (SSL) / Transport Layer Security (TLS) protokollet SSL-baserade applikationer

Läs mer

IP-baserade program. Telnet

IP-baserade program. Telnet Det här kapitlet behandlar några klassiska TCP/IP-baserade program. Främsta fokus är HTTP men även lite enklare applikationer som telnet och FTP behandlas. Kapitlet är tänkt att kunna läsas fristående

Läs mer

Mobilt Efos och ny metod för stark autentisering

Mobilt Efos och ny metod för stark autentisering Mobilt Efos och ny metod för stark autentisering I och med lanseringen av E-identitet för offentlig sektor, Efos, kommer Inera att leverera komponenter som möjliggör att en användare ska kunna logga in

Läs mer