TDT4237 Programvaresikkerhet Exercise 2. Kristian Ekle Stian Hegerland Hagen Thomas Gautvedt Tale Prestmo Martin Rechsteiner Marthe Øynes

Størrelse: px
Begynne med side:

Download "TDT4237 Programvaresikkerhet Exercise 2. Kristian Ekle Stian Hegerland Hagen Thomas Gautvedt Tale Prestmo Martin Rechsteiner Marthe Øynes"

Transkript

1 TDT4237 Programvaresikkerhet Exercise 2 Kristian Ekle Stian Hegerland Hagen Thomas Gautvedt Tale Prestmo Martin Rechsteiner Marthe Øynes 20. oktober 2014

2 Innhold 1 Secure password storage The password is not salted to prevent parallell attack and precomputated/rainbow tables The password is not hashed iteratively with bcrypt/scrypt/pbkdf Need better password policy. Short passwords must be disallowed Password leak in HTML comment on show user page Password input field should be type=password SQL-injections 3 3 XSS 3 4 CSRF 4 5 Authentication mechanisms Session id in cookie is not regenerated after login to prevent session fixation Timing attack on the hash comparison because equals operator is used Cookie tampering allows normal users to become admin Missing access control on the actual delete on admin page Data Validation Username can be arbitrarily long General other stuff The webapp should be served entirely over TLS Missing throttling and IP bans on excessive requests towards forms The Slim debug variable should be set to false Extension of the application 9 1 Password Recovery 9 2 Profile picture File name extension verification

3 2.2 Limited filesize

4 Vulnerabilities in the webapp I denne rapporten omtaler vi forskjellige filer og kode fra applikasjonen. For å indikere hvilke filer det snakkes om, opplyser vi filsti og navn på fila (uten filendelse). Fordi alle filene vi bruker ligger i src/webapp/ har vi valgt å fjerne dette fra stien vår. Det betyr at filstien til src/webapp/models/user.php blir omtalt som models/user. Om enkeltmetoder i en klasse er omtalt, blir denne addressert som Klasse/metode, hvor metode kan gjenkjennes fordi den har liten forbokstav, til forskjell fra klassene. 1 Secure password storage 1.1 The password is not salted to prevent parallell attack and precomputated/rainbow tables Vi løste dette problemet ganske enkelt ved å introdusere individuelle salt for alle brukerne i hele applikasjonen. Dette krevde et ekstra felt i database-tabellen users, samt et nytt felt i klassen models/user. For å kunne bruke attributten i models/user ble vi også nødt til å opprette getters og setters for den. Samtidig måtte vi også legge til salt som et argument i metoden Hash/make, og alle andre steder hvor objektet interakterer med databasen. I Hash/make måtte metoden utvides med et argument salt slik at den kan returnere et saltet passord for brukeren. Tilsvarende har ikke funksjonen Hash/check bruk for dette. Hashemetoden vi brukte (bcrypt) lagrer informasjon om salt i selve hashen. Når vi skal sammenligne et hashet passord med et klartekstpassord trenger vi derfor ikke å sende saltet med, fordi metoden henter ut dette saltet direkte fra det ferdighashede passordet. 1.2 The password is not hashed iteratively with bcrypt/scrypt/pbkdf2 Applikasjonen brukte sha512 til å generere hashene. Selv om dette er en relativt grei algoritme, finnes det mange som er veldig mye bedre. Spesielt er algoritmer som hasher iterativt svært bra. Det som er forskjellen på disse algoritmene og 1

