I detta dokument presenteras SELinks, ett programmeringsspråk som fokuserar på att bygga säkra multi-tier webbapplikationer. SELinks tillhandahåller en enhetlig programmeringsmodell, i stil med LINQ och Ruby on Rails, med språksyntax för att komma åt objekt som finns antingen i databasen eller på servern. Säkerhetspolicyer på objektnivå uttrycks som fullt anpassningsbara, förstklassiga etiketter som själva kan omfattas av säkerhetspolitiken. Tillgång till märkta data förmedlas via betrodda, användartillhandahållna politiska verkställighetsfunktioner. SELinks har två nya funktioner som säkerställer att säkerhetspolicyn efterlevs korrekt och effektivt. För det första implementerar SELinks ett typsystem som heter Fable och som gör det möjligt för ett skyddat objekts typ att hänvisa till dess skyddsetikett. Typsystemet kan kontrollera att märkta data aldrig nås direkt av programmet utan att först konsultera lämplig policy efterlevnad funktion. För det andra sammanställer SELinks policy brottsbekämpningskod till databas-hemma användardefinierade funktioner som kan anropas direkt under frågebehandling. Kontroll på databassidan undviker att överföra data till servern i onödan, samtidigt som policyer kan uttryckas på ett anpassningsbart och portabelt sätt. Vår erfarenhet med två betydande webbapplikationer, en modell hälso-och sjukvårdsdatabas och en säker wiki med finkornig säkerhetspolitik, visar att cross-tier policy exekution i SELinks är flexibel, relativt lätt att använda, och, jämfört med en enda nivå strategi, förbättrar genomströmningen i nästan en storleksordning. SELinks är fritt tillgänglig.
SELINKS programmeringsspråk REF ) fokuserar på att bygga säkra 3-tier webbapplikationer.
Cross-tier, label-based security enforcement for web applications
{'venue': 'SIGMOD Conference', 'journal': None, 'mag_field_of_study': ['Computer Science']}