390 likes | 518 Views
g uarding your applications. Koen Vanderloock koen.vanderloock@owasp.org. Koen Vanderloock?. 9 years experience as Java developer The last 3 years working on security @ Cegeka Leader of the Security Competence Center @ Cegeka SIMBA founder.
E N D
guardingyourapplications • Koen Vanderloock • koen.vanderloock@owasp.org
Koen Vanderloock? • 9years experience as Java developer • The last 3 years working on security @ Cegeka • Leader of the Security Competence Center @ Cegeka • SIMBA founder
Security Integration Module for Business Applications • User Access Management (UAM) Identification Manager users & rights Authentication Authorization
Why another UAM Tool ? • Large Java Project • 5 years of agile development • 2 week releases • 4 applications • 8 big customers • Secured by Sun Access Manager
Whyanother UAM Tool ? • Problems with Sun Access Manager • Configuration nightmare • No clue what’s going on • Management of users/rights disaster
Other UAM vendors ? • Createitourself ?
Whyanother UAM Tool ? • Other UAM vendors • CA Siteminder • OpenSSO = AM • JOSSO
Whyanother UAM Tool ? • Createitourself • Useitforeach Java project • Make itcustomizable • See what’sgoing on • Easy management
Whatcan SIMBA do ? • Authentication • Single Sign-On • RoleBased Access Control • Authorization • SessionManagement • User Management
Authentication SIMBA filter SIMBA Authentication Chain RMI/HTTP Authentication Service SIMBA Enabled Yourapplications WS Login Chain WS/HTTP Webservices Entry Point SIMBA WS Handler 10
Single Sign-On SIMBA Enabled SIMBA filter SIMBA Manager Yourapplications … SSO Token stored in cookie 11
RBAC in SIMBA 1..* 1..* Role Policy(Permission) 1..* 1..* URL Rule Resource Rule
Example RBAC URL Rule: Access Zoo Visitor Resource Rule: View animals READ Resource Rule: Feeding READ
Example RBAC URL Rule: Access Zoo Groundkeeper Resource Rule: View animals READ Resource Rule: Feeding WRITE
Authorization Yourapplication (SIMBA Enabled) Your service Security aspect / Delegate RMI/HTTP Resource Rule Check(READ, WRITE access) URL Rule Check Authorization Service SIMBA 16
Session management • Overview user sessions • Auto expiresessions • Manuallyterminatesessions
User management • Overview of users, roles, policies • Relations between concept • Creation of user & adding correct rights • Set user inactive • Unblock user • Reset password to the default
SIMBA advantages • It’s easy • Chains • It’s lightweight • Caching • Audit logging • User overview • Centralized / distributeddeployment
SIMBA is easy, but … Customizedforyourapplication Simba-specific-your project Yourapplication Simbaframework
CommandandChains Webserviceentrance Webpage entrance
CommandandChains Incomingrequest Authentication chain Session chain Validate Parameters Check Session User Active Check Client IP Jaas Login Logout Is Credential ? Account Blocked URL Rule Check Password Expired Enter Application CreateSession
CommandandChains • The first request
CommandandChains • The login request
CommandandChains • The logged-in request
CommandandChains Webservice chain Validate Parameters Chain Command User Active • Collection of commands • Mostly entry point • Security check Jaas Login Your security check …
It’s lightweight • Yourownchains = onlywhatyouneed • Extra features as SAML, E-ID, biometrics, … =extra jars • Deployit on yourapplicationserver
Caching 1. Refresh cache Server 1 Server 2 Simba manager Simba manager Simba service Simba service 2. Publish event 3. Clean cache 3. Clean cache SIMBA Topic
Audit logging • EachCommand: success / error • Eachauthorizationrequest • Integrity check (HMAC – SHA1) • Archiving job
One big tiger,… Server 1 Application Application Application DB SIMBA Service Server 2 Manager
or a pack ? Server 1 Application Application Application DB SIMBA SIMBA Service Service Manager Manager Server 2
Distributed deployment • Advantages • Multiple instances of your security • Security doesn’t go down • Youcanalways access the manager • Youdon’tloseyour security session
FutureSIMBA’s • SAML support • E-ID support • Advanced RBAC (hierarchy, contraints,…) • SIMBA Filter (Request parameters, Request headers,X509 certificates) • Manager: add/removeroles, policies • Documentation: SIMBA Threat model • Release about every 6 months
Interested ? • More information: • OWASP SIMBA Project • simbasecurity.org • Mail tokoen.vanderloock@owasp.org
Questions ? • Thanksto: