- Datenbank Tabellen für Ampel System

- SQL Injection Bugfix im Abgabetool
This commit is contained in:
Andreas Österreicher
2011-10-18 10:39:10 +00:00
parent b663e93116
commit 1105e967d5
5 changed files with 143 additions and 79 deletions
+26 -26
View File
@@ -8608,7 +8608,7 @@
</WorkSpaceShapePEREntityPG83>
<WorkSpaceShapePEREntityPG83 ObjectType="2502" CSAOName="WorkSpaceShapePEREntityPG83">
<Id>{B9DEDF57-70C8-449B-A293-70B3FD6E5423}</Id>
<Name>tbl_ampel_benutzer</Name>
<Name>tbl_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{BC624EDC-C3D8-435A-9E4F-6EA3903606C9}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -8625,7 +8625,7 @@
<Top>2014</Top>
<Left>10249</Left>
<z>0</z>
<Width>461</Width>
<Width>635</Width>
<Height>200</Height>
<dz>0</dz>
<RecalculateSizes>1</RecalculateSizes>
@@ -25060,7 +25060,7 @@
</WorkSpaceLinePERRelationPG83>
<WorkSpaceLinePERRelationPG83 ObjectType="2504" CSAOName="WorkSpaceLinePERRelationPG83">
<Id>{1A59AE5E-6E8A-4206-BAA4-6BDB21F43D4D}</Id>
<Name>fk_ampel_ampel_benutzer</Name>
<Name>fk_ampel_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{0F64FCFE-9AB2-4F15-AD87-EC8938859E96}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -25103,7 +25103,7 @@
</WorkSpaceLinePERRelationPG83>
<WorkSpaceLinePERRelationPG83 ObjectType="2504" CSAOName="WorkSpaceLinePERRelationPG83">
<Id>{FE526FF6-5293-4905-A790-F5E3196D20C0}</Id>
<Name>fk_benutzer_ampel_benutzer</Name>
<Name>fk_benutzer_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{906F442C-4FBF-4391-87F4-7DF6181117CA}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -27439,7 +27439,7 @@
</WorkSpaceShapePEREntityPG83>
<WorkSpaceShapePEREntityPG83 ObjectType="2502" CSAOName="WorkSpaceShapePEREntityPG83">
<Id>{0CD0899C-7A52-4F35-AC37-1239971710E8}</Id>
<Name>tbl_ampel_benutzer</Name>
<Name>tbl_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{A75D23A9-DF85-49B6-BF4C-EF5620D5C9C9}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -27456,7 +27456,7 @@
<Top>1878</Top>
<Left>9904</Left>
<z>0</z>
<Width>861</Width>
<Width>1034</Width>
<Height>239</Height>
<dz>0</dz>
<RecalculateSizes>1</RecalculateSizes>
@@ -31072,7 +31072,7 @@
</WorkSpaceLinePERRelationPG83>
<WorkSpaceLinePERRelationPG83 ObjectType="2504" CSAOName="WorkSpaceLinePERRelationPG83">
<Id>{7B8CE405-BDC0-45F6-A363-B5752C604C68}</Id>
<Name>fk_ampel_ampel_benutzer</Name>
<Name>fk_ampel_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{AA1A4157-8BE2-45C5-B5B8-7D43EB826C5F}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -31092,7 +31092,7 @@
<WorkSpaceShape2>
<Id>{0CD0899C-7A52-4F35-AC37-1239971710E8}</Id>
</WorkSpaceShape2>
<NamePositionX>10229</NamePositionX>
<NamePositionX>10272</NamePositionX>
<NamePositionY>2156</NamePositionY>
<Points>
<Point>
@@ -31104,18 +31104,18 @@
<y>2284</y>
</Point>
<Point>
<x>10334</x>
<x>10421</x>
<y>2148</y>
</Point>
<Point>
<x>10334</x>
<x>10421</x>
<y>2117</y>
</Point>
</Points>
</WorkSpaceLinePERRelationPG83>
<WorkSpaceLinePERRelationPG83 ObjectType="2504" CSAOName="WorkSpaceLinePERRelationPG83">
<Id>{6D2DB2DC-B510-4B7D-AA68-B7A83812FEF9}</Id>
<Name>fk_benutzer_ampel_benutzer</Name>
<Name>fk_benutzer_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{8E353C50-1324-41BD-8399-A0D9D6F0E85D}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -45346,7 +45346,7 @@
</WorkSpaceShapePEREntityPG83>
<WorkSpaceShapePEREntityPG83 ObjectType="2502" CSAOName="WorkSpaceShapePEREntityPG83">
<Id>{83E5A90A-BEBA-4E65-BEFE-A3D6A4DF0A5D}</Id>
<Name>tbl_ampel_benutzer</Name>
<Name>tbl_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{2F59D7A8-75B3-475D-BE20-CD666048D8F0}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -46143,7 +46143,7 @@
</WorkSpaceLinePERRelationPG83>
<WorkSpaceLinePERRelationPG83 ObjectType="2504" CSAOName="WorkSpaceLinePERRelationPG83">
<Id>{83484ADE-6B40-490C-90EE-E08E37812569}</Id>
<Name>fk_ampel_ampel_benutzer</Name>
<Name>fk_ampel_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{53EDEAFC-6C0C-480A-8766-B3F48B40FC81}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -46169,7 +46169,7 @@
</WorkSpaceLinePERRelationPG83>
<WorkSpaceLinePERRelationPG83 ObjectType="2504" CSAOName="WorkSpaceLinePERRelationPG83">
<Id>{CB79BCE5-2A7D-4A17-A9DE-4E5DB0DD4A14}</Id>
<Name>fk_benutzer_ampel_benutzer</Name>
<Name>fk_benutzer_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{5528233B-9692-4021-AF09-1D4871FFD98D}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -46321,7 +46321,7 @@
<Company>Technikum Wien</Company>
<Version>2.0</Version>
<CreatedDate>2009-04-17T11:15:21.000+02:00</CreatedDate>
<ModifiedDate>2011-10-07T09:56:00.301+02:00</ModifiedDate>
<ModifiedDate>2011-10-17T16:45:22.409+02:00</ModifiedDate>
<Project>FH-Complete 2.0</Project>
<Description>&lt;?xml-stylesheet type="text/xsl" href="FHCompleteTDM3PG83.xsl"?&gt;
</Description>
@@ -142494,7 +142494,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
</PEREntityPG83>
<PEREntityPG83 ObjectType="2002" CSAOName="PEREntityPG83">
<Id>{AE5C8997-821F-42C7-86A7-BD8015270945}</Id>
<Name>tbl_ampel_benutzer</Name>
<Name>tbl_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{7F1E29A1-9E7C-419D-88F4-07B135C25880}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -142506,7 +142506,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
<AfterScript></AfterScript>
<Notes></Notes>
<Comments></Comments>
<Caption>tbl_ampel_benutzer</Caption>
<Caption>tbl_ampel_benutzer_bestaetigt</Caption>
<Size>0</Size>
<Relations>
<Id>{E3FC2220-C7ED-49DE-9F5E-7D2589A4FD20}</Id>
@@ -142515,7 +142515,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
<Attributes>
<PERAttributePG83 ObjectType="2003" CSAOName="PERAttributePG83">
<Id>{4716794B-43AF-4085-BED8-54F00F7AD07E}</Id>
<Name>ampel_benutzer_id</Name>
<Name>ampel_benutzer_bestaetigt_id</Name>
<Ordinal>1</Ordinal>
<HistoryID>{2AE40F8A-87D0-4EAD-B7B7-00D6E7C239CE}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -142533,7 +142533,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
<DefaultValue></DefaultValue>
<NotNull>1</NotNull>
<Migrated>0</Migrated>
<Caption>ampel_benutzer_id</Caption>
<Caption>ampel_benutzer_bestaetigt_id</Caption>
<Unique>0</Unique>
<OriginalName></OriginalName>
<CheckConstraint></CheckConstraint>
@@ -142574,7 +142574,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
<DataTypeParam2></DataTypeParam2>
<KeepForeignKey>0</KeepForeignKey>
<DefaultValue></DefaultValue>
<NotNull>0</NotNull>
<NotNull>1</NotNull>
<Migrated>1</Migrated>
<Caption>ampel_id</Caption>
<Unique>0</Unique>
@@ -142617,7 +142617,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
<DataTypeParam2></DataTypeParam2>
<KeepForeignKey>0</KeepForeignKey>
<DefaultValue></DefaultValue>
<NotNull>0</NotNull>
<NotNull>1</NotNull>
<Migrated>1</Migrated>
<Caption>uid</Caption>
<Unique>0</Unique>
@@ -142744,7 +142744,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
<KeyItems>
<PERKeyConstraintItemPG83 ObjectType="2011" CSAOName="PERKeyConstraintItemPG83">
<Id>{70CF5C5E-D0E6-4E5F-8D36-CBF3F253DB99}</Id>
<Name>ampel_benutzer_id</Name>
<Name>ampel_benutzer_bestaetigt_id</Name>
<Ordinal>0</Ordinal>
<HistoryID>{A2B344FC-F1BF-4C9A-BE0E-295DEFC4498D}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -165253,7 +165253,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
</PERRelationPG83>
<PERRelationPG83 ObjectType="2004" CSAOName="PERRelationPG83">
<Id>{E3FC2220-C7ED-49DE-9F5E-7D2589A4FD20}</Id>
<Name>fk_ampel_ampel_benutzer</Name>
<Name>fk_ampel_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{DBC6B468-2DD6-4E02-A563-3BC4126F6BB8}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -165271,7 +165271,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
<MandatoryChild>0</MandatoryChild>
<CardinalityChild>-1</CardinalityChild>
<InverseName></InverseName>
<Caption>fk_ampel_ampel_benutzer</Caption>
<Caption>fk_ampel_ampel_benutzer_bestaetigt</Caption>
<InverseCaption></InverseCaption>
<RefIntegrityParentUpdate>0</RefIntegrityParentUpdate>
<RefIntegrityParentDelete>0</RefIntegrityParentDelete>
@@ -165311,7 +165311,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
</PERRelationPG83>
<PERRelationPG83 ObjectType="2004" CSAOName="PERRelationPG83">
<Id>{F644BCC8-498F-484C-AF4A-F34DECA37F2C}</Id>
<Name>fk_benutzer_ampel_benutzer</Name>
<Name>fk_benutzer_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{A38E2BF8-70FC-4F18-B497-3D2AA1475434}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -165329,7 +165329,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
<MandatoryChild>0</MandatoryChild>
<CardinalityChild>-1</CardinalityChild>
<InverseName></InverseName>
<Caption>fk_benutzer_ampel_benutzer</Caption>
<Caption>fk_benutzer_ampel_benutzer_bestaetigt</Caption>
<InverseCaption></InverseCaption>
<RefIntegrityParentUpdate>0</RefIntegrityParentUpdate>
<RefIntegrityParentDelete>0</RefIntegrityParentDelete>
+64
View File
@@ -2835,6 +2835,68 @@ if(!$result = @$db->db_query("SELECT ende FROM fue.tbl_projekttask"))
else
echo 'fue.tbl_projekttask: Spalte ende und ressource_id hinzugefuegt!<br>';
}
//public.tbl_ampel Tabellen fuer Ampelsystem
if(!$result = @$db->db_query("SELECT 1 FROM public.tbl_ampel"))
{
$qry = "
CREATE SEQUENCE public.seq_ampel_ampel_id
INCREMENT BY 1
NO MAXVALUE
NO MINVALUE
CACHE 1;
CREATE SEQUENCE public.seq_ampel_benutzer_bestaetigt_ampel_benutzer_bestaetigt_id
INCREMENT BY 1
NO MAXVALUE
NO MINVALUE
CACHE 1;
CREATE TABLE public.tbl_ampel
(
ampel_id bigint NOT NULL,
kurzbz varchar(64),
beschreibung text,
benutzer_select text NOT NULL,
deadline date NOT NULL,
vorlaufzeit smallint NOT NULL,
verfallszeit smallint NOT NULL,
insertamum timestamp,
insertvon varchar(32),
updateamum timestamp,
updatevon varchar(32)
);
CREATE TABLE public.tbl_ampel_benutzer_bestaetigt
(
ampel_benutzer_bestaetigt_id bigint NOT NULL,
ampel_id integer NOT NULL,
uid varchar(32) NOT NULL,
insertamum timestamp,
insertvon varchar(32)
);
ALTER TABLE public.tbl_ampel ADD CONSTRAINT pk_tbl_ampel PRIMARY KEY (ampel_id);
ALTER TABLE public.tbl_ampel_benutzer_bestaetigt ADD CONSTRAINT pk_tbl_ampel_benutzer_bestaetigt PRIMARY KEY (ampel_benutzer_bestaetigt_id);
ALTER TABLE public.tbl_ampel ALTER COLUMN ampel_id SET DEFAULT nextval('public.seq_ampel_ampel_id');
ALTER TABLE public.tbl_ampel_benutzer_bestaetigt ALTER COLUMN ampel_benutzer_bestaetigt_id SET DEFAULT nextval('public.seq_ampel_benutzer_bestaetigt_ampel_benutzer_bestaetigt_id');
ALTER TABLE public.tbl_ampel_benutzer_bestaetigt ADD CONSTRAINT fk_ampel_ampel_benutzer_bestaetigt FOREIGN KEY (ampel_id) REFERENCES public.tbl_ampel (ampel_id) ON DELETE CASCADE ON UPDATE CASCADE;
ALTER TABLE public.tbl_ampel_benutzer_bestaetigt ADD CONSTRAINT fk_benutzer_ampel_benutzer_bestaetigt FOREIGN KEY (uid) REFERENCES public.tbl_benutzer (uid) ON DELETE CASCADE ON UPDATE CASCADE;
GRANT SELECT, UPDATE, INSERT, DELETE ON public.tbl_ampel TO vilesci;
GRANT SELECT ON public.tbl_ampel TO web;
GRANT SELECT, UPDATE, INSERT, DELETE ON public.tbl_ampel_benutzer_bestaetigt TO vilesci;
GRANT SELECT, UPDATE, INSERT, DELETE ON public.tbl_ampel_benutzer_bestaetigt TO web;
";
if(!$db->db_query($qry))
echo '<strong>public.tbl_ampel: '.$db->db_last_error().'</strong><br>';
else
echo 'public.tbl_ampel: Tabellen fuer Ampelsystem hinzugefuegt!<br>';
}
echo '<br>';
$tabellen=array(
@@ -2932,6 +2994,8 @@ $tabellen=array(
"lehre.tbl_zeugnisnote" => array("lehrveranstaltung_id","student_uid","studiensemester_kurzbz","note","uebernahmedatum","benotungsdatum","bemerkung","updateamum","updatevon","insertamum","insertvon","ext_id"),
"public.tbl_adresse" => array("adresse_id","person_id","name","strasse","plz","ort","gemeinde","nation","typ","heimatadresse","zustelladresse","firma_id","updateamum","updatevon","insertamum","insertvon","ext_id"),
"public.tbl_akte" => array("akte_id","person_id","dokument_kurzbz","uid","inhalt","mimetype","erstelltam","gedruckt","titel","bezeichnung","updateamum","updatevon","insertamum","insertvon","ext_id"),
"public.tbl_ampel" => array("ampel_id","kurzbz","beschreibung","benutzer_select","deadline","vorlaufzeit","verfallszeit","insertamum","insertvon","updateamum","updatevon"),
"public.tbl_ampel_benutzer_bestaetigt" => array("ampel_benutzer_bestaetigt_id","ampel_id","uid","insertamum","insertvon"),
"public.tbl_aufmerksamdurch" => array("aufmerksamdurch_kurzbz","beschreibung","ext_id"),
"public.tbl_aufnahmeschluessel" => array("aufnahmeschluessel"),
"public.tbl_bankverbindung" => array("bankverbindung_id","person_id","name","anschrift","bic","blz","iban","kontonr","typ","verrechnung","updateamum","updatevon","insertamum","insertvon","ext_id"),