SQLi süstimine ASP.NET, ADO.NET ja MS SQL serveris

Suurus: px
Alustada lehe näitamist:

Download "SQLi süstimine ASP.NET, ADO.NET ja MS SQL serveris"

Väljavõte

1 SQLi süstimine ASP.NET, ADO.NET ja MS SQL serveris 14. aprill :50 Autor: AM (Arvutimaailm 4/10, veebis on autori täispikk versioon, lõpus lisandina RTF dokument originaalkujundusega)? MS SQL Server on paljude veebirakenduste andmebaasimootor ja tänu oma rikkalikele programmeerimisvõimalustele väga sobilik SQLi süstimiseks. Kuidas sellest hoiduda?! Järjest uuemates SQL Serveri versioonides on küll kasutusel järjest paremad tehnikad süstimise vältimiseks, kuid parim tõrje on ikkagi programmeerija hea töö. SQLi süstimine, tuntud ka kui SQL INJECTION, on CWE/SANS aasta aruande ( kohaselt küberkuritegevuses kasutatavatest tehnikatest teisel kohal. MS SQL Server on paljude veebirakenduste andmebaasimootor ja tänu oma rikkalikele programmeerimisvõimalustele väga sobilik SQLi süstimiseks. Järjest uuemates SQL Serveri versioonides on küll kasutusel järjest paremad tehnikad süstimise vältimiseks (TEXTCOPY utiliidi keelamine, DDL päästikprotsessid, operatsioonisüsteemi poole pöörduvate süsteemsete protseduuride aktiveerimiseks tuleb ligipääs eraldi lubada jne.), kuid parim tõrje on ikkagi programmeerija poolt õieti ja teadlikult süstimist vältivate lausekonstruktsioonide koostamine. SQL süstimine ise toimub nõnda, et teadlikult valitud sisendparameetrite koostamisega saab muuta algset, programmeerija poolt loodud baasipäringu loogika mõtet. Näiteks alljärgnev andmebaasi päring ASP.NET-is, kus tuleb sisestada kasutaja ID, ja kui selline kasutaja baasist leitakse, siis tehakse midagi, vastasel juhul väljastatakse veateade: SqlCommand komm = new SqlCommand(@"SELECT TOP 1 name FROM dbo.users WHERE [ID] =" + this.textboxuserid.text.trim()); Object o = komm.executescalar(); if (o.equals(dbnull.value)) throw new InvalidOperationException("Vale kasutaja"); else // tee midagi Kui tabeli USERS väli ID on INT tüüpi ja sisestuskasti sisestatakse number 3, siis baasipäring, mida täitma asutakse, on SELECT TOP 1 name FROM dbo.users WHERE ID = 3 ehk päringu loogika langeb kokku sellega, mida arendaja mõtles. Süstija muudab aga baasipäringu loogikat, valides uued sisendaparameetrid, ütleme 3 OR 1=1. Seega saadetakse andmebaasimootorile täitmiseks päring SELECT TOP 1 name FROM dbo.users WHERE ID = 3 OR 1=1 Ehk siis algselt mõeldud ostingutingimuse loogika ID = 3 laieneb hoopis kujule ID = 3 OR 1=1, mis tähendab, et kui tabelis leidub mistahes kirjeid, siis üks kirje väljastatakse alati tänu muudetud loogikatingimusele OR 1=1, ehk 1=1 on alati tõene. Andmete väljatõmbamiseks kasutatakse SQLi süstimises erinevaid läbistustestimisvahendeid, mille abil võrreldakse erinevust serverile normaalse parameetri ja muudetud parameetriga esitatud päringu vastustes. Lihtne testmeetod selle erisuse väljatoomiseks on võrrelda näiteks baasipäringute SELECT TOP 1 name FROM dbo.users WHERE ID = 3 ja SELECT TOP 1 name FROM dbo.users WHERE ID = 3-1 esitamise teel erinevusi serveri poolt saadetud vastustes. Baasipäringule etteantavat parameetrit saab kohandada näiteks sirvikul URL parameetrit muutes ning seejärel visuaalselt väljundi erinevust võrreldes: Muuta saab ka HiddenField tüüpi muutujate sisu või SOAP päringute parameetreid.

2 Andmebaaside puistamise võtteid -Tehete järjekorra alusel: SELECT TOP 1 name FROM dbo.users WHERE ID = 3 - CASEWHEN SUBSTRING(@@SERVERNAME,1,1) = CHAR(65) THEN 1 ELSE 0 END Võrdustehe tehakse viimasena. Kräkker kasutab siin meetodit, kus võrreldakse parameetri muutmise teel muutuvat väljundit, CHAR(65), CHAR(66), CHAR(67) jne ehk kui serveri nime esimene täht langeb kokku CHAR funktsiooni poolt tagastatava sümboliga, peab väljund muutuma. Selle meetodiga otsitakse kindlaksmääratud stringi serveri vastuses. - Veateadetel põhinevad SELECT TOP 1 name FROM dbo.users WHERE ID = 3 / CASEWHEN SUBSTRING(@@SERVERNAME,1,1) = CHAR(65) THEN 0 ELSE 1 END Kui serveri nime esitäht langeb kokku CHAR funkstoooni poolt tagastatava sümboliga, on tulemuseks nulliga jagamine ehk SQLSERVER annab veateate Divide by zero encoutered. Kui see tekst leitakse tagastatavas väljundis, on serveri nime esitäht teada. Näiteks, kui ASP.NET kood on kirjutatud järgmise konstruktsioonina try using(...) //andmebaasi poole pöördumine... catch(systemexception ex) this.customvalidator1.errormessage = ex.message; this.customvalidator1.isvalid = false; Siis sirviku pilt paistab niimoodi, ehk serveri nime esitäht on CHAR(86) - Otsene veateate tekitamine SELECT TOP 1 name FROM dbo.users WHERE ID = 3/@@SERVERNAME Antud juhul tekib tüübierinevus jagataval ja jagajal, veateade aga, mis serverist seepeale tuleb: Conversion failed when converting the nvarchar value 'SINUSERVERINIMI' to data type int,annab kräkkerile vajaliku info. - Kahendotsingut võimaldavad SELECT TOP 1 name FROM dbo.users WHERE ID = 3 AND ASCII(SUBSTRING(@@SERVERNAME,1,1)) < 76 ASCII('L')on number 76, 'A'-'Z' on numbrid 65 90, binaarotsingut kasutades ei pea järjestikku ükshaaval väärtusi kontrollima, vaid saab need palju vähema katsete arvuga kätte.

3 - Stringi lõpetamine ja väljakommenteerimine Ülakoma on SQL-is stringi lõpetaja ja - rea kommentaar, kõik mis on peale - loetakse kommentaariks ja andmebaasi mootori poolt täitmisele ei võeta. See meetod on eriti ablas string tüüpi muutujatele. Näiteks on andmebaasis vaja sooritada päring: SELECT ID FROM dbo.users WHERE NAME = 'NIMI' ASP.NET koodis konstrueeritakse vajalik avaldis nii: stringnimi=this.textboxusername.text.trim(); SqlCommandkomm = new SqlCommand(@"SELECT ID FROM dbo.users WHERE NAME ='"+ nimi +"'"); Sobivalt valitud sisendiga NIMI' OR 1=1 -- saab aga muuta SQL lause loogikat: SELECT ID FROM dbo.users WHERE NAME ='NIMI'OR 1=1 --' Kuna 1=1 on alati tõene ja kasutatakse OR tehet, mis on tõene kui üks operand on tõene, siis päringu tulemusena saadakse baasist tunduvalt rohkem andmeid kui algselt ette nähtud. - Pakettpäringud, semikooloniga ründeavaldis SELECT TOP 1 name FROM dbo.users WHERE ID = 3;SELECTCASE WHEN SUBSTRING(@@SERVERNAME,1,1) = CHAR(65) THEN 1/0 ELSE 0 END Semikoolon ; on MSSQL lause lõpu märgend. Kõik mis peale ; tuleb, loetakse eraldi SQL lauseks ehk tegu on kahe erineva SQL lausega: SELECT TOP 1 name FROM dbo.users WHERE ID = 3 ja SELECTCASE WHEN SUBSTRING(@@SERVERNAME,1,1) = CHAR(65) THEN 1/0 ELSE 0 END Uus sisendparameetri SQL lausekonstruktsioon lisab algsele SQL lause loogikale veateate tekitamise osa analoogselt ülalkirjeldatuga. - Ajalise viivituse kasutamine pakettpäringuga (Blind Injection). Kui serveri vastusest veateadet välja ei loe ja ka tagastatav väljund ei muutu, saab kräkker kasutada ajalist viivitust ehk võrrelda serverile esitatud päringu ja saabuva vastuse ajavahemikku. SELECT TOP 1 name FROM dbo.users WHERE ID = 3; IFSUBSTRING(@@SERVERNAME,1,1) = CHAR(65) DELAY '00:00:04' WAITFOR Mis masinkeelest tõlgituna tähendab: kui serveri nime esitäht on CHAR(65) ehk A, oota 4 sekundit. Ründaja poolt mõõdetakse, kas tekib ajalist erinevust serverist saabuvates vastustes. - UNION ründeavaldis Tõmbab andmebaasist välja rohkem kui algselt mõeldud. Näiteks algne avaldis: SELECTdropdowntekst FROM aspdrop WHERE ID=2 Kräkkeri poolt modifitseerituna SELECTdropdowntekst FROM aspdrop WHERE ID=2 UNIONALL Lisaks algselt mõeldud andmetele saadakse selle päringuga veel ka serveri nimi. See meetod võimaldab korraga ja kiiresti palju andmeid kätte saada. Sellega suudab kräkker ka andmebaasi väljundi enda kasuks keerata, näiteks seda järjestades: SELECTdropdowntekst FROM aspdrop WHERE ID=2 UNIONALL ORDER BY 1 DESC SQL süstimise omapära võrreldes teise meetoditega on see, et pole vaja täiendavaid komponente ( troojalast, käomuna jne.) Kogu vajalik tehniline arsenal on SQL Server-is endas olemas. SQL Server aga ise on suure jõudlusega arvuti.

4 Vältimine SQL süstimise vältimiseks on hea, kui saadakse aru, kuidas MS SQL Server töötleb temale esitatud päringuid. Seda saab vaadata SQL Profileri nimelise utiliidiga. SQL süstimise jälgimiseks tuleb Event-idest valida SQL:BatchStarting, SQL:StmtStarting, SQL:StmtCompleted, SQL:BatchCompleted SQL lause SELECTTOP 1 name FROM dbo.users WHERE ID = 3 AND ASCII(SUBSTRING(@@SERVERNAME,1,1)) < 76 töötamine näeb Profileris välja nii Pakettpäringu täitmine SELECT TOP 1 name FROM dbo.users WHERE ID = 3;SELECT CASE WHEN SUBSTRING(@@SERVERNAME,1,1) = CHAR(65) THEN 1/0 ELSE 0 END Semikoolon on SQL Serveris lause lõpetaja ja seetõttu täidetakse SQL Serveris kahte eraldi lauset. Mida saab programmeerija teha? SQL süstimist saab parametriseeritud päringute korral vältida tüübiteisendustega. Kirjutame ASP.NET-is andmebaasi poole pöördumise ümber parametriseeritud päringuna. SqlCommandkomm = new SqlCommand(@"SELECT TOP 1 name FROM dbo.users WHERE [ID] komm.parameters.addwithvalue("@id", Convert.ToInt32(this.TextBoxUserId.Text.Trim())); Objecto = komm.executescalar(); Kui nüüd seda lauset täita erinevate SQL süstimise sisenditega 3 - CASEWHEN SUBSTRING(@@SERVERNAME,1,1) = CHAR(65) THEN 1 ELSE 0 END 3 ANDASCII(SUBSTRING(@@SERVERNAME,1,1)) < 76 3;SELECTCASE WHEN SUBSTRING(@@SERVERNAME,1,1) = CHAR(65) THEN 1/0 ELSE 0 END 3/@@SERVERNAME jõuab programm koodi täitmisel kohani komm.parameters.addwithvalue("@id", Convert.ToInt32(this.TextBoxUserId.Text.Trim())); kus sisendit hakatakse pöörama Convert.ToInt32(this.TextBoxUserId.Text.Trim()) int andmetüübiks, tulemuseks ASP.NET veateade Input string was not in a correct formatehk SQL Serverini lause täitmine ei jõuagi. Parametriseeritud päringu parameetri saab kirjeldada ka nii:

5 System.Data.SqlDbType.Int); = this.textboxuserid.text.trim(); Veateade, mis tuleb Failed to convert parameter value from a String to a Int32. on erinev, aga see saadakse seekord juba ADO.NET-ist. Kuna oodatakse INT tüüpi parameetrit, siis tüübiteisendus kaitseb SQL süstimise vastu. Sama tüübipööramise kaitset saab ju tegelikult kasutada ka ilma parametriseeritud päringute kasutamisega, kirjutades SQL lause alljärgnevalt: SqlCommandkomm = new SqlCommand(@"SELECT TOP 1 name FROM dbo.users WHERE [ID] ="+ Convert.ToInt32(this.TextBoxUserId.Text.Trim()).ToString()); Põhimõtteline vahe on selles, kuidas SQL Server parametriseeritud päringut käivitab. Seda saab jälle täpselt järele vaadata SQL Profileriga. Parametriseeritud päringu puhul näeb SQL lause täitmine SQL Profileris välja nii: SQL lause käivitamiseks kasutatakse käivitusplaani tegevat protseduuri sp_executesql, mis jätab täidetud lause ka SQL Serveri Execution Plan Cache-sse taaskasutamiseks. SQL lause ise jääb muutmatuks, ainult parameeteri väärtused muutuvad, kui sama lauset uuesti kasutada. Sellele, mida sisse antakse, ülejäänud SQL lausel ligipääsu ei ole, ehk see, mis parameetrisse kirjutatakse, sinna ka sisse jääb. Kui ülaltoodud näites parameeter määrata niimoodi komm.parameters.add("@id", System.Data.SqlDbType.Int); komm.parameters["@id"].value = this.textboxuserid.text.trim(); siis SQL Serverisse päringu saatmiseks üritab ADO.NET kräkkeri poolt antud sisendaparameetrit 3-1 pöörata tüüpi Int32, mis aga ei õnnestu ja tulemuseks saab ta tüübipööramisel veateate Failed to convert parameter value from a String to a Int32. SQL süstimise vältimine parametriseeritud päringutega. Kui parameetriks on string tüüpi muutuja, siis tüübiteisendusest abi pole. SqlCommandkomm = new SqlCommand(@"SELECT ID FROM dbo.users WHERE NAME Aga nagu öeldud, parametriseeritud päringu korral SQL lausele parameetrile ligipääsu pole komm.parameters.addwithvalue("@nimi", this.textboxusername.text.trim()); ehk kui üritada eespoolt toodud kräkkimist sisendiga SIIA' OR 1=1 -- siis SQL Profiler näitab lause täitmist niimoodi. Ehk sisendit SIIA' OR 1=1 - käsitletaksegi nii nagu ta on ehk sellist stringi andmebaasist otsitaksegi ja SQL süstimise rünnak ei õnnestu. Stringi tüübipööramine ja parameetri arvamine Mida parametriseeritud päringute ja tüübipööramiste puhul tuleb tähele panna on see, kuidas ASP.NET ja SQL Server stringi käsitlevad. ASP.NET-is on stringid Unicode formaadis, millele SQL Serveris vastab NVARCHAR andmetüüp. Kui nüüd näiteks andmebaasi väli IDCODE on VARCHAR tüüpi ja saata sooritamiseks järgmine päring

6 SqlCommandkomm = new SqlCommand(@"SELECT ID FROM dbo.users WHERE IDCODE komm.parameters.addwithvalue("@inimi", this.textboxuseridcode.text.trim()); ja TextBoxUserIdCode sisestada 3, näitab SQL profiler järgmist pilti Kui aga TextBoxUserIdCode sisestada 345, näitab SQL profiler järgmist pilti Pahasti on siin see, et andmebaasi tabeli väli on tüüpi VARCHAR, aga parameetri tüüp on NVARCHAR ehk SQL Server hakkab tegema tüübiteisendust, mis võtab indeksi kasutamise ja koos sellega ka päringu kiiruse maha. Samas SQL Server ei tea, kui pikk string sisse antakse. Kui antakse 3, siis muutuja tüübiks tuleb NVARCHAR(1), kui aga sisendiks 345, siis muutuja tüübiks NVARCHAR(3) ehk tegu on SQL Serveri jaoks kahe erineva andmetüübiga. Sellest tulenevalt rakenduvad ka erinevad käivitusplaanid. Käivitusplaanide puhvri sisu saab vaadata päringuga SELECTusecounts, cacheobjtype, objtype, text FROMsys.dm_exec_cached_plans CROSS APPLY sys.dm_exec_sql_text(plan_handle) WHEREusecounts > 1 Probleemi saab vältida parameetri tüübi määramisega, ehk kasutame konstruktsiooni komm.parameters.add("@inimi",sqldbtype.varchar,15); komm.parameters["@inimi"].value = this.textboxuseridcode.text.trim(); Nüüd pole enam vahet, kas sisestada 3 või 345, SQL Profileris paistab pilt mõlemal puhul ühtemoodi. ADO.NET eeldab muidu ise, et kõik parameetrid, millel pole tüüpi otseselt määratud, on Unicode formaadis ehk SQL Server-ini jõuab andmetüüp NVARCHAR. Ehk parameetrit ilma tüübita kirjeldades komm.parameters.addwithvalue("@id", this.textboxuserid.text.trim()); näeb käivitusplaan välja järgmine: Kui nüüd parameetriks sisestada 3-1, üritab sp_executesql täita lauset SQL süstimise hoiab ära tüübipööramine SQL Server-is ja tulemuseks saame veateate Conversion failed when converting the nvarchar value '3-1' to data type int. Paha on see, et see veateade tuleb juba SQL Serverist, ehk kräkker on läbistanud mitu andmevahetuskihti. Numbrite puhul eeldab SQL Server vaikimisi tüübiks INT, kuid ADO.NET on ise õnneks vägagi andekas: komm.parameters.addwithvalue("@id", Convert.ToInt16(Request.QueryString["id"].ToString()));

7 täidetaksegi kui SMALLINT, ehk Convert.ToInt16 vastab SQL Serveris SMALLINT andmetüüp ning andmebaasimootori pooolt läheb täitmisele järgnev parametriseeritud päring: exec sp_executesql N'SELECT TOP 1 [name] FROM [dbo].[users] WHERE [ID] smallint',@id=2 User Defined Functions väljakutsumine MS SQL ServerI-sse tehtud kasutajafunktsioonid on süstitavad sisendi kräkkimisel pakettpäringuks. Kirjutame SQL lause üle funktsiooniks CREATEFUNCTION [dbo].[id_nimi](@nimi NVARCHAR(50)) RETURNSINT AS BEGIN DECLARE@ret INT SET@ret=( SELECT ID FROM dbo.users WHERE NAME RETURN@ret END Koostame ASP.NET funktsiooni poole pöördumise komm = new SqlCommand(@"SELECT [dbo].[id_nimi] ('" + this.textboxsisu.text.trim() + "')"); Antud pöördumine andmebaasi on süstitav pakettpäringuna koostatud sisendiga: NIMI'); DELETE FROM [dbo].[users]-- Andmebaasis täidetakse kahte SQL lauset, semikooloniga eraldatakse esimene SELECT [dbo].[id_nimi] ('NIMI'); ja teise lause jaoks kommenteeritakse välja algse lause lõpp DELETE FROM [dbo].[users] --') Vältida saab seda parameetritega funktsiooni väljakutsumisel SqlCommandkomm = new SqlCommand(@"SELECT [dbo].[id_nimi](@nimi)"); komm.parameters.addwithvalue("@nimi", this.textboxsisu.text.trim()); SQL Profileris pilt selline: Remote Procedure Call käsitleb kõike parameetrisse sisseantud nii nagu see on ja kräkkeri sisend SQL lauset ennast muutma ei ulata. Salvestatud protseduuride kasutamine Alates SQL2005 Service Pack 2-st oskab MS SQL Server string tüüpi parameetreid automaatselt lühemaks lõigata. Näiteks pikkuseks on NVARCHAR(50) ja kui peaks sisestatama üle 50 märgi, siis lõpp lõigatakse salvestatud protseduuri väljakutsumisel maha. Siit ka hea põhjus salvestatud protseduuride kasutamiseks - kräkkeril muutub sobiva ründeavaldise koostamine raskemaks. Ülaltoodud näidetes toodud SQL väljakutsumise saab salvestatud protseduuris teha kolmel erineval viisil, mis kõik annavad sama tulemuse. ALTERPROCEDURE NVARCHAR(50) AS BEGIN

8 SETNOCOUNT ON NVARCHAR(MAX) SELECTID FROM dbo.users WHERE NAME SET@sql='SELECT ID FROM dbo.users WHERE NAME SET@sql='SELECT ID FROM dbo.users WHERE NAME = '''+@nimi+'''' EXECUTE(@sql) END SQL Profiler näitab lausete täitmist niimoodi: SELECTID FROM dbo.users WHERE NAME täidetakse niimoodi SET@sql='SELECT ID FROM dbo.users WHERE NAME täidetakse niimoodi ja SET@sql='SELECT ID FROM dbo.users WHERE NAME = '''+@nimi+'''' EXECUTE(@sql) täidetakse niimoodi Salvestatud protseduuride kasutamine iseenesest ei taga kaitset SQL süstimise vastu. Oluline on ka teada, kuidas SQL lause salvestatud

9 protseduuris koostatakse ja käivitatakse Käivitades täidetakse seda kui SQL AdHoc päringut, mis on vastuvõtlik SQL süstmisele. Sobivalt valitud sisendiga NIMI'; DELETE FROM [dbo].[users] -- saab baasipäringu rekonstruktreerida pakettpäringuks Ehk täidetakse juba kahte eraldi SQL lauset nii nagu kräkker seda tahab. Dünaamilise SQL-i kasutamine Mõnel juhul ei saa kasuta parametriseeritud päringud (Prepared statement), näiteks kui on vaja kooostada muutuvate veergude arvuga päring. Sel juhul tuleb SQL lause omavahel osadest kokku liita ja see on olemuselt vastuvõtlik SQL süstimisele. Tõrjeks annab alati kasutada tüübipööramist, kas.net koodis või SQL Serveris endas. Number pööratakse integeriks ja tagasi stringiks, juhul kui sisend on modifitseeritud, saab veateate..net-is SQL-is Convert.ToInt32(this.TextBoxUserId.Text.Trim()).ToString()) NVARCHAR(MAX) TOP 1 name FROM dbo.users WHERE ID = '+CAST(CAST(@nimi AS INT) AS NVARCHAR(50)) Stringi polsterdamine Dünaamilise SQL lause saab SQL Serveris ohutult kokku panna polsterdamisega SELECT'' -- saame tühja stringi SELECT'''' --saame ülakoma ehk lõpetame või alustame stringi SELECT'''''' --saame kaks ülakoma mis annavad ülakoma sümboli mis aga ei lõpeta ega alusta stringi Koostame SQL lause, polsterdades stringi tüüpi SET@sql='SELECT ID FROM dbo.users WHERE NAME = '''+REPLACE(@nimi,'''','''''')+'''' EXECUTE(@sql) Protseduuri sisseantavas polsterdame ühekordse ülakoma kahekordseks, ehk ei luba kräkkeri poolt stringi lõpetamist. SQL truncation Polsterdamise kõrvalnäht on see, et REPLACE(@nimi,'''','''''') teeb ühest ülakomast kaks, ehk ruumi SQL lause enda stringi mahust võetakse topelt. muutuja võtta pikkusega NVARCHAR(60) ja kui SQL lauset koostatada nii, et parameetrid NVARCHAR(20) ja@id INT, väärtusteks vastavalt 'Aia' ja 3 SET@sql='UPDATE dbo.users SET NAME = '''+REPLACE(@nimi,'''','''''')+''' WHERE ID = '+CAST(@id AS NVARCHAR(10))

10 Kräkker aga duubeldab osavalt sisu, ehk REPLACE lause teeb ühest ülakomast kaks, kui kräkkeri sisend on näiteks '''''''''''''''''''''''''''Aia' siis tulemus pole päris see, mis mõeldi, WHERE osa on lausest kadunud. Odav variant SQL TRUNCATION rünnaku tõrjumiseks on SQL lause muutuja defineerida 2GB mahuga, ehk NVARCHAR(MAX). Ära ei maksaks põlata ka LEFT() funktsiooni, mis võtab parameetrist ainult kindlaksmääratud pikkusega osa. Koodi tasemel SQL süstimise tõrjeks võib kasutada ka näiteks SQL kommentaari väljalõikamist aga riske, mida taoline väljalõikamine endaga kõrvalnähuna kaasa võib tuua, tuleb eelnevalt hinnata. Alati tuleb kasutada igasuguse sisendi kontrollimist ja parameetrite tüübiteisendust. Alati tuleb rakendada igasuguse sisendi ja parameetrite tüübi kontrollimist. SqlDataSource SqlDataSource jälgib parametriseeritud päringute mõtet, eelnevalt tehtud User Defined Functioni kasutamine SqlDataSource-na ja <asp:sqldatasourceid="sqldatasource1" runat="server" DataSourceMode="DataReader" SelectCommand="SELECT AS Expr1"> <SelectParameters> <asp:parameter Name="nimi" /> </SelectParameters> </asp:sqldatasource> käivitamine näeb SQL Profileris välja parametriseeritud päringu kasutamisena kuid SQL Server üritab taas parameetri tüüpi ära arvata. Määrates otseselt parameetri andmetüübi <asp:parametername="nimi" DbType="String" Size="50" /> saame aga SQL Server-i sõbralikuma lähenemise. LINQ to SQL Olemuselt tugev tüübiteisendus [Column(Storage="_name", DbType="NVarChar(50) NOT NULL", CanBeNull=false)] publicstring name get return this._name; set

11 if ((this._name!= value)) this.onnamechanging(value); this.sendpropertychanging(); this._name = value; this.sendpropertychanged("name"); this.onnamechanged(); Koostame Ling to SQL baasipäringu ja käivitame selle. varquery = from kasutaja in tabelid.users where kasutaja.name == this.textboxsisu.text.trim() select kasutaja.id; List<int> nimed = query.tolist(); if(nimed.count > 0) this.textboxsisu.text = nimed[0].tostring(); Linq to SQL kasutab parametriseeritud päringut, kuid tegeleb ka parameetri arvamisega. Erinevate string tüüpi parameetri väärtuste korral saame erinevad käivitusplaanid, kuid SQL süstimine on välditud. Kokkuvõte Täiuslikke süsteeme pole olemas, kuid igale ohule saab leida vasturohu. Kübersõdade võitmiseks tuleb kaitsmine odavaks ja ründamine kalliks teha. Arendagem tarkvara teadlikult. Kuido Külm tarkvaraarendaja Lahendused Tarkvara Turvalisus

SQL

SQL SQL Kuues loeng 3GL inside 4GL Protseduurid Funktsioonid Tavalised Funktsioonid (üks väljund) Ilma väljundita Protseduurid Viitargumentide kasutamise võimalus Tabel-väljundiga Protseduurid Create function

Rohkem

Microsoft Word - ref - Romet Piho - Tutorial D.doc

Microsoft Word - ref - Romet Piho - Tutorial D.doc Tartu Ülikool Andmetöötluskeel "Tutorial D" realisatsiooni "Rel" põhjal Referaat aines Tarkvaratehnika Romet Piho Informaatika 2 Juhendaja Indrek Sander Tartu 2005 Sissejuhatus Tänapäeval on niinimetatud

Rohkem

Pealkiri

Pealkiri Andmebaasid (6EAP) I praktikum Mida praktikumides tehakse? Õpitakse SQL i Tehakse andmebaas ope (igas praktikumis natuke, kuni lõpuks saab valmis) Tehakse andmebaas edu (kui ope on valmis, tehakse edu,

Rohkem

Pealkiri

Pealkiri Andmebaasid II praktikum Andmebaaside administreerimine Andmete sisestamine KESKKOND, KASUTAJAD, ÕIGUSED Mõisted Tabelid, vaated, trigerid, jpm on objektid Objektid on grupeeritud skeemi Skeemid moodustavad

Rohkem

Microsoft Word - requirements.doc

Microsoft Word - requirements.doc Dokumendi ajalugu: Versioon Kuupäev Tegevus Autor 1.0 04.03.2008 Dokumendi loomine Madis Abel 1.1 09.03.2008 Kasutuslugude loomine Madis Abel 1.2 12.03.2008 Kasutuslugude täiendused Andres Kalle 1.3 13.03.2008

Rohkem

SAF 7 demo paigaldus. 1.Eeldused SAF 7 demo vajab 32- või 64-bitist Windows 7, Window 8, Windows 10, Windows Server 2008 R2, Windows Server 2012, Wind

SAF 7 demo paigaldus. 1.Eeldused SAF 7 demo vajab 32- või 64-bitist Windows 7, Window 8, Windows 10, Windows Server 2008 R2, Windows Server 2012, Wind SAF 7 demo paigaldus. 1.Eeldused SAF 7 demo vajab 32- või 64-bitist Windows 7, Window 8, Windows 10, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2, Windows Server 2016 või Windows

Rohkem

SQL

SQL SQL Teine loeng Mõtelda CREATE TABLE ( { INTEGER VARCHAR(10)} [ NOT NULL] ); Standard SQL-86 (ANSI X3.135-1986), ISO võttis üle 1987 SQL-89 (ANSIX3.135-1989) SQL-92 (ISO/IEC 9075:1992)

Rohkem

Microsoft Word - Referaat.docx

Microsoft Word - Referaat.docx Tartu Ülikool Andmeturve Referaat teemal: CVE-2016-1499 Koostaja: Sander Sats Kursus: Informaatika Tartu 2016 Sissejuhatus Käesolev referaat on kirjutatud seoses Tartu Ülikooli kursuse MTAT.03.134 Andmeturve

Rohkem

Microsoft Word - essee_CVE ___KASVANDIK_MARKKO.docx

Microsoft Word - essee_CVE ___KASVANDIK_MARKKO.docx Tartu Ülikool CVE-2013-7040 Referaat aines Andmeturve Autor: Markko Kasvandik Juhendaja : Meelis Roos Tartu 2015 1.CVE 2013 7040 olemus. CVE 2013 7040 sisu seisneb krüptograafilises nõrkuses. Turvaaugu

Rohkem

Pangalingi spetsifikatsioon Pocopay pangalingilt makse algatamiseks tuleb kasutada teenust Kaupmees teeb päringu Pocopayle aadressile

Pangalingi spetsifikatsioon Pocopay pangalingilt makse algatamiseks tuleb kasutada teenust Kaupmees teeb päringu Pocopayle aadressile Pangalingi spetsifikatsioon Pocopay pangalingilt makse algatamiseks tuleb kasutada teenust 1011. Kaupmees teeb päringu Pocopayle aadressile https://my.pocopay.com/banklink. Vastuspäring tehakse makse õnnestumise

Rohkem

Mida räägivad logid programmeerimisülesande lahendamise kohta? Heidi Meier

Mida räägivad logid programmeerimisülesande lahendamise kohta? Heidi Meier Mida räägivad logid programmeerimisülesande lahendamise kohta? Heidi Meier 09.02.2019 Miks on ülesannete lahendamise käigu kohta info kogumine oluline? Üha rohkem erinevas eas inimesi õpib programmeerimist.

Rohkem

Andmed arvuti mälus Bitid ja baidid

Andmed arvuti mälus Bitid ja baidid Andmed arvuti mälus Bitid ja baidid A bit about bit Bitt, (ingl k bit) on info mõõtmise ühik, tuleb mõistest binary digit nö kahendarv kahe võimaliku väärtusega 0 ja 1. Saab näidata kahte võimalikku olekut

Rohkem

Failiotsing: find paljude võimalustega otsingukäsk find kataloog tingimused kataloog - otsitakse sellest kataloogist ja tema alamkataloogidest tingimu

Failiotsing: find paljude võimalustega otsingukäsk find kataloog tingimused kataloog - otsitakse sellest kataloogist ja tema alamkataloogidest tingimu Failiotsing: find paljude võimalustega otsingukäsk find kataloog tingimused kataloog - otsitakse sellest kataloogist ja tema alamkataloogidest tingimused: faili nimi faili vanus faili tüüp... 1 Failiotsing:

Rohkem

HAJUSSÜSTEEMID HAJUSSÜSTEEMID Kaugprotseduurid IDL kompileerimine ONCIDLnäide CORBAIDLnäide MIDLnäide DCERPCmuidomadusi XML-RPC JSON-RPC REST document

HAJUSSÜSTEEMID HAJUSSÜSTEEMID Kaugprotseduurid IDL kompileerimine ONCIDLnäide CORBAIDLnäide MIDLnäide DCERPCmuidomadusi XML-RPC JSON-RPC REST document Kaugprotseduurid IDL kompileerimine ONCIDLnäide CORBAIDLnäide MIDLnäide DCERPCmuidomadusi XML-RPC JSON-RPC REST document.idl IDL kompilaator document_cstub.o document.h document_sstub.o #include document_client.c

Rohkem

1 / loeng Tekstitöötlus Sisend/väljund Teksti lugemine Sõnad

1 / loeng Tekstitöötlus Sisend/väljund Teksti lugemine Sõnad 1 / 16 7. loeng Tekstitöötlus Sisend/väljund Teksti lugemine Sõnad 2 / 16 Sisend/väljund vaikimisi: Termid: read, write?-read(x). : 2+3. X = 2+3.?-write(2+3). 2+3 true. Jooksva sisendi vaatamine: seeing?-

Rohkem

Infix Operaatorid I Infix operaatorid (näiteks +) ja tüübid (näiteks ->) kirjutatakse argumentide vahele, mitte argumentide ette. Näiteks: 5 + 2, 2*pi

Infix Operaatorid I Infix operaatorid (näiteks +) ja tüübid (näiteks ->) kirjutatakse argumentide vahele, mitte argumentide ette. Näiteks: 5 + 2, 2*pi Infix Operaatorid I Infix operaatorid (näiteks +) ja tüübid (näiteks ->) kirjutatakse argumentide vahele, mitte argumentide ette. Näiteks: 5 + 2, 2*pi*r^2, Float -> Int Infixoperaatori kasutamiseks prefix-vormis

Rohkem

MTAT Operatsioonisüsteemid - Turvalisus

MTAT Operatsioonisüsteemid - Turvalisus Regulaaravaldised ja skriptimine Windows ja UNIX operatsioonisüstemides WINDOWS 1. slaid Windows käsurida Käsureaks nimetan programme: cmd.exe powershell.exe command.com Nendesse saab kirjutada käske,

Rohkem

Müük (Microsoft Dynamics AX (Axapta) tarkvara) Paigaldusjuhend bifree.ee qlik.com

Müük (Microsoft Dynamics AX (Axapta) tarkvara) Paigaldusjuhend bifree.ee qlik.com Müük (Microsoft Dynamics AX (Axapta) tarkvara) Paigaldusjuhend bifree.ee qlik.com Microsoft Dynamics AX (Axapta) tarkvara 2 Seadistamise etapid 1. Laadige alla ja installeerige Qlik Sense Desktop. 2. Laadige

Rohkem

Funktsionaalne Programmeerimine

Funktsionaalne Programmeerimine Kõrvalefektid ja Haskell Kõik senised programmid on olnud ilma kõrvalefektideta; so. puhtalt funktsionaalsed. Programmi täitmise ainsaks efektiks on tema väartus. Osade ülesannete jaoks on kõrvalefektid

Rohkem

Excel Valemite koostamine (HARJUTUS 3) Selles peatükis vaatame millistest osadest koosnevad valemid ning kuidas panna need Excelis kirja nii, et

Excel Valemite koostamine (HARJUTUS 3) Selles peatükis vaatame millistest osadest koosnevad valemid ning kuidas panna need Excelis kirja nii, et Excel2016 - Valemite koostamine (HARJUTUS 3) Selles peatükis vaatame millistest osadest koosnevad valemid ning kuidas panna need Excelis kirja nii, et programm suudaks anda tulemusi. Mõisted VALEM - s.o

Rohkem

DNS teenus teoorias ja praktikas Autor Siim Adamson ITK Autor: Siim Adamson ITK

DNS teenus teoorias ja praktikas Autor Siim Adamson ITK Autor: Siim Adamson ITK DNS teenus teoorias ja praktikas Autor Siim Adamson ITK 2008 1 Ettekande sisukord Ettekanne jaotatud 9 peatükiks: 1.DNS süsteemi ajalugu 2.DNS süsteemi struktuur 3.DNS kirjete tüübid 4.DNS serveri seadistamine

Rohkem

E-arvete juhend

E-arvete juhend E- arvete seadistamine ja saatmine Omniva kaudu Standard Books 7.2 põhjal Mai 2015 Sisukord Sissejuhatus... 3 Seadistamine... 3 Registreerimine... 4 E- arve konto... 5 Vastuvõtu eelistus... 5 Valik E-

Rohkem

GRUPI-SMS Veebirakenduse kasutamise juhend Rakendus Elisa grupi-smsi rakendus Väljaandja Elisa Eesti AS Juhendi koostamise kuupäev Versioon

GRUPI-SMS Veebirakenduse kasutamise juhend Rakendus Elisa grupi-smsi rakendus Väljaandja Elisa Eesti AS Juhendi koostamise kuupäev Versioon GRUPI-SMS Veebirakenduse kasutamise juhend Rakendus Elisa grupi-smsi rakendus Väljaandja Elisa Eesti AS Juhendi koostamise kuupäev 05.02.2018 Versiooni kuupäev 30.01.2018 1 SISUKORD 1. ÜLEVAADE... 3 1.1

Rohkem

MTAT Operatsioonisüsteemid - Turvalisus

MTAT Operatsioonisüsteemid - Turvalisus Regulaaravaldised ja skriptimine Windows ja UNIX operatsioonisüstemides WINDOWS 1. slaid Windows käsurida Käsureaks nimetan programme: cmd.exe powershell.exe command.com (tänapäevastes OS ei kasutata)

Rohkem

(loeng3-ohtlikud_koodiloigud)

(loeng3-ohtlikud_koodiloigud) #include int main (void) uint8_t arr[] = 0x11, 0x22 uint16_t *ptr; ptr = (uint16_t*)&arr[0]; printf ("arr: 0x%02x, 0x%02x\n", arr[0], arr[1]); printf ("ptr: 0x%04x\n", *ptr); /* vigane pointeri

Rohkem

Microsoft Word - installation-guide.doc

Microsoft Word - installation-guide.doc Dokumendi ajalugu: Versioon Kuupäev Tegevus Autor 1.0 12.04.2008 Dokumendi loomine Maris Aavik 1.1 13.04.2008 Täiendamine Maris Aavik 1.2 13.04.2008 Täiendamine Andres Kalle 1.3 12.05.2008 Täiendused Kerli

Rohkem

I Generaatori mõiste (Java) 1. Variantide läbivaatamine Generaator (ehk generaator-klass) on klass, milles leidub (vähemalt) isendimeetod next(). Kons

I Generaatori mõiste (Java) 1. Variantide läbivaatamine Generaator (ehk generaator-klass) on klass, milles leidub (vähemalt) isendimeetod next(). Kons I Generaatori mõiste (Java) 1. Variantide läbivaatamine Generaator (ehk generaator-klass) on klass, milles leidub (vähemalt) isendimeetod next(). Konstruktorile antakse andmed, mis iseloomustavad mingit

Rohkem

untitled

untitled Riistvara kirjelduskeel VHDL L4, L5. Riistvara kirjelduskeel VHDL L6. Mäluga süsteemid VHDL-s L7. VHDL ja süntees 1 Atribuudid Atribuut on väärtus, funktsioon, tüüp, vahemik, signaal või konstant, mida

Rohkem

PowerPointi esitlus

PowerPointi esitlus Regulaaravaldised ja skriptimine Windows ja UNIX operatsioonisüsteemides WINDOWS 1. slaid Windows käsurida Käsureaks nimetan programme: cmd.exe powershell.exe Nendesse saab kirjutada käske, millega näiteks

Rohkem

G aiasoft Programmi VERP ja Omniva Arvekeskuse liidese häälestamine ja arvete saatmine-lugemine VERP 6.3 ja VERP 6.3E Versioon ja hilisemad K

G aiasoft Programmi VERP ja Omniva Arvekeskuse liidese häälestamine ja arvete saatmine-lugemine VERP 6.3 ja VERP 6.3E Versioon ja hilisemad K Programmi VERP ja Omniva Arvekeskuse liidese häälestamine ja arvete saatmine-lugemine VERP 6.3 ja VERP 6.3E Versioon 6.3.1.51 ja hilisemad Kasutaja juhend 2016 Sisukord 1. Sissejuhatus...3 2. Liidese häälestus...3

Rohkem

Loeng03

Loeng03 Loeng 03 Failiõigused ja -manipulatsioon Operatsioonisüsteemide administreerimine ja sidumine I233 Katrin Loodus, Tallinn 2015 Failid ja kataloogid Mis on fail? Linuxi laadsetes süsteemides on kõik failid

Rohkem

Microsoft Word - Errata_Andmebaaside_projekteerimine_2013_06

Microsoft Word - Errata_Andmebaaside_projekteerimine_2013_06 Andmebaaside projekteerimine Erki Eessaar Esimene trükk Teadaolevate vigade nimekiri seisuga 24. juuni 2013 Lehekülg 37 (viimane lõik, teine lause). Korrektne lause on järgnev. Üheks tänapäeva infosüsteemide

Rohkem

PHP

PHP PHP Autorid: Aleksandr Vaskin Aleksandr Bogdanov Keelest Skriptikeel skript teeb oma tööd pärast seda, kui toimus mingi sündmus* Orienteeritud programmeerija eesmärkide saavutamiseks (mugavus on tähtsam

Rohkem

MS Word Sisukord Uue dokumendi loomine... 2 Dokumendi salvestamine... 3 Faili nimi... 4 Teksti sisestamine... 6 Klaviatuuril mitteleiduvat sümbolite l

MS Word Sisukord Uue dokumendi loomine... 2 Dokumendi salvestamine... 3 Faili nimi... 4 Teksti sisestamine... 6 Klaviatuuril mitteleiduvat sümbolite l MS Word Sisukord Uue dokumendi loomine... 2 Dokumendi salvestamine... 3 Faili nimi... 4 Teksti sisestamine... 6 Klaviatuuril mitteleiduvat sümbolite lisamine... 6 Uue dokumendi loomine Dokumendi salvestamine

Rohkem

loeng2

loeng2 Automaadid, keeled, translaatorid Kompilaatori struktuur Leksiline analüüs Regulaaravaldised Leksiline analüüs Süntaks analüüs Semantiline analüüs Analüüs Masinkoodi genereerimine Teisendamine (opt, registrid)

Rohkem

Microsoft PowerPoint - Lisa 5 koolituse materjalid

Microsoft PowerPoint - Lisa 5 koolituse materjalid 03. detsember, 2009 Piirangutest vabaks IT-ga või IT-ta? Heiti Mering Heiti.mering@ee.fujitsu.com Eero Elenurm eero@elenurm.net Piirangud või võimalused? Millised on meie oskused? Millised on meie teadmised?

Rohkem

Linux süsteemi administreerimine

Linux süsteemi administreerimine Protsesside, mälu jm haldamine Linuxi ehitus (struktuur) Lihtsustatult Protsess Multitasking - palju protsesse töötab paralleelselt Tuumas asub protsesside tabel igal protsessil on identifikaator PID igal

Rohkem

Operatsioonisüsteemi ülesanded

Operatsioonisüsteemi ülesanded Praktikum 2 OPERATSIOONISÜSTEEMIDE MASSPAIGALDUS Operatsioonisüsteemide masspaigaldus Suure arvu arvutisüsteemide korral ei ole mõistlik operatsioonisüsteeme paigaldada manuaalselt. Operatsioonisüsteemide

Rohkem

Operatsioonisüsteemide ehitus

Operatsioonisüsteemide ehitus Lõimed Ülevaade Lõime mõiste Lõimede mudelid Probleemid lõimedega seoses Pthreads Solarise lõimed Windows 2000 lõimed Linuxi lõimed Java lõimed VARMO VENE & MEELIS ROOS 2 Ühe- ja mitmelõimelised protsessid

Rohkem

HAJUSSÜSTEEMID HAJUSSÜSTEEMID SOAP ja veebiteenused Web Services Web Services SOAP WSDL Ühilduvus UDDI Kihiline arhitektuur masinsuhtluse jaoks erinev

HAJUSSÜSTEEMID HAJUSSÜSTEEMID SOAP ja veebiteenused Web Services Web Services SOAP WSDL Ühilduvus UDDI Kihiline arhitektuur masinsuhtluse jaoks erinev SOAP ja veebiteenused Web Services Web Services SOAP WSDL Ühilduvus UDDI Kihiline arhitektuur masinsuhtluse jaoks erinevate süsteemide vahel Transport sõnumite edastamiseks: HTTP, SMTP, FTP, mistahes failiedastus,

Rohkem

Outlookist dokumendi registreerimine Plugina seadistamine Dokumendi registreerimine Outlookist Vastusdokumendi registreerimine Outlookist Outlooki plu

Outlookist dokumendi registreerimine Plugina seadistamine Dokumendi registreerimine Outlookist Vastusdokumendi registreerimine Outlookist Outlooki plu Outlookist dokumendi registreerimine Plugina seadistamine Dokumendi registreerimine Outlookist Vastusdokumendi registreerimine Outlookist Outlooki plugina ikoon on kadunud Outlooki kasutajad saavad dokumente

Rohkem

1. Üliõpilased 1.1 Tõendid Vali menüüst: Üliõpilased tõendid tõendite trükkimine. Avaneb vorm Tõendite trükkimine, vali tõendi liik Tõend õppim

1. Üliõpilased 1.1 Tõendid Vali menüüst: Üliõpilased tõendid tõendite trükkimine. Avaneb vorm Tõendite trükkimine, vali tõendi liik Tõend õppim 1. Üliõpilased 1.1 Tõendid Vali menüüst: Üliõpilased tõendid tõendite trükkimine. Avaneb vorm Tõendite trükkimine, vali tõendi liik. 1.1.1 Tõend õppimise kohta TLÜ-s Seda tõendiliiki saab väljastada ainult

Rohkem

AWK Aho Weinberger Kernighan struktuurse teksti töötlemise keel rikkalikult tekstitöötlusvahendeid omal alal suhteliselt lihtne ja kiiresti realiseeri

AWK Aho Weinberger Kernighan struktuurse teksti töötlemise keel rikkalikult tekstitöötlusvahendeid omal alal suhteliselt lihtne ja kiiresti realiseeri AWK Aho Weinberger Kernighan struktuurse teksti töötlemise keel rikkalikult tekstitöötlusvahendeid omal alal suhteliselt lihtne ja kiiresti realiseeritav AWK kasutusalad raportite genereerimine ühest formaadist

Rohkem

lvk04lah.dvi

lvk04lah.dvi Lahtine matemaatikaülesannete lahendamise võistlus. veebruaril 004. a. Lahendused ja vastused Noorem rühm 1. Vastus: a) jah; b) ei. Lahendus 1. a) Kuna (3m+k) 3 7m 3 +7m k+9mk +k 3 3M +k 3 ning 0 3 0,

Rohkem

Tartu Ülikool

Tartu Ülikool Tartu Ülikool Code coverage Referaat Koostaja: Rando Mihkelsaar Tartu 2005 Sissejuhatus Inglise keelne väljend Code coverage tähendab eesti keeles otse tõlgituna koodi kaetust. Lahti seletatuna näitab

Rohkem

Neurovõrgud. Praktikum aprill a. 1 Stohhastilised võrgud Selles praktikumis vaatleme põhilisi stohhastilisi võrke ning nende rakendust k

Neurovõrgud. Praktikum aprill a. 1 Stohhastilised võrgud Selles praktikumis vaatleme põhilisi stohhastilisi võrke ning nende rakendust k Neurovõrgud. Praktikum 11. 29. aprill 2005. a. 1 Stohhastilised võrgud Selles praktikumis vaatleme põhilisi stohhastilisi võrke ning nende rakendust kombinatoorsete optimiseerimisülesannete lahendamiseks.

Rohkem

Funktsionaalne Programmeerimine

Funktsionaalne Programmeerimine Geomeetrilised kujundid Geomeetriliste kujundite definitsioon: data Shape = Rectangle Side Side Ellipse Radius Radius RtTriangle Side Side Polygon [Vertex] deriving Show type Radius = Float type Side =

Rohkem

Veeb Jaagup Kippar

Veeb Jaagup Kippar Veeb Jaagup Kippar Tööpõhimõte Arvutid ühendatud võrguks Igal arvutil oma nimi / number Arvutite vahel suudavad liikuda tekstid/baidid Kasutaja saadab serverarvutile päringu, millist lehte soovitakse vaadata.

Rohkem

Andmeturve

Andmeturve SOAP ja veebiteenused Web Services SOAP WSDL Ühilduvus UDDI MEELIS ROOS 1 Web Services Kihiline arhitektuur masinsuhtluse jaoks erinevate süsteemide vahel Transport sõnumite edastamiseks: HTTP, SMTP, FTP,

Rohkem

P2P süsteemid

P2P süsteemid Gnutella Ajalugu Detsentraliseeritus Protokollist Paralleliseerimine Ujutamine Skaleeruvus Ultranoded Puuräsid DHT Muud MEELIS ROOS 1 Ajalugu Failivahetus P2P massidesse viija Napster tsentraalne süsteem

Rohkem

Word Pro - diskmatTUND.lwp

Word Pro - diskmatTUND.lwp Loogikaalgebra ( Boole'i algebra ) George Boole (85 864) Sündinud Inglismaal Lincolnis. 6-aastasena tegutses kooliõpetaja assistendina. Õppis 5 aastat iseseisvalt omal käel matemaatikat, keskendudes hiljem

Rohkem

KASUTUSJUHEND

KASUTUSJUHEND KASUTUSJUHEND Sissejuhatus Kui valvesüsteem on valvessepanekuks valmis ning puuduvad rikke- ning häireteated, kuvatakse sõrmistiku displeil kellaaeg, kuupäev ning tekst Enter Your Code sisestage kood Peale

Rohkem

PÄRNU TÄISKASVANUTE GÜMNAASIUM ESITLUSE KOOSTAMISE JUHEND Pärnu 2019

PÄRNU TÄISKASVANUTE GÜMNAASIUM ESITLUSE KOOSTAMISE JUHEND Pärnu 2019 PÄRNU TÄISKASVANUTE GÜMNAASIUM ESITLUSE KOOSTAMISE JUHEND Pärnu 2019 SISUKORD 1. SLAIDIESITLUS... 3 1.1. Esitlustarkvara... 3 1.2. Slaidiesitluse sisu... 3 1.3. Slaidiesitluse vormistamine... 4 1.3.1 Slaidid...

Rohkem

Word Pro - digiTUNDkaug.lwp

Word Pro - digiTUNDkaug.lwp / näide: \ neeldumisseadusest x w x y = x tuleneb, et neeldumine toimub ka näiteks avaldises x 2 w x 2 x 5 : x 2 w x 2 x 5 = ( x 2 ) w ( x 2 ) [ x 5 ] = x 2 Digitaalskeemide optimeerimine (lihtsustamine)

Rohkem

Juhend nutiterminali seadistamiseks ja kaardimaksete vastuvõtmiseks Ingenico Link/2500 ja icmp

Juhend nutiterminali seadistamiseks ja kaardimaksete vastuvõtmiseks Ingenico Link/2500 ja icmp Juhend nutiterminali seadistamiseks ja kaardimaksete vastuvõtmiseks Ingenico Link/2500 ja icmp Terminali seadistamine Lülita telefonis või tahvelarvutis (edaspidi telefonis) sisse Bluetooth. (1) 1 1 Mudel

Rohkem

Microsoft Word - HOTSEC kasutusjuhend v1.900.docx

Microsoft Word - HOTSEC kasutusjuhend v1.900.docx HOTSEC Tarkvara kasutusjuhend v. 1.9 1 Sisukord Käivitamine:... 3 Programmi kasutamine... 4 Kasutajate lisamine ja eemaldamine:... 6 Jooksev logi:... 9 Häired:... 9 2 HOTSEC põhioperatsioonide kirjeldus

Rohkem

Programmi AnimatorDV Simple+ lühike kasutajajuhend

Programmi AnimatorDV Simple+ lühike kasutajajuhend Programmi AnimatorDV Simple+ esmane kasutusjuhend Programm AnimatorDV Simple+ on mõeldud animatsioonide loomiseks. Tegemist on tasuta tarkvaraga, mis töötab videoseadmetega (videokaamera, veebikaamera).

Rohkem

Tiia Salm 2011 Online kirjastus CALAMÉO Calameo kujutab endast on-line kirjastust, mis võimaldab oma dokumente avaldada e-raamatuna tasuta. Failid (Pd

Tiia Salm 2011 Online kirjastus CALAMÉO Calameo kujutab endast on-line kirjastust, mis võimaldab oma dokumente avaldada e-raamatuna tasuta. Failid (Pd Online kirjastus CALAMÉO Calameo kujutab endast on-line kirjastust, mis võimaldab oma dokumente avaldada e-raamatuna tasuta. Failid (Pdf, Word, Excel, PowerPoint, Open Office) tuleb esmalt keskkonda üles

Rohkem

Microsoft Word - Keypad-controller-manual-new_1.docx

Microsoft Word - Keypad-controller-manual-new_1.docx Eraldiseisev ühe ukse juurdepääsukontroller Kasutusjuhend Enne seadme paigaldamist ja kasutamist lugege tähelepanelikult seda juhendit 1. Pakkeleht Nimi Kogus Märkused Sõrmistik 1 Kasutusjuhend 1 Kruvikeeraja

Rohkem

X Window System tuntud kui: X11, X, X-Windows akendussüsteem/akendesüsteem rastergraafikat toetavatele ekraanidele UNIX-maailmas väga levinud mitmesug

X Window System tuntud kui: X11, X, X-Windows akendussüsteem/akendesüsteem rastergraafikat toetavatele ekraanidele UNIX-maailmas väga levinud mitmesug X Window System tuntud kui: X11, X, X-Windows akendussüsteem/akendesüsteem rastergraafikat toetavatele ekraanidele UNIX-maailmas väga levinud mitmesugused realisatsioonid ka Windowsile erinevad realisatsioonid

Rohkem

Automaatjuhtimise alused Automaatjuhtimissüsteemi kirjeldamine Loeng 2

Automaatjuhtimise alused Automaatjuhtimissüsteemi kirjeldamine Loeng 2 Automaatjuhtimise alused Automaatjuhtimissüsteemi kirjeldamine Loeng 2 Laplace'i teisendus Diferentsiaalvõrrandite lahendamine ilma tarkvara toeta on keeruline Üheks lahendamisvõtteks on Laplace'i teisendus

Rohkem

Microsoft Word - RM_ _17lisa2.rtf

Microsoft Word - RM_ _17lisa2.rtf Maksu- ja Tolliamet Maksukohustuslane Vorm KMD INF Nimi Registri- või isikukood A-osa ANDMED VÄLJASTATUD ARVETE KOHTA Esitatakse koos käibedeklaratsiooniga maksustamisperioodile järgneva kuu 20. kuupäevaks

Rohkem

Page 1 of 5 Tehniline Allikas: Pereregistri Kasutusjuhend Sisukord 1 Töö rahvastikuregistri menetlustarkvaraga 1.1 RR menetlustarkvara töökoha riistvara ning andmesideühendus 1.2 Klienditarkvara installeerimisele

Rohkem

Print\A4\QualifyReduced.pmt

Print\A4\QualifyReduced.pmt Kuremaa järv, Jõgevamaa,00 km. voor - ring.0.0 :0 Qualifying started at :: PIC Class Entrant Best Tm Points 0 0 0 0 0 0 00 0 0 0 0 Janno PUUSEPP Liis TALIVERE WD-SPORT WD-SPORT WD-SPORT WD-SPORT WD-SPORT

Rohkem

Monitooring

Monitooring IT infrastruktuuri teenused Monitooring Margus Ernits margus.ernits@itcollege.ee 1 Miks? Arvutisüsteemid töötavad tõrgetega Pole olemas 100% veakindlaid ja keerulisi arvutisüsteeme Tõrgetest võib teada

Rohkem

raamat5_2013.pdf

raamat5_2013.pdf Peatükk 5 Prognoosiintervall ja Usaldusintervall 5.1 Prognoosiintervall Unustame hetkeks populatsiooni parameetrite hindamise ja pöördume tagasi üksikvaatluste juurde. On raske ennustada, milline on huvipakkuva

Rohkem

KIIRJUHEND Lugege kiirjuhend enne seadme kasutamist hoolikalt läbi. Kõik tärniga (*) märgitud juhised kehtivad WLAN + 3G mudelitele (Lenovo B6000-H(V)

KIIRJUHEND Lugege kiirjuhend enne seadme kasutamist hoolikalt läbi. Kõik tärniga (*) märgitud juhised kehtivad WLAN + 3G mudelitele (Lenovo B6000-H(V) KIIRJUHEND Lugege kiirjuhend enne seadme kasutamist hoolikalt läbi. Kõik tärniga (*) märgitud juhised kehtivad WLAN + 3G mudelitele (Lenovo B6000-H(V) / Lenovo B8000-H). Tehnilised andmed Mudeli nimetus

Rohkem

Müügiarvete juhend VEP_

Müügiarvete juhend VEP_ MÜÜGIARVETE KASUTUSJUHEND Sisukord earvekeskusesse sisenemine... 2 Ettevõtte seadete määramine... 3 Ettevõtte kontole ligipääsude volitamine... 5 Käibemaksu koodide seadistamine... 6 Müügiarve koostamine...

Rohkem

Võrguväljaanded ja veebiarhiveerimine

Võrguväljaanded ja veebiarhiveerimine e24.ee folklore.ee delfi.ee www.ut.ee www.delfi.ee ut.ee Teeme ISE: harilikud hoidised virtuaalsetest viljadest veebiarhiivi riiulil Jaanus Kõuts, Eesti Rahvusraamatukogu 17.09.2013 Kogemused http://archive.org

Rohkem

Väärtusta oma vabadust. Eesti Yale Seifide Kasutusjuhend Mudelid: YSB/200/EB1 YSB/250/EB1 YSB/400/EB1 YLB/200/EB1 YSM/250/EG1 YSM/400/EG1 YSM/520/EG1

Väärtusta oma vabadust. Eesti Yale Seifide Kasutusjuhend Mudelid: YSB/200/EB1 YSB/250/EB1 YSB/400/EB1 YLB/200/EB1 YSM/250/EG1 YSM/400/EG1 YSM/520/EG1 Väärtusta oma vabadust. Eesti Yale Seifide Kasutusjuhend Mudelid: YSB/200/EB1 YSB/250/EB1 YSB/400/EB1 YLB/200/EB1 YSM/250/EG1 YSM/400/EG1 YSM/520/EG1 YLM/200/EG1 Soovitame selle kasutusjuhendi alles hoida.

Rohkem

Andmebaasid, MTAT Andmebaasikeeled 11.loeng

Andmebaasid, MTAT Andmebaasikeeled 11.loeng Andmebaasid, MTAT.03.264 Andmebaasikeeled 11. loeng Anne Villems Eksamiaegade valimine Kas on vaja eksamiaega mai lõpus? I eksami aeg. valikud: 3., 4. või 5. juuni kell 10.00 II eksami aeg. 17. kell 12.00

Rohkem

Esitlusslaidide kujundusest

Esitlusslaidide kujundusest ADS-iga liidestumine Andre Kaptein Maa-ameti aadressiandmete osakonna vanemspetsialist 22.11.2017 Aadressiandmete süsteemi (ADS) kasutamise kohustus tuleneb seadustest Ruumiandmete seadus 59 lg 1 - ADS-i

Rohkem

Scala ülevaade 1 Meetodid, muutujad ja väärtused. Süntaks 2 Lihtsad tüübid ja väärtused. 3 OOP, case-klassid ja mustrisobitus. 4 Puhta Scala väärtusta

Scala ülevaade 1 Meetodid, muutujad ja väärtused. Süntaks 2 Lihtsad tüübid ja väärtused. 3 OOP, case-klassid ja mustrisobitus. 4 Puhta Scala väärtusta Scala ülevaade 1 Meetodid, muutujad ja väärtused. Süntaks 2 Lihtsad tüübid ja väärtused. 3 OOP, case-klassid ja mustrisobitus. 4 Puhta Scala väärtustamine. 5 Keerulisemad tüübid. 6 Nähtavus, implitsiitsus.

Rohkem

Microsoft Word - Vx610 EMV KASUTUSJUHEND.doc

Microsoft Word - Vx610 EMV KASUTUSJUHEND.doc MAKSETERMINALI KASUTUSJUHEND VERIFONE Vx610 GSM Kliendiabi: (0) 6711 444 (kõik nädalapäevad 24 h) Makseterminalide osakond: (0) 6711 411 (tööpäeviti kell 9.00 17.00) Faks: (0) 6711 420 Email: posgrupp@estcard.ee

Rohkem

Polünoomi juured Juure definitsioon ja Bézout teoreem Vaadelgem polünoomi kus K on mingi korpus. f = a 0 x n + a 1 x n a n 1 x

Polünoomi juured Juure definitsioon ja Bézout teoreem Vaadelgem polünoomi kus K on mingi korpus. f = a 0 x n + a 1 x n a n 1 x 1 5.5. Polünoomi juured 5.5.1. Juure definitsioon ja Bézout teoreem Vaadelgem polünoomi kus K on mingi korpus. f = a 0 x n + a 1 x n 1 +... + a n 1 x + a n K[x], (1) Definitsioon 1. Olgu c K. Polünoomi

Rohkem

SINU UKS DIGITAALSESSE MAAILMA Ruuter Zyxel LTE3302 JUHEND INTERNETI ÜHENDAMISEKS

SINU UKS DIGITAALSESSE MAAILMA Ruuter Zyxel LTE3302 JUHEND INTERNETI ÜHENDAMISEKS SINU UKS DIGITAALSESSE MAAILMA Ruuter Zyxel LTE3302 JUHEND INTERNETI ÜHENDAMISEKS OLULINE TEAVE: LOE ENNE RUUTERI ÜHENDAMIST! Ruuter on sinu uks digitaalsesse maailma. Siit saavad alguse kõik Telia teenused

Rohkem

Kfloppy vormindamistööriista käsiraamat

Kfloppy vormindamistööriista käsiraamat Kfloppy vormindamistööriista käsiraamat Thad McGinnis Nicolas Goutte Arendaja: Bernd Johannes Wuebben Arendaja (kasutajaliidese ümberkujundamine): Chris Howells Arendaja (BSD toetuse lisamine): Adriaan

Rohkem

Microsoft Word - SDEMuutused.doc

Microsoft Word - SDEMuutused.doc SDEMuutused PROGRAMMIST SDEMuutused võimaldab teostada päringu ArcSDE serverisse ning väljastada mingi nähtusklassiga näidatud ajavahemikus tehtud muudatused. Eraldi tuuakse välja sellel ajavahemikul lisandunud,

Rohkem

praktikumidesse.pdf

praktikumidesse.pdf Mõisted: Tudeng peab olema suuteline selgitama järgmisi mõisteid: Klient, server, rakendus, andmed, DDL, SQL,SQL-standard. Oskused: Tudeng on suuteline kirjeldama andmebaassüsteemi töötamise põhimõtteid.

Rohkem

(Microsoft PowerPoint - seminar_6_n\365uded-ainemudel tagasiside.ppt [Compatibility Mode])

(Microsoft PowerPoint - seminar_6_n\365uded-ainemudel tagasiside.ppt [Compatibility Mode]) Tarkvara projekt seminar VI Eelmise iteratsiooni tagasivaade, testimine, installatsioonijuhend, järgmise iteratsiooni näited. Karel Kravik Administratiivset:protestid Probleem: protestide hulk ja kvaliteet

Rohkem

X Window System tuntud kui: X11 X X-Windows akendussüsteem/akendesüsteem rastergraafikat toetavatele ekraanidele UNIX-maailmas väga levinud mitmesugus

X Window System tuntud kui: X11 X X-Windows akendussüsteem/akendesüsteem rastergraafikat toetavatele ekraanidele UNIX-maailmas väga levinud mitmesugus X Window System tuntud kui: X11 X X-Windows akendussüsteem/akendesüsteem rastergraafikat toetavatele ekraanidele UNIX-maailmas väga levinud mitmesugused realisatsioonid ka Windowsile erinevad realisatsioonid

Rohkem

Praks 1

Praks 1 Biomeetria praks 3 Illustreeritud (mittetäielik) tööjuhend Eeltöö 1. Avage MS Excel is oma kursuse ankeedivastuseid sisaldav andmestik, 2. lisage uus tööleht, 3. nimetage see ümber leheküljeks Praks3 ja

Rohkem

CPA4164 USB 2.0 kõrgekvaliteediline videoadapter KASUTUSJUHEND 1. PEATÜKK - Ülevaade 1.1 Tutvustus CPA4164 USB 2.0 videoadapter võimaldab teil arvutis

CPA4164 USB 2.0 kõrgekvaliteediline videoadapter KASUTUSJUHEND 1. PEATÜKK - Ülevaade 1.1 Tutvustus CPA4164 USB 2.0 videoadapter võimaldab teil arvutis CPA4164 USB 2.0 kõrgekvaliteediline videoadapter KASUTUSJUHEND 1. PEATÜKK - Ülevaade 1.1 Tutvustus CPA4164 USB 2.0 videoadapter võimaldab teil arvutisse laadida ja redigeerida erinevatest analoogvideo

Rohkem

Pintsli otsade juurde tegemine Esiteks Looge pilt suurusega 64x64 ja tema taustaks olgu läbipaistev kiht (Transparent). Teiseks Minge kihtide (Layers)

Pintsli otsade juurde tegemine Esiteks Looge pilt suurusega 64x64 ja tema taustaks olgu läbipaistev kiht (Transparent). Teiseks Minge kihtide (Layers) Pintsli otsade juurde tegemine Esiteks Looge pilt suurusega 64x64 ja tema taustaks olgu läbipaistev kiht (Transparent). Teiseks Minge kihtide (Layers) aknasse ja looge kaks läbipaistvat kihti juurde. Pange

Rohkem

Skriptimiskeeli, mida ei käsitletud Perl Python Visual Basic Script Edition (VBScript) MS DOS/cmd skriptid Windows PowerShell midagi eksootilisemat: G

Skriptimiskeeli, mida ei käsitletud Perl Python Visual Basic Script Edition (VBScript) MS DOS/cmd skriptid Windows PowerShell midagi eksootilisemat: G Skriptimiskeeli, mida ei käsitletud Perl Python Visual Basic Script Edition (VBScript) MS DOS/cmd skriptid Windows PowerShell midagi eksootilisemat: GIMP Script-Fu 1 Skriptimiskeeli: Perl v1.0 loodud Larry

Rohkem

Pealkiri

Pealkiri Keelelist arengut toetavad FREPY mängud Reili Argus Luksemburgi keelepäev 2015 Taustaks Grammatika omandamisest On rikka ja vaese vormimoodustusega keeli. Mida rikkam vormimoodustus, seda varem hakkab

Rohkem

VL1_praks6_2010k

VL1_praks6_2010k Biomeetria praks 6 Illustreeritud (mittetäielik) tööjuhend Eeltöö 1. Avage MS Excel is oma kursuse ankeedivastuseid sisaldav andmestik, 2. lisage uus tööleht (Insert / Lisa -> Worksheet / Tööleht), nimetage

Rohkem

Õppematerjalide esitamine Moodle is (alustajatele) seminar sarjas Lõunatund e-õppega 12. septembril 2017 õppedisainerid Ly Sõõrd (LT valdkond) ja Dian

Õppematerjalide esitamine Moodle is (alustajatele) seminar sarjas Lõunatund e-õppega 12. septembril 2017 õppedisainerid Ly Sõõrd (LT valdkond) ja Dian Õppematerjalide esitamine Moodle is (alustajatele) seminar sarjas Lõunatund e-õppega 12. septembril 2017 õppedisainerid Ly Sõõrd (LT valdkond) ja Diana Lõvi (SV valdkond) Järgmised e-lõunad: 10. oktoober

Rohkem

EID TARKVARA (v.1812 baasil)

EID TARKVARA (v.1812 baasil) EID tarkvara ülevaade V.18.12 baasil Dokumendi info Loomise aeg 21.01.2019 Tellija RIA Autor Urmas Vanem, OctoX Versioon 19.01 Versiooni info Kuupäev Versioon Muutused/märkused 21.01.2019 19.01/1 Avalik

Rohkem

Andmeturve

Andmeturve CORBA Sissejuhatus IDL CORBA struktuur Serveri ehitus Objekti adapter Lisateenused MEELIS ROOS 1 CORBA sissejuhatus CORBA Common Object Request Broker Architecture Üldine Objektipäringute Vahendaja Arhitektuur:)

Rohkem

PRESENTATION HEADER IN GREY CAPITALS Subheader in orange Presented by Date Columbus is a part of the registered trademark Columbus IT

PRESENTATION HEADER IN GREY CAPITALS Subheader in orange Presented by Date Columbus is a part of the registered trademark Columbus IT PRESENTATION HEADER IN GREY CAPITALS Subheader in orange Presented by Date Columbus is a part of the registered trademark Columbus IT Täisautomatiseeritud ostujuhtimise lahenduse loomine Selveri näitel

Rohkem

FRESENIUS ÕPPEKESKUS KIIRJUHEND

FRESENIUS ÕPPEKESKUS KIIRJUHEND FRESENIUS ÕPPEKESKUS KIIRJUHEND SISUKORD 1. Kuidas saan Freseniuse õppekeskuksesse? 03 2. Kuidas sisse logida? 04 3. Mida teha, kui ma ei mäleta oma parooli? 05 4. Mida leian kodulehelt pärast sisselogimist?

Rohkem

rp_ IS_3

rp_ IS_3 Page 1 of 5 Üldine informatsioon Kummelitee Exemption Flags Toote nimi Exempt from Artwork Exempt from NEP Reporting Country Lipton Brand Name CAMOMILE Product Name Legal Description Country Kummelitee

Rohkem

Microsoft Word - Lisa1 , Eramu piirded _LK1-7_.doc

Microsoft Word - Lisa1 , Eramu piirded _LK1-7_.doc Lisa 1 Kasutatud sümbolite seletused: Sümbol :Max :Min :Average Seletus Pildil märgitud punkti(sp) temperatuur Pildil märgitud piirkonna (Ar) maksimaalne temperatuur Pildil märgitud piirkonna mnimaalne

Rohkem

TARTU ÜLIKOOL LOODUS- JA TÄPPISTEADUSTE VALDKOND ARVUTITEADUSE INSTITUUT Lauri Kongas Turvaauk CVE Referaat aines Andmeturve MTAT Õpp

TARTU ÜLIKOOL LOODUS- JA TÄPPISTEADUSTE VALDKOND ARVUTITEADUSE INSTITUUT Lauri Kongas Turvaauk CVE Referaat aines Andmeturve MTAT Õpp TARTU ÜLIKOOL LOODUS- JA TÄPPISTEADUSTE VALDKOND ARVUTITEADUSE INSTITUUT Lauri Kongas Turvaauk CVE-2016-0778 Referaat aines Andmeturve MTAT.03.134 Õppejõud: Meelis Roos Tartu 2016 OpenSSH OpenSSH hõlmab

Rohkem

EBSCO täistekstiandmebaaside kasutamine Otsingu sooritamiseks: 1. Logi sisse 2. Vali EBSCOhost Web 3. Seejärel vali andmebaas, milles soovid otsingut

EBSCO täistekstiandmebaaside kasutamine Otsingu sooritamiseks: 1. Logi sisse 2. Vali EBSCOhost Web 3. Seejärel vali andmebaas, milles soovid otsingut EBSCO täistekstiandmebaaside kasutamine Otsingu sooritamiseks: 1. Logi sisse 2. Vali EBSCOhost Web 3. Seejärel vali andmebaas, milles soovid otsingut sooritada. Andmebaasid on temaatilised. Koolitööde

Rohkem

AG informaatika ainekava PK

AG informaatika ainekava PK INFORMAATIKA AINEKAVA PÕHIKOOLIS Õppe- ja kasvatuseesmärgid Põhikooli informaatikaõpetusega taotletakse, et õpilane: 1) valdab peamisi töövõtteid arvutil igapäevases õppetöös eelkõige infot otsides, töödeldes

Rohkem

Microsoft Word - TallinnLV_lihtsustatud_manual_asutuse_juhataja_ doc

Microsoft Word - TallinnLV_lihtsustatud_manual_asutuse_juhataja_ doc Tallinna Linnavalitsuse sõnumisaatja kasutusjuhend asutuse juhatajale Sisukord 1. Süsteemi sisenemine...2 2. Parooli lisamine ja vahetamine...2 3. Ametnike lisamine ametiasutuse juurde...2 4. Saatjanimede

Rohkem