5 en stock implementasjon av sha512 er at iterative hasher gjør hashingen flere ganger, som oftes flere hundre ganger, noe som selvsagt gjør innlogging o.l. betydelige sikrere. Fordelen med dette er at det tar lengre tid å generere hashen. Når man hasher passord og sensitiv data vil det være ønskelig at dette tar så lang tid som mulig. Grunnen til dette er at når man hasher et passord en gang, som gjøres når man f.eks logger inn, eller validerer en login, så har ikke denne ekstra tiden så veldig mye å si. Når man derimot gjør brute force attacks og kjører flere millioner hashinger, vil forskjellene være enorme. Vi researchet de forskjellige alternativene og valgte bcrypt, da vi fant ut at den var veldig godt implementert i PHP. Ettersom testserveren kjører versjon av PHP, finnes også bcrypt implementert direkte i PHP uten behov for eksterne biblioteker. 1.3 Need better password policy. Short passwords must be disallowed Når man oppretter en bruker blir brukernavn evaluert. Det samme blir formatet på brukernavnet. Disse testene skjer i models/user. Da vi skulle evaluere passord ble vi nødt til å gjøre det utenfor models/user, fordi dette krever et uhashet passord. Modellen inneholder kun det hashede passordet av sikkerhetsmessige årsaker. Implementasjonen ble derfor litt rotete. Sjekken på lengden av passordet finner sted i controllers/usercontroller og sjekker enkelt og greit om passordet er 6 tegn eller lengre. 1.4 Password leak in HTML comment on show user page I templates/showuser.twig har man følgende markup: <!-- {{ user. passwordhash raw --> Vi fjernet enkelt og greit denne linja. 2

6 1.5 Password input field should be type=password Disse endringene ble gjort i templates/login.twig og templates/newuserform.twig. Her var type på passord-feltet satt til text, noe som ikke skjuler det faktiske innholdet i feltet. Vi byttet ut disse attributtene med password, som gir den gjenkjennelige oppførselen hvor innholdet i boksen blir erstattet med stjerner. Dette er for å skjule verdien for folk som sitter rundt personen som skriver inn sitt passord. 2 SQL-injections For å fikse SQL-injections i applikasjonen måtte vi gjøre om måten alle databasespørringer blir utført på. Tidligere ble disse gjort ved å sette inn verdier direkte i en spørring og kjøre den med enten pdo->query eller pdo->exec. Disse metodene er ikke sikre mot SQL-injections når man ikke bruker prepared statements. Vi skrev derfor om koden til å bruke nettopp dette. Prepared statements trenger ikke korrekt escaping av innholdet fordi verdiene av parameterne blir sendt etter selve spørringen, og utført på en annen måte en normale spørringer. På grunn av dette vil alle spørringene automatisk være garantert sikre mot SQL injections. Et eksempel på hvordan dette er implementert finner vi i models/movie hvor den originale koden er slik: $query = " SELECT * FROM movies WHERE id = $id "; $result = self :: $app ->db ->query ( $query ); Og den nye koden er: $query = " SELECT * FROM movies WHERE id = : id"; $result = self :: $app ->db -> prepare ( $query ); $result -> execute ( array ( : id => $id )); Tilsvarende endringer er implementert i alle spørringene i applikasjonen. 3 XSS XSS er sikkerhetshull hvor det er mulig å kjøre javascript i nettleseren til en bruker, mot hans eller hennes ønske. Dette er kode som ikke er implementert 3

7 i selve applikasjonen, men som har funnet veien til nettsiden gjennom inputfelter og andre parametere som brukeren kan manipulere. Et typisk sted i denne applikasjonen hvor man kunne legge til et XSS i applikasjonen før vi tettet sikkerhetshullene var i controllers/moviecontroller når man la til en filmanmeldelse. PHP har en innebygget funksjon for å unngå slike sikkerhetshull. Funksjonen heter htmlentities og escaper HTML-karakterer til sine respektive HTMLentities. Blant annet er < ( mindre enn -tegnet) encodet som <. En liste over HTML-entities kan finnes her: Alt vi trengte for å tette disse hullene var derfor å legge til htmlentities alle de stedene hvor det var mulig for brukeren å legge til HTML-karakterer og potensielt skadelig kode. I controllers/moviecontroller har vi gjort dette slik: $author = htmlentities ( $request ->post ( author )); $text = htmlentities ( $request ->post ( text )); 4 CSRF CSRF er et sikkerhetskonsept som ligner mye på XSS. Det bygger på at man submitter en form eller går til en side hvor en bruker er logget inn eller har tilgang, uten at vedkommende selv ønsker dette. Forskjellen er at XSS utføres med javascript eller clientside-språk og utføres på en side som sender informasjonen videre til en ondsinnet side. Dette er på grunn av same-origin policy som ellers vil nekte en slik request fra å bli gjennomført. CSRF, derimot, kan gjøres ved å sende en request til en nettside uten at personen som browser selv ønsker dette. Hvis du f.eks er logget inn i en bank kan ondsinnet kode gjøre en request til banken, og fordi du har en aktiv session her, kan koden gjøre hva den vil. Sikkerhetstiltaket for å stoppe CSRF gjøres ved å opprette en token, eller tilfeldig generert string, og validere denne i alle forms som blir sendt. Hver gang siden blir oppdatert blir det generert en ny token. Dette gjør det umulig for en mellommann å snappe opp denne token, for deretter å bruke den i et ondsinnet 4

8 angrep. Et slikt angrep vil feile, fordi neste gang siden lastes har token forandret seg, og en ny CSRF vil være gyldig. Vi har implementert dette i applikasjonen vår gjennom Auth. Den komplette koden ser slik ut: if ( self :: $csrf_token == null ) { self :: $csrf_token = md5 ( rand (0, ). kebab. time ()); $_SESSION [ csrf ] = self :: $csrf_token ; $_SESSION [ csrf_age ] = time (); return self :: $csrf_token ; Koden vår ville ikke fungert om token ble generert på nytt hver gang metoden blir kalt. På grunn av dette lagrer vi token i en statisk variabel i klassen og setter denne til null. Når metoden blir kalt vil den generere en token kun om verdien fortsatt er null. Vi har også en variabel som indikerer hvor lenge en token er gyldig. I funksjonen som validerer token har vi satt en grense på 10 minutter før en token er utdatert. Dette krever riktignok at brukeren ikke har besøkt en annen side i mellomtiden, fordi dette vil føre til at token er ugyldig igjen. Løsningen kan med andre ord være noe upraktisk sett fra brukerens side, selv om den er betydelig mye sikrere enn den tidligere. 5 Authentication mechanisms 5.1 Session id in cookie is not regenerated after login to prevent session fixation Dette er et sikkerhetshull som gjør at man kan highjacke session-iden til en bruker og bruke denne selv for å stjele identiteten til en bruker. Dette krever riktignok at man har tilgang til cookiesene til vedkommende, men er fremdeles en ganske stor risiko. Heldigvis er dette et veldig enkelt hull å tette. PHP har en innebygget funksjon session regenerate id som gjør nettopp dette. Vi la til denne kommandoen i controllers/usercontroller og controllers/logincontroller, hvor brukeren logger ut og inn. 5

9 5.2 Timing attack on the hash comparison because equals operator is used Timing attack på hash-sammenlikning er en metode man kan bruke for å knekke kryptering i et program. Det baserer seg på at man kalkulerer tiden det tar å sammenligne to hasher med hverandre. I den originale koden var metoden check i Hash slik: return self :: make ( $plaintext ) === $hash ; Vi har skrevet om denne til å bruke: return password_verify ( $plaintext, $hash ); password verify er en innbygget funksjon i PHP og brukes sammen med password hash. Fordi password verify funker på den måten den funker, trenger vi ikke informasjon om salt eller cost i algoritmen check, så vi trenger ikke å endre antall argumenter funksjonen trenger, eller antall argumenter vi sender til funksjonen. 5.3 Cookie tampering allows normal users to become admin Dette var et stort sikkerhetshull i måten applikasjonen var bygget opp. Applikasjonen skjekket om en bruker er admin kun ved en cookie. Cookies blir lagret lokalt hos bruekren og kan endres. Sikkerhetshullet kommer fra Auth hvor koden var som følger: return $_COOKIE [ isadmin ] === yes ; Dette er naturligvis ikke en sikker måte å gjøre valideringen på. Vår fiks sjekker om brukeren er logget inn (ved å sjekke session), deretter prøver den å hente brukeren fra databasen og sjekker databasefeltet direkte. if ( isset ( $_SESSION [ user ])) { $user = User :: findbyuser ( $_SESSION [ user ]); if ( $user!== null ) { return $user -> isadmin (); 6

10 5.4 Missing access control on the actual delete on Dette var ganske enkelt et sikkerhetshull i applikasjonen hvor man kunne gå til /admin/delete/<brukernavn> og slette en bruker (dersom brukernavnet ble funnet) uten å være admin (eller å i det heletatt være logget inn). Vi tettet dette sikkerhetshullet ved å kjøre en enkel sjekk mot: Auth :: isadmin () Før en eventuell sletting ble utført. 6 Data Validation 6.1 Username can be arbitrarily long Det finnes allerede metoder for å validere minimumslengden på brukernavn. Vår implementasjon på dette problemet gjør nøyaktig det samme som den originale koden. I models/user: if ( strlen ( $user ->user ) < self :: MIN_USER_LENGTH ) { array_push ( $arr, " Username too short. Min length is ". self :: MIN_USER_LENGTH ); if ( strlen ( $user ->user ) > self :: MAX_USER_LENGTH ) { array_push ( $arr, " Username too long. Max length is ". self :: MAX_USER_LENGTH ); 7 General other stuff 7.1 The webapp should be served entirely over TLS. All requests towards HTTP should redirect to HTTPS. HSTS and secure cookie flag should be on. Som det står nevnt i punktet er ikke dette noe vi trenger å tenke over, men det hadde vært ønskelig å benytte oss av HTTPS i denne applikasjonen. Ved bruk av HTTP sendes passord i klartekst over nettverket under både opprettelse av 7

11 ny bruker, og under login. Samtidig er også cookie for session mulig å snappe opp om man easedropper på nettverket. Dette krever riktignok at man er på samme nettverk (enten trådløst, eller via kabel), men er like fullt et potensielt hull. Ettersom HTTPS trenger et sertifikat er dette noe vi har sett bort i fra. Vi har derfor benyttet oss av normal HTTP/1.1 på hele vår applikasjon. 7.2 Missing throttling and IP bans on excessive requests towards forms Vi implementerte logging av feilede loginforsøk i applikasjonen vår. Vi gjorde dette ved å opprette en ny modell som vi kalte Ip. Modellen blir kalt og brukt i Auth. Auth har metoder for å legge til feilet login, samt å sjekke om en IPadresse allerede er bannet. Endringer ble også gjort i controllers/logincontroller hvor metoden for å legge til feilet login blir lagt til dersom brukernavn og/eller passord er feil. Samtidig vil ikke koden for å prøve å logge inn bli kjørt dersom systemet oppdager at en IP-adresse er bannet. I controllers/logincontroller: if ( Auth :: isbanned ()) { // [... feilmelding...] else { // [... valider login...] Spørringen for å sjekke om en IP-adresse har prøvd å logge inn 1000 ganger i løpet av den siste timen er slik: $query = " SELECT COUNT ( id) as num FROM logins WHERE ip = : ip"; $query.= " AND login > ". ( time () ); Etterpå gjøres det en sjekk om num er større eller er lik 1000, noe som indikerer at personen har overgått grensen. 7.3 The Slim debug variable should be set to false to minimize leakage of useful info, (e.g. system paths and technology stack) Dette ble gjort i app.php hvor debug var et argument i initialiseringen til Slim. 8

12 Extension of the application 1 User can reset their password if they forget it Applikasjonen har ingen glemt passord -funksjonalitet. På grunn av dette måtte brukere som har glemt sitt passord lage ny bruker eller ta kontakt med systemansvarlig for å komme seg inn på siden igjen. I vår implementasjon la vi til en link på login-siden som peker til /recover, hvor brukeren blir møtt av et skjema. I dette skjemaet kan brukeren skrive inn sitt brukernavn og få tilsendt epost med nytt passord. E-posten sendes til e-postadressen knyttet til brukernavnet. Det tilsendte passordet er generert av metoden Hash/randomPassword: static function randompassword () { $alphabet = " abcdefghijklmnopqrstuwxyzabcdefghijklmnopqrstuwxyz "; $pass = array (); $alphalength = strlen ( $alphabet ) - 1; for ( $i = 0; $i < 8; $i ++) { $n = rand (0, $alphalength ); $pass [] = $alphabet [ $n ]; return implode ( $pass ); Dersom e-postutsendingen går uten problemer, blir brukerens gamle passordet overskrevet av et nytt passord, som også blir sendt i klartekst på e-post. Passordet blir hashet med saltet som tilhører den aktuelle brukeren. For å sende mail brukes et bibliotek som heter PHPMailer. Det er lagt til i composer.json: " require ": { " slim / slim ": " 2.* ", " slim / views ": " 0.1.* ", " twig / twig ": " 1.16.* ", + " phpmailer / phpmailer ": " 5.2.* " PHPMailer har funksjonalitet for å sende mail gjennom en spesifisert SMTPserver. I applikasjonen er det for enkelhets skyld valgt gmail sin SMTP-server, 9

13 med en gmail-bruker som autentiseres hver gang en epost skal sendes. Funksjonen som sender ut epost ligger i Mail og eposten som blir sendt, er: $mail -> Subject = " Password Recovery "; $mail ->Body = " Hello ". $username. "\ nyour password has been "; $mail ->Body.= " reset and is now ". $newpass ; $mail -> AddAddress ( $ ); Dersom funksjonen returnerer true, vil eposten være sendt og det nye passordet lagres på brukeren. Det gamle passordet vil ikke lengre fungere og brukeren kan kun logge inn med det nye passordet. 2 User can upload and change their profile picture Vi implementerte også metode for å laste opp profilbilder til brukerne. Dette ble implementert på siden hvor man kan redigere sin personlige informasjon. Koden ble lagt inn i controllers/usercontroller, models/user ble endret, og vi la til en ny fil /Upload, hvor selve opplastningen skjer. I databasen ble modellen utvidet med et nytt felt, photo, som inneholder filstien til profilbildet. 2.1 File name extension verification Vi er nødt til å forsikre oss at en angriper ikke kan laste opp hvilke som helst filer. Hvis man har mulighet til å laste opp et PHP script vil man kunne få full tilgang til serveren. Vi begynner med å validere at filen har riktig MIME-type ved å bruke den innebygde PHP-funksjonen getimagesize(). Det vil nå ikke være mulig å laste opp en fil som ikke er en korrekt bildefil. $file_info = getimagesize ( $file [ tmp_name ]); Problemet er at en fil kan være en helt korrekt bildefil men samtidlig inneholde et PHP script. De fleste bildeformater tilater at man legger inn en kommentar for å beskrive bildet og her kan man legge kodesnutter som kan bli executed på serveren. getimagesize() vil derfor se en helt vanlig bildefil når den validerer bildet. Derimot hvis PHP går gjennom filen vil den se etter <?php og kjøre scriptet som ligger inne i bildefilen. 10

14 PHP kan kun parse bildefilen hvis filendingen er.php. For å utnytte dette kan en bruker som laster opp en bildefil som inneholder PHP-kode kalle denne bilde.php. Hvis angriperen deretter etterspør denne filen vil scriptet bli kjørt. Ettersom dette krever at filendelsen er.php, er vi derfor nødt til å sjekke at filer som blir lastet opp ikke inneholder noen andre filendinger enn de vi ønsker å støtte. const VALID_FILE_EXTENSIONS = /\.(?: png jpg jpeg gif )$/ ; const VALID_MIME_TYPES = [ image / gif, image / jpeg, image / png ]; private static function validate_extension ( $file_name, $mime_type ) { if (! in_array ( $mime_type, Upload :: VALID_MIME_TYPES )! preg_match ( Upload :: VALID_FILE_EXTENSIONS, $file_name )) { throw new UploadException ( Uploaded file has an invalid file type. ); Med denne sjekken kan vi nå være sikre på at ingen laster opp filer som vil kunne kjøre skadelige script. Det er fortsatt mulig å laste opp en bildefil som inneholder et script, men det er ingen måte å execute denne koden på, ettersom webserveren til tolke filen som en bildefil. 2.2 Limited filesize Et annet potensielt sikkerhetshull er DDosing ved å laste opp gigantiske filer. Det er en fordel å begrense størrelsen på opplastninger av filer for å forhindre at serveren kneler. På grunn av måten PHP snakker med webserveren er en slik begresning ikke mulig å implementere i applikasjonen. Dette er fordi PHP mottar filen før den kan kontrollere filstørrelsen. På grunn av dette er en slik begresning kun mulig å implementere i Apache2 eller nginx, som kjører webserveren. Det lønner seg selvfølgelig å sjekke dette i frontend med Javascript for å gi brukeren en fin tilbakemelding om størrelsen er for sto. Det lønner seg også å dobbeltsjekke dette i PHP for å forsikre seg om at Javascript-valideringen ikke ble lurt. En implementasjon som vi snakket om er fint for å forhindre angrep på serveren og forfalskning av forespørsler. 11

Agenda. Data og grenser Kontekster XSS XSS og kompliserende kontekster Injection attacks Beskyttelse OWASP

Agenda. Data og grenser Kontekster XSS XSS og kompliserende kontekster Injection attacks Beskyttelse OWASP Når data krysser grenser Erlend Oftedal, BEKK Knut Vidar Siem, Objectware Communities in Action 10. mai 2010 Copyright The OWASP Foundation Permission is granted to copy, distribute and/or modify this

Detaljer

Sikkerhet i Pindena Påmeldingssystem

Sikkerhet i Pindena Påmeldingssystem Sikkerhet i Pindena Påmeldingssystem Versjon: 4.2.0 Oppdatert: 30.08.2017 Sikkerhet i Pindena Påmeldingssystem 2 Innhold Om dokumentet 3 Sikkerhet på klientsiden 3 Sikkerhetstiltak i koden 3 Rollesikkerhet

Detaljer

Sikkerhet i Pindena Påmeldingssystem

Sikkerhet i Pindena Påmeldingssystem Sikkerhet i Pindena Påmeldingssystem Versjon: 1.6.9 Oppdatert: 26.11.2014 Sikkerhet i Pindena Påmeldingssystem 2 Innhold OM DOKUMENTET... 3 SIKKERHET PÅ KLIENTSIDEN... 3 SIKKERHETSTILTAK... 3 ROLLESIKKERHET...

Detaljer

HTML5. Skjemaer på nettsider. Skjemaer med. Informasjonsteknologi 1 og 2. Gløer Olav Langslet Sandvika VGS

HTML5. Skjemaer på nettsider. Skjemaer med. Informasjonsteknologi 1 og 2. Gløer Olav Langslet Sandvika VGS Skjemaer med HTML5 Gløer Olav Langslet Sandvika VGS Leksjon 10 Informasjonsteknologi 1 og 2 Skjemaer på nettsider I denne leksjonen skal vi se litt nærmere på bruk av skjemaer på nettsider. Du har sett

Detaljer

PERSONVERN, GDPR OG COREPUBLISH

PERSONVERN, GDPR OG COREPUBLISH PERSONVERN, GDPR OG COREPUBLISH Innledning Dette dokumentet beskriver hvordan CorePublish fungerer i forhold til personvernloven og GDPR. Det er viktig å understreke at CorePublish er et CMS og et rammeverk

Detaljer

Sikkerhet og tilgangskontroll i RDBMS-er

Sikkerhet og tilgangskontroll i RDBMS-er Sikkerhet og tilgangskontroll i RDBMS-er IN2090 14. nov 2018 Mathias Stang 1 Agenda Modeller for tilgangskontroll Brukere og roller i RDBMS-er GRANT og REVOKE SQL Injections 2 Hovedmål med databasesikkerhet

Detaljer

Eksamen i Internetteknologi Fagkode: IVA1379

Eksamen i Internetteknologi Fagkode: IVA1379 Høgskolen i Narvik Side 1 av 5 Eksamen i Internetteknologi Fagkode: IVA1379 Tid: Mandag, 07.06.04, 9:00-12:00 Tillatte hjelpemidler: Alle trykte og skrevne hjelpemidler tillatt. Eksamen består av 4 oppgaver

Detaljer

Oblig 5 Webutvikling. Av Thomas Gitlevaag

Oblig 5 Webutvikling. Av Thomas Gitlevaag Oblig 5 Webutvikling Av Thomas Gitlevaag For oppgave 1 og 2 skal dere levere en funksjonell webside på deres hjemmeområde. Dere skal også levere alle phps-filene slik at man for en hver side kan slenge

Detaljer

Sikkerhet i Pindena Påmeldingssystem

Sikkerhet i Pindena Påmeldingssystem Sikkerhet i Pindena Påmeldingssystem Versjon: 6.0.0 Oppdatert: 20.05.2019 1 Innhold Innhold 2 1.Om dokumentet 3 2. Sikkerhet på klientsiden 3 3.Sikkerhetstiltak i koden 3 3.1 Rollesikkerhet 3 3.2 Databasesikkerhet

Detaljer

SVARFORSLAG : Eksamen i IBE102 Webutvikling Våren 2017.

SVARFORSLAG : Eksamen i IBE102 Webutvikling Våren 2017. Avdeling for Logistikk SVARFORSLAG : Eksamen i IBE102 Webutvikling Våren 2017. Eksamensdag: 5. mai 2017 Tid: 9-13. Faglærer/tlf: Ketil Danielsen Hjelpemidler: Ingen. Antall sider, inkl. forsiden: 6 Målform:

Detaljer

Tilkobling og Triggere

Tilkobling og Triggere Tilkobling og Triggere Lars Vidar Magnusson October 12, 2011 Lars Vidar Magnusson () Forelesning i DAS 11.10.2011 October 12, 2011 1 / 25 Tilkobling med PHP PHP bruker databasespesifike moduler til å koble

Detaljer

Feilmelding Årsak Løsning

Feilmelding Årsak Løsning Request for the permission of type 'System.Security.Permissions.EnvironmentPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed Feil oppstod i Window.DialogWindow:

Detaljer

User Input / Output Handling. Innocent Code kap 3-4 INF-329 Øystein Lervik Larsen oysteinl@ii.uib.no 7/11-05

User Input / Output Handling. Innocent Code kap 3-4 INF-329 Øystein Lervik Larsen oysteinl@ii.uib.no 7/11-05 User Input / Output Handling Innocent Code kap 3-4 INF-329 Øystein Lervik Larsen oysteinl@ii.uib.no 7/11-05 Oversikt Bruker-input (kap. 3) Hva er input? Validering av input Behandle ugyldig input Farer

Detaljer

Eksamen i Internetteknologi Fagkode: ITE1526

Eksamen i Internetteknologi Fagkode: ITE1526 Datateknikk Side 1 av 8 Eksamen i Internetteknologi Fagkode: ITE1526 Tid: Mandag, 23.05.05, 9:00-12:00 Tillatte hjelpemidler: Alle trykte og skrevne hjelpemidler tillatt. Eksamen består av 3 oppgaver og

Detaljer

Brukerveiledning for ArkN4

Brukerveiledning for ArkN4 Brukerveiledning for ArkN4 Brukerveiledningen er delt inn i 3 deler: 1. Konfigurasjon av ArkN4 2. Kjøre ArkN4 3. Opprette ny database Eksemplene i dette kapitlet viser hvordan man velger de forskjellige

Detaljer

Kapittel 11. Databasesikkerhet

Kapittel 11. Databasesikkerhet Kapittel 11 Databasesikkerhet Læringsmål: SQL-injection er en alvorlig sikkerhetsmessig trussel i webløsninger i dag. Etter å ha jobbet med dette kapittelet skal du forstå hvordan SQL-injection-angrep

Detaljer

Elektronisk innlevering/electronic solution for submission:

Elektronisk innlevering/electronic solution for submission: VIKINGTIDSMUSEET Plan- og designkonkurranse/design competition Elektronisk innlevering/electronic solution for submission: Det benyttes en egen elektronisk løsning for innlevering (Byggeweb Anbud). Dette

Detaljer

Database security. Kapittel 14 Building Secure Software. Inf329, Høst 2005 Isabel Maldonado st10900@student.uib.no

Database security. Kapittel 14 Building Secure Software. Inf329, Høst 2005 Isabel Maldonado st10900@student.uib.no Database security Kapittel 14 Building Secure Software Inf329, Høst 2005 Isabel Maldonado st10900@student.uib.no Kort introduksjon Database er en organisert samling av data. SQL(Structured Query Language)

Detaljer

Sikkerhet og internett. Kan vi være vi trygge? Kan vi beskytte oss? Bør vi slå av nettet

Sikkerhet og internett. Kan vi være vi trygge? Kan vi beskytte oss? Bør vi slå av nettet Sikkerhet og internett Kan vi være vi trygge? Kan vi beskytte oss? Bør vi slå av nettet Stoler du på denne mannen? 28.01.2009 Om sikkerhet på Internettet ved Hans Nordhaug 2 Jepp Derfor fant du i januar

Detaljer

Testsituasjon Resultat Kommentar. Fungerer som det skal!

Testsituasjon Resultat Kommentar. Fungerer som det skal! Test- rapport Testsituasjon Resultat Kommentar Test av PHP-variablene. Sjekke om de er riktig deklarert, og om de kommer med fra form til database Alle variablene som skal leses fra konfigurasjonssiden,

Detaljer

Prosedyrer. Lars Vidar Magnusson. October 26, Lars Vidar Magnusson () Forelesning i DAS October 26, / 19

Prosedyrer. Lars Vidar Magnusson. October 26, Lars Vidar Magnusson () Forelesning i DAS October 26, / 19 Prosedyrer Lars Vidar Magnusson October 26, 2011 Lars Vidar Magnusson () Forelesning i DAS 11.10.2011 October 26, 2011 1 / 19 Repetisjon om triggere og prosedyrer Triggere og prosedyrer ligner på hverandre

Detaljer

if-tester Funksjoner, løkker og iftester Løkker og Informasjonsteknologi 2 Læreplansmål Gløer Olav Langslet Sandvika VGS

if-tester Funksjoner, løkker og iftester Løkker og Informasjonsteknologi 2 Læreplansmål Gløer Olav Langslet Sandvika VGS Løkker og if-tester Gløer Olav Langslet Sandvika VGS 29.08.2011 Informasjonsteknologi 2 Funksjoner, løkker og iftester Læreplansmål Eleven skal kunne programmere med enkle og indekserte variabler eller

Detaljer

Produksjonssettingsrapport

Produksjonssettingsrapport Vedlegg E2 Produksjonssettingsrapport milepæl 1 Dokumentet inneholder beskrivelse av andre del av produksjonssetting av milepel 1 den 16.03.2013. INNHOLDSFORTEGNELSE INNHOLDSFORTEGNELSE 2 1. INNLEDNING

Detaljer

EN PRAKTISK INNFØRING I KRYPTERT E-POST FRA UDI

EN PRAKTISK INNFØRING I KRYPTERT E-POST FRA UDI EN PRAKTISK INNFØRING I KRYPTERT E-POST FRA UDI Asylavdelingen (ASA) i UDI forbereder seg til høsten 2010 der avdelingen skal begynne med fullelektronisk saksbehandling (esak). UDI har innført en løsning

Detaljer

Trådløsnett med. Wireless network. MacOSX 10.5 Leopard. with MacOSX 10.5 Leopard

Trådløsnett med. Wireless network. MacOSX 10.5 Leopard. with MacOSX 10.5 Leopard Trådløsnett med MacOSX 10.5 Leopard Wireless network with MacOSX 10.5 Leopard April 2010 Slå på Airport ved å velge symbolet for trådløst nettverk øverst til høyre på skjermen. Hvis symbolet mangler må

Detaljer

Innocent Code Kapittel 1: The Basics Kapittel 2: Passing Data to Subsystems

Innocent Code Kapittel 1: The Basics Kapittel 2: Passing Data to Subsystems Innocent Code Kapittel 1: The Basics Kapittel 2: Passing Data to Subsystems INF329, høsten 2005 Utvikling av sikre applikasjoner Martin Lie martin@mq.no 2005-11-02 Kapittel 1: The Basics HTTP Sesjoner

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 15. desember 2004 Varighet: Fagnummer: Fagnavn: Klasse(r): 3 timer LV197D Webprogrammering med PHP FU Studiepoeng:

Detaljer

som blanker skjermen (clear screen). Du får en oversikt over alle kommandoene ved å skrive,

som blanker skjermen (clear screen). Du får en oversikt over alle kommandoene ved å skrive, 1. Last ned og installer XAMPP. 2. Sjekk at alt fungerer. 3. MySQL. Vi begynner med databaseserveren, MySQL. Gå til DOS klarmelding eller ledetekst (finnes under tilbehør på startmenyen om du ikke som

Detaljer

WP-WATCHER WORDPRESS SIKKERHET

WP-WATCHER WORDPRESS SIKKERHET WP-WATCHER WORDPRESS SIKKERHET WP-WATCHER BACKUP - SIKKERHETSKOPIERING «Hei! Jeg oppdaterte en plugin på siden min og nå kommer jeg ikke inn på siden min i det hele tatt. Kan du hjelpe meg?» «Hjelp! Jeg

Detaljer

Pen- tes'ng av webservices. Asbjørn Reglund Thorsen Gruppe- og utviklingsleder UIO/FSAT TwiDer: @fuzzerman

Pen- tes'ng av webservices. Asbjørn Reglund Thorsen Gruppe- og utviklingsleder UIO/FSAT TwiDer: @fuzzerman Pen- tes'ng av webservices Asbjørn Reglund Thorsen Gruppe- og utviklingsleder UIO/FSAT TwiDer: @fuzzerman Om meg Gruppe- og utviklingsleder på FSAT Felles studieadministra'vt tjenestesenter Sikkerhetsekspert

Detaljer

Brukermanual. Itpays W3 Publish. Sette opp, logge inn og komme i gang. Redigert den 23. mai 2005. http://www.itpays.no/produkter/publisering/

Brukermanual. Itpays W3 Publish. Sette opp, logge inn og komme i gang. Redigert den 23. mai 2005. http://www.itpays.no/produkter/publisering/ Brukermanual Itpays W3 Publish Sette opp, logge inn og komme i gang Redigert den 23. mai 2005 http://www.itpays.no/produkter/publisering/ Innholdsoversikt: 1 Generelt om Itpays w3 publish Side 3 2 Sette

Detaljer

Administrator guide. Searchdaimon ES (Enterprise Server)

Administrator guide. Searchdaimon ES (Enterprise Server) Administrator guide Searchdaimon ES (Enterprise Server) Collections/Resourses... 3 Overview... 3 Crawl now... 3 Manage... 3 Delete... 5 Scan... 5 Start a new scan... 5 View results... 9 Delete... 9 Add

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Kandidatnr: Eksamensdato: 17.desember 2001 Varighet: 0900-1300 Fagnummer: LV192D Fagnavn: Web-programmering med ASP Klasser: 1hsf Vekttall:

Detaljer

Lotus Traveler - Manual for installasjon

Lotus Traveler - Manual for installasjon Lotus Traveler - Manual for installasjon Innholdsliste Nedlasting...2 Installasjon...3 Konfigurering...4 Problemer...5 Nedlasting 1) Åpne nettleseren på mobilen din. På de fleste Nokia-telefoner har denne

Detaljer

Utvikling av dynamiske nettsteder med PHP og databaser, høsten 2006

Utvikling av dynamiske nettsteder med PHP og databaser, høsten 2006 Page 1 Page 2 [Kurssidene] [ JBI] [ ] Utvikling av dynamiske nettsteder med PHP og databaser, høsten 2006 Et program som er installert på en tjenermaskin, og som tillater eksterne programmer å utføre spørringer

Detaljer

en hjemmeside Lesson Introduksjon Du kjenner en del HTML tagger, så nå er det på tide å lage din første hjemmeside! La oss begynne med en gang.

en hjemmeside Lesson Introduksjon Du kjenner en del HTML tagger, så nå er det på tide å lage din første hjemmeside! La oss begynne med en gang. Lesson 2 en hjemmeside All Code Clubs must be registered. Registered clubs appear on the map at codeclub.org.uk - if your club is not on the map then visit jumpto.cc/18cplpy to find out what to do. Introduksjon

Detaljer

Produktdokumentasjon. Madison Møbler Administrasjonsside og Nettbutikk

Produktdokumentasjon. Madison Møbler Administrasjonsside og Nettbutikk Produktdokumentasjon Madison Møbler Administrasjonsside og Nettbutikk 1 1. Forord 1.1 Dokumentasjonen Dette er en teknisk dokumentasjon på produktet som er utviklet. Denne er tiltenkt personer med teknisk

Detaljer

Overordnet beskrivelse og arkitekturskisse

Overordnet beskrivelse og arkitekturskisse Overordnet beskrivelse og arkitekturskisse Arkitekturskisse av Conserto, som er utviklet i ASP.NET VB FrameWork 4.0 med bruk av code-behind filer, MS SQL 2008, og er bygget på MasterPage som fellemal.

Detaljer

Oversikt over flervalgstester på Ifi

Oversikt over flervalgstester på Ifi Oversikt over flervalgstester på Ifi Christian Kringstad Kielland christkk@ifi.uio.no 1. august 2003 Introduksjon Dette dokumentet beskriver hvordan systemet for flervalgstester på Ifi fungerer. Systemet

Detaljer

EKSAMEN. Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00

EKSAMEN. Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00 EKSAMEN Emnekode: ITM20606 ITF10208 Dato: Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00 05/06-2009 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater

Detaljer

Sikkerhet og internett

Sikkerhet og internett Sikkerhet og internett Kan vi være vi trygge? Kan vi beskytte oss? Bør vi slå av nettet Stoler du på denne mannen? 25.01.2008 Om sikkerhet på Internettet ved Hans Nordhaug 2 1 Nei? Og likevel er du på

Detaljer

NKKN typeforslag versjon 2.0.1. Definisjon av grunntypene

NKKN typeforslag versjon 2.0.1. Definisjon av grunntypene NKKN typeforslag versjon 2.0.1 For å lette innsamling av typedata er det laget en importrutine i NKKN som muliggjør automatisering. Foreløpig kan en kun sende forslag via email, en webservice er planlagt

Detaljer

PowerOffice Server Service

PowerOffice Server Service PowerOffice Server Service 20 14 Po we ro ffice AS - v4.5.1 PowerOffice SQL - PowerOffice Server Service Alle rettigheter reservert. Ingen deler av dette arbeidet kan reproduseres i noen form eller på

Detaljer

1. Profiler og variabler

1. Profiler og variabler Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Profiler og variabler Stein Meisingseth 26.05.2014 Lærestoffet er utviklet for faget IDRI3005 PowerShell 1. Profiler og variabler Resymé:

Detaljer

Erlend Oftedal. Risiko og sikkerhet i IKT-systemer, Tekna

Erlend Oftedal. Risiko og sikkerhet i IKT-systemer, Tekna Sikkerhet i Web 2.0 Erlend Oftedal Risiko og sikkerhet i IKT-systemer, Tekna Hva er spesielt med Web 2.0? Innhold fra flere kilder Sosiale nettsteder med brukergenerert innhold Mashups gjerne med innhold

Detaljer

Eksamen i Internetteknologi Fagkode: ITE1526

Eksamen i Internetteknologi Fagkode: ITE1526 Høgskolen i Narvik Side 1 av 5 Eksamen i Internetteknologi Fagkode: ITE1526 Tid: Torsdag 15.06.06, 9:00-12:00 Tillatte hjelpemidler: Alle trykte og skrevne hjelpemidler tillatt. Eksamen består av 1 oppgave

Detaljer

the web Introduksjon Lesson

the web Introduksjon Lesson Lesson 1 the web All Code Clubs must be registered. Registered clubs appear on the map at codeclub.org.uk - if your club is not on the map then visit jumpto.cc/18cplpy to find out what to do. Introduksjon

Detaljer

Steg 1: Regneoperasjoner på en klokke

Steg 1: Regneoperasjoner på en klokke Diffie-Hellman nøkkelutveksling Skrevet av: Martin Strand Kurs: Python Tema: Tekstbasert, Kryptografi Fag: Matematikk, Programmering Klassetrinn: 8.-10. klasse, Videregående skole Introduksjon Du har tidligere

Detaljer

!!!!!!!!!!!! !!!!!!!!!!! WP-WATCHER WORDPRESS SIKKERHET

!!!!!!!!!!!! !!!!!!!!!!! WP-WATCHER WORDPRESS SIKKERHET WP-WATCHER WORDPRESS SIKKERHET WP-WATCHER BACKUP - SIKKERHETSKOPIERING «Hei Jeg oppdaterte en plugin på siden min og nå kommer jeg ikke inn på siden min i det hele tatt. Kan du hjelpe meg?» «Hjelp Jeg

Detaljer

Brukermanual. Studentevalueringssystem

Brukermanual. Studentevalueringssystem Brukermanual Studentevalueringssystem 1 Forord 1.1 Forord Denne brukermanualen innholder beskrivelse av systemets funksjonalitet og introduserer systemet for brukeren. Brukermanualen er delt inn i tre

Detaljer

lagring med HTML5 Offline lagring Offline Informasjonsteknologi 2 Gløer Olav Langslet Sandvika VGS

lagring med HTML5 Offline lagring Offline Informasjonsteknologi 2 Gløer Olav Langslet Sandvika VGS Offline lagring med HTML5 Gløer Olav Langslet Sandvika VGS Leksjon 8 Informasjonsteknologi 2 Offline lagring I IT1 brukte vi databaser til å lagre data. Der kunne vi bygge tabeller og fylle dem med innhold

Detaljer

TDT4165 PROGRAMMING LANGUAGES. Exercise 02 Togvogn-skifting

TDT4165 PROGRAMMING LANGUAGES. Exercise 02 Togvogn-skifting TDT4165 PROGRAMMING LANGUAGES Fall 2012 Exercise 02 Togvogn-skifting Problembeskrivelse Du er sjef for å skifte vognene til et tog. Vi antar at hver vogn selv har en motor og at toget ikke har noe lokomotiv.

Detaljer

Programmering i C++ Løsningsforslag Eksamen høsten 2005

Programmering i C++ Løsningsforslag Eksamen høsten 2005 Programmering i C++ Eksamen høsten 2005 Simen Hagen Høgskolen i Oslo, Avdeling for Ingeniørutdanning 7. desember 2005 Generelt Denne eksamensoppgaven består av tre oppgaver, pluss en ekstraoppgave. Det

Detaljer

Tillitsforvaltning og inndatavalidering

Tillitsforvaltning og inndatavalidering Tillitsforvaltning og inndatavalidering Building Secure Software Kap. 12: Trust Management and Input Validation Håkon Velde hakonv@ii.uib.no 12. oktober 2005 INF329: Utvikling av sikre applikasjoner Innledning

Detaljer

EKSAMEN (Konvertert fra en gammel PHP-eksamen)

EKSAMEN (Konvertert fra en gammel PHP-eksamen) EKSAMEN (Konvertert fra en gammel PHP-eksamen) Emnekode: Emne: ITF10208 Webprogrammering 1 Dato: Eksamenstid: 06/12-2011 09.00-13.00 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater (håndskrevne/maskinskrevne)

Detaljer

SQL Server guide til e-lector

SQL Server guide til e-lector LES LETTERE, LES RASKERE, FÅ LESELYST! SQL Server guide til e-lector Innhold 1 Innledning... 2 2 SQL Express 2008 R2 installasjon... 2 3 Etter installasjon... 4 3.1 SQL Express... 4 3.1.1 Nettverksoppsett

Detaljer

JSP - 2. Fra sist. Hvordan fungerer web? Tjenerside script HTML. Installasjon av Web-tjener Et enkelt JSP-script. Ønsker dynamiske nettsider:

JSP - 2. Fra sist. Hvordan fungerer web? Tjenerside script HTML. Installasjon av Web-tjener Et enkelt JSP-script. Ønsker dynamiske nettsider: Fra sist JSP - 2 Installasjon av Web-tjener Et enkelt JSP-script HTML statisk Forms Tags Ønsker dynamiske nettsider: Klientside-script/programmering Javascript, vbscript, applets Tjenerside-script/programmering

Detaljer

Brukerveiledning for Intelligent Converters MySQL Migration Toolkit IKA Trøndelag IKS 2012

Brukerveiledning for Intelligent Converters MySQL Migration Toolkit IKA Trøndelag IKS 2012 Om verktøyet Formålet med dette verktøyet er å migrere informasjon fra en databasevariant til en annen, i denne veiledningen fra Oracle til MySQL. Dette gjøres som første ledd i en avleveringsprosess.

Detaljer

Applikasjonsutvikling med databaser

Applikasjonsutvikling med databaser Applikasjonsutvikling med databaser Lars Vidar Magnusson October 12, 2011 Lars Vidar Magnusson () Forelesning i DAS 10.10.2011 October 12, 2011 1 / 24 Applikasjonsutvikling med databaser Databaser tilbyr

Detaljer

TDT4102 Prosedyre og Objektorientert programmering Vår 2014

TDT4102 Prosedyre og Objektorientert programmering Vår 2014 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyre og Objektorientert programmering Vår 2014 Øving 10 Frist: 2014-04-11 Mål for denne øvinga:

Detaljer

Vanlige spørsmål om EndNote (april 2013)

Vanlige spørsmål om EndNote (april 2013) Vanlige spørsmål om EndNote (april 2013) Her er svar på en del vanlig spørsmål og problemer som kan dukke opp når du arbeider med EndNote. Innhold Import av referanser... 1 Hvis EndNote låser seg:... 2

Detaljer

Administrering av SafariSøk

Administrering av SafariSøk Administrering av SafariSøk Administrering av SafariSøk Revisjonshistorie Revisjon $Revision: 1.6 $ $Date: 2003/08/05 12:44:02 $ Innholdsfortegnelse 1. Om programmet... 1 Generelt... 1 2. Fremgangsmåter...

Detaljer

Siteimprove analytics Tekniske spesifikasjoner

Siteimprove analytics Tekniske spesifikasjoner Siteimprove analytics Tekniske spesifikasjoner whitepaper Hvem er Siteimprove? Siteimprove er den eneste softwaren innen web governance som gjør det lettere å administrere og opprettholde ditt nettsted

Detaljer

Compello Fakturagodkjenning Versjon 10 Software as a service. Tilgang til ny modulen Regnskapsføring

Compello Fakturagodkjenning Versjon 10 Software as a service. Tilgang til ny modulen Regnskapsføring Compello Fakturagodkjenning Versjon 10 Software as a service Tilgang til ny modulen Regnskapsføring Dokumentopplysninger 2018 Compello AS. Med enerett. Microsoft, MS-DOS og Windows er registrerte varemerker

Detaljer

Elektroniske sjekklister

Elektroniske sjekklister Opprette passord Elektroniske sjekklister Opprette passord Skriv inn denne adressen i nettleseren din og trykk enter: http://bit.ly/sjekklistepassord Du kan gjøre dette på mobilen, men det anbefales at

Detaljer

Brukermanual for kommuneansvarlig og testleder

Brukermanual for kommuneansvarlig og testleder Brukermanual for kommuneansvarlig og testleder Jegerprøveeksamen www.jegerproveeksamen.no Innholdsfortegnelse Kommuneansvarlig... 3 Testleder... 3 Opprette testsenter og testledere... 3 Teknisk godkjenning

Detaljer

Innføring i bruk av CGI4VB

Innføring i bruk av CGI4VB Innføring i bruk av CGI4VB Her kommer en enkel innføring i bruk av modulen CGI4VB som kan benyttes for å lage CGI programmer i Visual Basic. CGI er en forkortelse for Common Gateway Interface den kommunikasjonsprotokollen

Detaljer

Compello Fakturagodkjenning Versjon 10.5 As a Service. Tilgang til Compello Desktop - Regnskapsføring og Dokument import

Compello Fakturagodkjenning Versjon 10.5 As a Service. Tilgang til Compello Desktop - Regnskapsføring og Dokument import Compello Fakturagodkjenning Versjon 10.5 As a Service Tilgang til Compello Desktop - Regnskapsføring og Dokument import Dokumentopplysninger 2018 Compello AS. Med enerett. Microsoft, MS-DOS og Windows

Detaljer

Brukerdokumentasjon Prosjekt nr. 2011-16 PayEx Logistics

Brukerdokumentasjon Prosjekt nr. 2011-16 PayEx Logistics Side 1 av 17 Payex Logistics Brukermanual Ver. 1.0 31.05.2011 Gruppe 16 Høgskolen i Oslo Side 2 av 17 1 Innledning Denne brukerdokumentasjonen forklarer bruken av logistikksystemet som er laget for PayEx.

Detaljer

GraphQL. Hva, hvorfor, hvordan

GraphQL. Hva, hvorfor, hvordan GraphQL Hva, hvorfor, hvordan Dag Olav Prestegarden BouvetOne Nord, 4. mai 2017 Ikke dette Eller dette Men dette Noen problemer med web-apier i dag GraphQL som løsning Features ved GraphQL Agenda Skjemadefinisjon

Detaljer

EKSAMEN. Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00

EKSAMEN. Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00 EKSAMEN Emnekode: ITM20606 ITF10208 Dato: Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00 01/06-2010 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater

Detaljer

Multi-Faktor Autentisering. Brukerveiledning

Multi-Faktor Autentisering. Brukerveiledning Multi-Faktor Autentisering Brukerveiledning 1 Innhold Innledning... 3 Telefonanrop (standard)... 3 Oppsett... 3 Bruk... 3 Mobil App (valgfri)... 4 Oppsett... 4 Bruk... 5 Multi-Faktor portal...7 Pålogging...7

Detaljer

Programmet er utviklet av

Programmet er utviklet av Programmet er utviklet av TM Velkommen til Swf!t2 beta Oppfølgeren til open source publiseringssystemet Swf!t. Swf!t2 er et webbasert redigeringsverktøy for dine hjemmesider eller bedriftssider. Her kan

Detaljer

Hvordan å lage og publisere ditt personlige visittkort

Hvordan å lage og publisere ditt personlige visittkort Hvordan å lage og publisere ditt personlige visittkort Av Asle Skauge Dette skal være en bruksanvisning som alle kan følge for å få lagt ut sitt personlige visittkort på internett. Hensikten med et slikt

Detaljer

Ble ferdig med prosjektskisse. Sett på forskellige rammeverk for php. Lager milepæl for to uker.

Ble ferdig med prosjektskisse. Sett på forskellige rammeverk for php. Lager milepæl for to uker. Logg 22 oktober 2013 Vi skriver status rapport og starter også med å skrive logg idag. Vi har vært i kontakt med mange firmaer uten alt for mye interesse fra deres side. Vi fortsetter å søke etter oppgave.

Detaljer

Bachelorprosjekt i informasjonsteknologi, vår 2017

Bachelorprosjekt i informasjonsteknologi, vår 2017 Bachelorprosjekt i informasjonsteknologi, vår 2017 Gruppe 29: Marthe Janson Skogen, s236357, Ingeniørfag - data Odd Einar Hoel, s236313, Ingeniørfag - data Forprosjektrapport Rapporten inneholder presentasjon,

Detaljer

Fjerninnlogging over Internett

Fjerninnlogging over Internett Kapittel 9 Fjerninnlogging over Internett 9.1 Innledning I noen tilfeller har du behov for å kunne foreta innlogging på en Unix-basert fjern-datamaskin for å kunne utføre (operativsystem)kommandoer der,

Detaljer

Bygg et Hus. Steg 1: Prøv selv først. Sjekkliste. Introduksjon. Prøv selv

Bygg et Hus. Steg 1: Prøv selv først. Sjekkliste. Introduksjon. Prøv selv Bygg et Hus Introduksjon I denne leksjonen vil vi se litt på hvordan vi kan få en robot til å bygge et hus for oss. Underveis vil vi lære hvordan vi kan bruke løkker og funksjoner for å gjenta ting som

Detaljer

OWASP Norway, 24.april 2012. Ståle Pettersen

OWASP Norway, 24.april 2012. Ståle Pettersen Sikkerhet i mobile applikasjoner [P] OWASP Top 10 Risks Mobile Om meg Ståle Pettersen Java-utvikler og sikkerhetsentusiast BEKK OWASP twitter.com/kozmic OWASP Norway, 24.april 2012 Ståle Pettersen Mobile

Detaljer

Innhold. Innledning... 13

Innhold. Innledning... 13 Innhold Innledning.................................................... 13 Kapittel 1 Kom i gang med PHP............................................ 17 1.1 Hvorfor PHP?.............................................

Detaljer

TESTAPI. Deviations and Reporting

TESTAPI. Deviations and Reporting TESTAPI Deviations and Reporting FORORD Dette er samling av alle testapi PHP-skripter vi måtte skrive, da vi fant ut at oppdragsgiveren ikke rakk å skaffe oss ekte API for CEMAsys. Vi måtte ha API både

Detaljer

DBS18 - Strategier for Query-prosessering

DBS18 - Strategier for Query-prosessering Side 1 for Databaser DBS18 - Strategier for Query-prosessering søndag 22. mai 2016 13.03 Pensum 18.1-18.4, side 655-674, unntatt 18.4.4 og 18.4.5 En spørring som blir skrevet i et høynivå-språk, må bli

Detaljer

Øvingsforelesning 3 Python (TDT4110)

Øvingsforelesning 3 Python (TDT4110) Øvingsforelesning 3 Python (TDT4110) For og While-løkker Ole-Magnus Pedersen Oversikt Praktisk Info Gjennomgang av øving 1 Programmering for Øving 3 2 Studasser og Piazza Studasser er der for å hjelpe

Detaljer

Hjelpemidler: 4 A4-sider (2 to-sidige ark eller 4 en-sidige ark) med egenproduserte notater (håndskrevne/maskinskrevne)

Hjelpemidler: 4 A4-sider (2 to-sidige ark eller 4 en-sidige ark) med egenproduserte notater (håndskrevne/maskinskrevne) Informasjon om eksamen EKSAMEN Emnekode: ITF10213 Emnenavn: Innføring i programmering Dato: 05/12-2017 Eksamenstid: 09.00-13.00, 4 timer Hjelpemidler: 4 A4-sider (2 to-sidige ark eller 4 en-sidige ark)

Detaljer

For å sjekke at Python virker som det skal begynner vi med å lage et kjempeenkelt program. Vi vil bare skrive en enkel hilsen på skjermen.

For å sjekke at Python virker som det skal begynner vi med å lage et kjempeenkelt program. Vi vil bare skrive en enkel hilsen på skjermen. Kuprat Skrevet av: Geir Arne Hjelle Kurs: Python Tema: Tekstbasert Fag: Norsk Klassetrinn: 5.-7. klasse, 8.-10. klasse Introduksjon I dette kurset skal vi introdusere programmeringsspråket Python. Dette

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 11. mai 2004 Varighet: Fagnummer: Fagnavn: Klasse(r): 3 timer LV197D Webprogrammering med PHP FU Studiepoeng:

Detaljer

Småteknisk Cantor Controller installasjon

Småteknisk Cantor Controller installasjon Cantor AS Småteknisk Cantor Controller installasjon 10.10.2012 INSTALLASJON OG OPPSETT AV CANTOR CONTROLLER 3 Nedlasting av programfiler 3 Nyinstallasjon server / enbruker 3 A. Controller instansen som

Detaljer

Testrapport Prosjekt nr. 2011-22 Det Norske Veritas

Testrapport Prosjekt nr. 2011-22 Det Norske Veritas Prosjekt nr. 2011 22 Testrapport Hovedprosjektets tittel Implementering av plugin og utvikling av wizard for Det Norske Veritas Prosjektdeltakere Magnus Strand Nekstad s156159 Jørgen Rønbeck s135779 Dato

Detaljer

JavaScriptbibliotek. Introduksjon MVVC. Informasjonsteknologi 2. Gløer Olav Langslet Sandvika VGS

JavaScriptbibliotek. Introduksjon MVVC. Informasjonsteknologi 2. Gløer Olav Langslet Sandvika VGS MVVC JavaScriptbibliotek Gløer Olav Langslet Sandvika VGS Knockout.js Informasjonsteknologi 2 Introduksjon I dag skal vi se nærmere på et JavaScriptbibliotek som heter Knockout. Knockout og andre biblioteker,

Detaljer

GENERELL BRUKERVEILEDNING WEBLINE

GENERELL BRUKERVEILEDNING WEBLINE Side 1 av 10 INNHOLDSFORTEGNELSE 1. FORMÅL MED DOKUMENTET... 3 2. TILGANG TIL PORTALEN... 4 3. TILGJENGELIGE TJENESTER/MODULER... 5 3.1 ADMIN... 5 3.2 NORDIC CONNECT/IP VPN... 5 3.3 INTERNETT INFORMASJON...

Detaljer

Brukerdokumentasjon. Webservices og webklient for kodeverk/ kodeverdi verifisering

Brukerdokumentasjon. Webservices og webklient for kodeverk/ kodeverdi verifisering Brukerdokumentasjon Webservices og webklient for kodeverk/ kodeverdi verifisering Innholdsfortegnelse... 3... 3... 3... 3... 4... 4... 4... 4... 8... 9... 10!... 10 "... 11 # $... 11 1. Om systemet 1.1.

Detaljer

TDT4110 IT Grunnkurs Høst 2012

TDT4110 IT Grunnkurs Høst 2012 TDT4110 IT Grunnkurs Høst 2012 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Auditorieøving 2 Navn: Linje: Brukernavn: Oppgavesettet inneholder 5 oppgaver.

Detaljer

Øvingsforelesning 5 Python (TDT4110)

Øvingsforelesning 5 Python (TDT4110) Øvingsforelesning 5 Python (TDT4110) Repetisjon av løkker og funksjoner Ole-Magnus Pedersen Oversikt Praktisk Info Gjennomgang av Øving 3 Repetisjon 2 Praktisk info Prosjekter i PyCharm må startes med

Detaljer

Veiledning til Grønt Flagg søknadsportal

Veiledning til Grønt Flagg søknadsportal Veiledning til Grønt Flagg søknadsportal Registrering av bruker: Registrer deg som bruker i FEE Norway sin søknadsportal fra http://soknad.fee.no. Dette må gjøres for å få tilsendt brukernavn og passord,

Detaljer

Øvingsforelesning 5 Python (TDT4110)

Øvingsforelesning 5 Python (TDT4110) Øvingsforelesning 5 Python (TDT4110) Repetisjon av løkker og funksjoner Ole-Magnus Pedersen Oversikt Praktisk Info Gjennomgang av Øving 3 Repetisjon 2 Praktisk info Prosjekter i PyCharm må startes med

Detaljer

KPS kontaktdatase Driftsveiledning

KPS kontaktdatase Driftsveiledning KPS kontaktdatase Driftsveiledning Dettte dokumentet er beregnet for IT/driftsansvarlige, og inneholder ikke brukerveiledning for KPS kontaktdatabase. Brukerveiledning finnes på denne adressen http://www.eilert.no/kps/bruksanvisning.html

Detaljer

RUTEPLANLEGGINGSSYSTEM BRUKERVEILEDNING

RUTEPLANLEGGINGSSYSTEM BRUKERVEILEDNING RUTEPLANLEGGINGSSYSTEM BRUKERVEILEDNING Prosjekt 18 Jørgen Mobekk Sørensen Morten Evje Tor Andreas Baakind Anders Gabrielsen Side 1 1 FORORD Dette dokumentet er brukerveiledningen, og skal være en veiledning

Detaljer

Om verktøyet. Installering av MySQL Migration Toolkit. Installer toolkitet. Brukerveiledning til Intelligent Converters MySQL Migration Toolkit

Om verktøyet. Installering av MySQL Migration Toolkit. Installer toolkitet. Brukerveiledning til Intelligent Converters MySQL Migration Toolkit Om verktøyet Formålet med dette verktøyet er å migrere informasjon fra en databasevariant til en annen, i denne veiledningen fra Oracle til MySQL. Dette gjøres som første ledd i en avleveringsprosess.

Detaljer

Brukerveiledning for http://nyhetsbrev.us/ For å opprette en ny bruker vennligst send en epost til post@wam.no

Brukerveiledning for http://nyhetsbrev.us/ For å opprette en ny bruker vennligst send en epost til post@wam.no Brukerveiledning for http://nyhetsbrev.us/ For å opprette en ny bruker vennligst send en epost til post@wam.no Innlogging 3.. Skriv inn url-adressen til nyhetsbrev.us i nettleseren. Du kan eventuellt skrive

Detaljer

9. ASP med databasekopling, del II

9. ASP med databasekopling, del II Else Lervik 23.03.2004 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LV192D Web-programmering med ASP 9. Resymé: I forrige leksjon så vi hvordan ASP kunne brukes til å vise

Detaljer