http://robert.muntea.nu @rombert
Secure by Default Web Applications With Apache Sling
Secure by Default Web Applications With Apache Sling Robert Munteanu, Adobe Systems ApacheCon Core 2016
Secure by Default Web Applications With Apache Sling Robert - - PowerPoint PPT Presentation
Secure by Default Web Applications With Apache Sling Secure by Default Web Applications With Apache Sling Robert Munteanu, Adobe Systems ApacheCon Core 2016 http://robert.muntea.nu @rombert Who I am $DAYJOB Open Source Adobe
http://robert.muntea.nu @rombert
Secure by Default Web Applications With Apache Sling
Secure by Default Web Applications With Apache Sling Robert Munteanu, Adobe Systems ApacheCon Core 2016
http://robert.muntea.nu @rombert
Who I am
$DAYJOB
Adobe Experience
Manager
Apache Sling Apache Jackrabbit Apache Felix
Open Source
Apache Sling MantisBT Mylyn Connector for
MantisBT
Mylyn Connector for Review
Board
http://robert.muntea.nu @rombert
Purpose of the talk Scope Cost Schedule
http://robert.muntea.nu @rombert
Purpose of the talk Scope Cost Schedule
http://robert.muntea.nu @rombert
Purpose of the talk Scope Cost Schedule
http://robert.muntea.nu @rombert
Agenda
http://robert.muntea.nu @rombert
Apache Sling – Brief History
Incubation
TLP
Version 8
Pre-Apache
http://robert.muntea.nu @rombert
Apache Sling – Code Statistics
http://robert.muntea.nu @rombert
Apache Sling – Contributor activity
http://robert.muntea.nu @rombert
Apache Sling – Value proposition
http://robert.muntea.nu @rombert
Apache Sling – Content-Oriented
Blog posts Images Users and Groups
http://robert.muntea.nu @rombert
Apache Sling – Content-Oriented
Server-side templates and scripts
Configurations
http://robert.muntea.nu @rombert
Apache Sling – RESTful $ h t t p l
a l h
t : 8 8 / c
t e n t / ↵ b l
/ p
t s / h e l l
w
l d . h t m l j s
x m l t x t p d f p h p 3
http://robert.muntea.nu @rombert
Apache Sling – RESTful
http://robert.muntea.nu @rombert
Apache Sling – Persistence via JCR
http://robert.muntea.nu @rombert
Apache Sling – Topologies Standalone High Availability
http://robert.muntea.nu @rombert
Agenda
http://robert.muntea.nu @rombert
Demo App – main page
http://robert.muntea.nu @rombert
Demo App – Article Page
http://robert.muntea.nu @rombert
Demo App – Submitting comments
http://robert.muntea.nu @rombert
Agenda
http://robert.muntea.nu @rombert
Threat modelling
“Threat modeling is an engineering technique you can use to help you identify threats, attacks, vulnerabilities, and countermeasures that could afgect your application”
Threat Modeling Web Applications on MSDN
http://robert.muntea.nu @rombert
Threat Modelling - Assets
http://robert.muntea.nu @rombert
Threat Modelling - Assets
http://robert.muntea.nu @rombert
Threat Modelling - Trust Levels
http://robert.muntea.nu @rombert
Threat Modelling - Trust Levels
http://robert.muntea.nu @rombert
Threat Modelling - Threats
http://robert.muntea.nu @rombert
Threat Modelling - Threats
http://robert.muntea.nu @rombert
Threat Modelling - Mitigation
http://robert.muntea.nu @rombert
Agenda
http://robert.muntea.nu @rombert
Apache Sling Security – Natural layering of ACEs
http://robert.muntea.nu @rombert
Apache Sling Security – Security applied at the lowest level
$ h t t p
u t h b
: b
l
a l h
t : 8 8 / c
t e n t / b l
/ p
t s / n e w _ b l
_ p
t ' j c r \ : t i t l e = N e w p
t '
http://robert.muntea.nu @rombert
Apache Sling Security – Context-aware templating language < d i v c l a s s = " c
m e n t c l e a r f i x " > < i m g c l a s s = " a v a t a r i m g
n d e d p u l l
e f t " s r c = " $ { r e s
r c e . v a l u e M a p [ ' a u t h
A v a t a r ' ] } " / > < h 3 > $ { r e s
r c e . v a l u e M a p [ ' j c r : t i t l e ' ] } < / h 3 > < p > $ { r e s
r c e . v a l u e M a p [ ' j c r : d e s c r i p t i
' ] } < / p > < / d i v >
http://robert.muntea.nu @rombert
Apache Sling Security – Injection-safe APIs Children of /content/blog/posts
http://robert.muntea.nu @rombert
Apache Sling Security – Injection-safe APIs Children of /content/blog/comments/ hello_world
http://robert.muntea.nu @rombert
Agenda
http://robert.muntea.nu @rombert
Demo Application – Actual demo!!!!1oneone
http://robert.muntea.nu @rombert
Conclusions – Security
altogether
http://robert.muntea.nu @rombert
Conclusions – Apache Sling
Caching
Thymeleaf
OSGi – most extension points available to clients
http://robert.muntea.nu @rombert
Resources
_Cheat_Sheet
at_Modeling