SlideShare a Scribd company logo
ATG - SECURED   D a t e : J u l y 6 th, 2 0 1 2
                Author : Sanju Thomas


  REPOSITORY
SUBJECT MATTER

   Authentication and Authorization
   Secured Data Access in ATG
   ATG Repository Design
   ATG Secured Repository Design
   Configure a Secured Repository
   Item Descriptor Level Security (Object Level )
   Repository Item Level Security (Data Level )
   Repository Item Property level security (Field Level)
   ATG Access Control List (ACL)
   ACL Components and Syntax
   Secured Repository and Performance Considerations
   Questions and Answers
AUTHENTICATION AND AUTHORIZATION

 Authentication

   Identity of the user
       Username/Password
       Access Card
       Finger Print
       Retinal Scan
       Kerberos
       Secret Code
       Two Factor
       Public/Private Key
       Digital Signature
AUTHENTICATION AND AUTHORIZATION

 Authorization
   Is authenticated user entitled to perform an action on a resource?


           has role(s)                            can perform                     on a
                                 Role                               Action               Resouce
    User




                                              Actions




                         <<extend>>
                                      <<extend>> <<extend>> <<extend>>



              Create            Read                    Update           Delete
SECURED DATA ACCESS IN ATG

 The ATG secured repository system works in conjunction with the
  ATG Security System to provide fine -grained access control.


            S e c u r e Re p o s i to r y




A content repository is decorated with security.
ATG REPOSITORY STATIC DESIGN

                                                                                                      <<interface>>
                                                                                                 RepositoryViewContainer




                                                                                                       <<interface>>                      <<interface>>             <<interface>>
                                                                                                        Repository                   DisplayableRepository       ProxyableRepository




  <<interface>>            <<interface>>              <<interface>>        <<interface>>        <<interface>>                                       RepositoryImpl
SecuredRepository      CompositeKeyRepository       ContentRepository   LoadBatchRepository   MutableRepository




                    MutableCompositeKeyRepository




                                                                                                 LDAPRepository                                     GSARepository




                                                                                                                           CompositeRepository




                                                                                                                       MutableCompositeRepository                                             <<interface>>
                                                                                                                                                                                       RepositoryVersionContainer




                                                                                                                                                 VersionRepository
ATG SECURE REPOSITORY STATIC DESIGN

                                                                  <<abstract>>
                                                                   Repository




                                  <<abstract>>
                             DisplayableRepository




                 GenericService


                                             <<abstract>>           <<abstract>>            <<abstract>>
                                          RepositoryWrapper      SecuredRepository        MutableRepository




                    GenericSecuredRepository                                <<abstract>>
                                                                      SecuredMutableRepository




              GenericSecuredMutableRepository                   <<abstract>>
                                                              ContentRepository




             GenericSecuredMutableContentRepository




         GenericSecuredMutableVersionContentRepository
CONFIGURE A SECURED REPOSITORY


    Unsecure Repository          Secure Repository



IDENTIFIER                       NAME                                    DOB
1                                Rahul Dravid                            12-12-1980

2                                Sachin Tendulkar                        01-01-1980

3                                Anil Kumble                             03-03-1980




IDENTIFIER    NAME                 GENDER           OWNER     ITEM_ACL                PROPERTY_ACL


1             Rahul Dravid         Male             Raju      Who can do what?        Who can do what?


2             Sachin Tendulkar     Male             Ramesan   Who can do what?        Who can do what?


3             Anil Kumble          Male             Nebu      Who can do what?        Who can do what?
CONFIGURE A SECURED REPOSITORY

Unsecure Repository              Secure Repository



  <item-descriptor name=“cricketer" >
      <table name="cricketer" type="primary" id-column-names="identifier">
        <property name="identifier" column-names="identifier" data-type="string"/>
        <property name="name" column-names="name" data-type="string"/>
        <property name="dob" column-names="dob" data-type="date"/>
     </table>
  </item-descriptor>




 <item-descriptor name=“cricketer" default="true">
    <table name="cricketer" type="primary" id-column-names="identifier">
       <property name="identifier" column-names="identifier" data-type="string"/>
       <property name="name" column-names="name" data-type="string"/>
       <property name="dob" column-names="dob" data-type="date"/>
       <property name="owner" column-names="owner" data-type="string"/>
       <property name="itemAcl" column-names="item_acl" data-type="string"/>
        <property name="propertyAcl" column-names="property_acl" data-type="string"/>
     </table>
 </item-descriptor>
SECURED REPOSITORY DEFINITION
DEFINE SECURED REPOSITORY

<secured-repository-template>
 <item-descriptor name="cricketer">
  <descriptor-acl value="Admin$role$administrators -group:read,write,create,delete;Admin$role$everyone -group:read

  <owner-property name="owner"/>
  <acl-property name="item_acl"/>

  <creation-base-acl
            value="Admin$role$administrators-group:
            read,write,list,destroy,read_owner,write_owner,read_acl,write_acl ;
            Admin$role$everyone-group:read,list"/>

  <creation-owner-acl-template value="$:read,write,list,destroy"/>
  <creation-group-acl-template value="$:read,list"/>

  <property name="secured_property">
   <descriptor-acl value="Admin$role$administrators-group:read,write;Admin$role$everyone -group:read"/>
   <acl-property name="property_acl"/>
   <creation-base-acl value="Admin$role$administrators-group:read,write"/>
   <creation-owner-acl-template value="$:read,write"/>
   <creation-group-acl-template value="$:read,write"/>
  </property>

 </item-descriptor>
</secured-repository-template>
CONFIGURE SECURED REPOSITORY

# / c o m / m c f a d ye n / s o l ut io n / S e c ur e d C r i c kete r Re p o s i to r y. p ro p e r t ie s
$ c l a s s = a t g . a d a p te r.s e c ur e .G e n e r ic S e c ur e d M ut a b l e Re p o s i to r y
$ s c o p e = g lo ba l
n a m e = S e c ur e C r i c kete r Re p o s i to r y
r e p o s i to r yN a m e = S e c ur e C r ic kete r Re p o s i to r y
# t h e u n s e c u r e r e p o s i to r y t h a t w e ' r e w r a p p i n g
r e p o s i to r y= C r i c kete r Re p o s i to r y
# T h e te m p l a te f i l e t h a t c o n f i g ur e s t h e r e p o s i to r y
c o n f i gur a t io n F i le = se c ur e d - c r i c kete r - r e p o s i to r y.x m l
# T h e s e c u r i t y c o n f i g ur a t i o n c o m p o n e n t u s e d b y t h e r e p o s i to r y
s e c u r i t yC o n fi gur a t io n = / a t g / d yn a m o / s e c ur i t y/ S e c ur e d Re p o s i to r yS e c ur i t yC o n fi g ur a t i o n
# Va r i o u s D y n a m o s e r v i c e s w e n e e d
X M LTo o ls Fa c to r y = / a t g / d y n am o / s er v i ce / x m l / X M LTo o l s Fa c to r y
t r a n s a c t i o n M a n a g e r = / a t g / d y n am o / t r a n s ac t i o n / Tr a n s a c t i o n M a n a g e r
REGISTER SECURE REPOSITORY

In order to expose the two repositories to the ATG Control
Center Repository Editor and to activate them on application
startup, you must add them to the initial Repositories property
of the /atg/registry/ContentRepositories component.

i n i t i a l R e p o s i t o r i e s + = / c o m / m c f a d y e n / s o l u t i o n / S e c u r e d C r i c k e t e r R e p o s i t o r y. p r o p e r t i e s , 
/ c o m / m c f a d y e n / s o l u t i o n / C r i c ke t e r R e p o s i t o r y. p r o p e r t i e s
ATG ACCESS RIGHTS
USER AUTHORITIES
ATG SECURIT Y SYSTEM



                                       Repository 1




      Subject




                User Authority
                                 ACL
                                       Repository 2
      Subject




                                       Repository N
ACCESS CONTROL LIST

                                                                                             Identity




                Access Control List                         Access Control Entry

                                             1..*
                                                                                            Access Right

                                                                                     1..*




                                                    Grant                          Deny




UD_IDENTITY ::= UD -name '$' principal - type '$' UD - principal – key : access rights
Admin$role$administrators-group:list,read,write,delete;deny{Admin$user$Fnord:write,delete};
QA

More Related Content

PPTX
Hibernate
ksain
 
PDF
Managing a shared mysql farm dpc11
Combell NV
 
PDF
Mining Software Archives to Support Software Development
Thomas Zimmermann
 
PDF
eROSE: Guiding programmers in Eclipse
Thomas Zimmermann
 
PDF
Testing with Node.js
Jonathan Waller
 
PDF
Mining Version Histories to Guide Software Changes
Thomas Zimmermann
 
PDF
Managing a shared_mysql_farm_phpday2011
Combell NV
 
PDF
A JCR View of the World - adaptTo() 2012 Berlin
Alexander Klimetschek
 
Hibernate
ksain
 
Managing a shared mysql farm dpc11
Combell NV
 
Mining Software Archives to Support Software Development
Thomas Zimmermann
 
eROSE: Guiding programmers in Eclipse
Thomas Zimmermann
 
Testing with Node.js
Jonathan Waller
 
Mining Version Histories to Guide Software Changes
Thomas Zimmermann
 
Managing a shared_mysql_farm_phpday2011
Combell NV
 
A JCR View of the World - adaptTo() 2012 Berlin
Alexander Klimetschek
 

What's hot (20)

PDF
node.js Module Development
Jay Harris
 
PDF
Dutch PHP Conference - PHPSpec 2 - The only Design Tool you need
Kacper Gunia
 
PDF
Advanced php testing in action
Jace Ju
 
PDF
MetaCDN
Cesare Pautasso
 
PDF
Webtuesday Zurich
David Nuescheler
 
PDF
Java设置环境变量
Zianed Hou
 
PPT
Symfony2 Service Container: Inject me, my friend
Kirill Chebunin
 
PPT
Corephpcomponentpresentation 1211425966721657-8
PrinceGuru MS
 
PDF
CRESTCon Asia 2018 - Config Password Encryption Gone Wrong
Keith Lee
 
PDF
Nagios Conference 2012 - Sheeri Cabral - Alerting With MySQL and Nagios
Nagios
 
PDF
301 Rac
Emanuel Mateus
 
PDF
Test driven node.js
Jay Harris
 
PDF
Php tips-and-tricks4128
PrinceGuru MS
 
PDF
SeqinR - biological data handling
pau_corral
 
PDF
Apache ZooKeeper
Scott Leberknight
 
PDF
Gdb cheat sheet
Piyush Mittal
 
PDF
Marrow: A Meta-Framework for Python 2.6+ and 3.1+
ConFoo
 
PDF
Dependency Injection in PHP
Kacper Gunia
 
PDF
Dutch php conference_apc_mem2010
isnull
 
PPT
ZFConf 2010: Zend Framework & MVC, Model Implementation (Part 2, Dependency I...
ZFConf Conference
 
node.js Module Development
Jay Harris
 
Dutch PHP Conference - PHPSpec 2 - The only Design Tool you need
Kacper Gunia
 
Advanced php testing in action
Jace Ju
 
Webtuesday Zurich
David Nuescheler
 
Java设置环境变量
Zianed Hou
 
Symfony2 Service Container: Inject me, my friend
Kirill Chebunin
 
Corephpcomponentpresentation 1211425966721657-8
PrinceGuru MS
 
CRESTCon Asia 2018 - Config Password Encryption Gone Wrong
Keith Lee
 
Nagios Conference 2012 - Sheeri Cabral - Alerting With MySQL and Nagios
Nagios
 
Test driven node.js
Jay Harris
 
Php tips-and-tricks4128
PrinceGuru MS
 
SeqinR - biological data handling
pau_corral
 
Apache ZooKeeper
Scott Leberknight
 
Gdb cheat sheet
Piyush Mittal
 
Marrow: A Meta-Framework for Python 2.6+ and 3.1+
ConFoo
 
Dependency Injection in PHP
Kacper Gunia
 
Dutch php conference_apc_mem2010
isnull
 
ZFConf 2010: Zend Framework & MVC, Model Implementation (Part 2, Dependency I...
ZFConf Conference
 
Ad

Similar to ATG Secure Repository (20)

PDF
Struts2 - 101
Munish Gupta
 
PDF
Servlets 3.0 - Asynchronous, Extensibility, Ease-of-use @ JavaOne Brazil 2010
Arun Gupta
 
PDF
Fifty New Features of Java EE 7 in Fifty Minutes
Arun Gupta
 
PDF
Fifty Features of Java EE 7 in 50 Minutes
glassfish
 
PPTX
Oleksandr Valetskyy - DI vs. IoC
Oleksandr Valetskyy
 
PDF
JavaOne India 2011 - Servlets 3.0
Arun Gupta
 
PDF
Introduction to java servlet 3.0 api javaone 2009
JavaEE Trainers
 
PDF
Crossing the Bridge: Connecting Rails and your Front-end Framework
Daniel Spector
 
PDF
PuppetDB: Sneaking Clojure into Operations
grim_radical
 
PPT
人人网技术架构的演进
airsex
 
PDF
Develop and Deploy your JavaEE micro service in less than 5 minutes with Apac...
Alex Soto
 
PDF
GlassFish REST Administration Backend
Arun Gupta
 
PDF
JDD2015: ClassIndex - szybka alternatywa dla skanowania klas - Sławek Piotrowski
PROIDEA
 
PDF
Logging for Production Systems in The Container Era
Sadayuki Furuhashi
 
PDF
ApacheCon EU 2014: Enterprise Development with Apache Karaf
Achim Nierbeck
 
PPTX
JAX-RS 2.0 and OData
Anil Allewar
 
PDF
Crossing the Streams Mesos &lt;> Kubernetes
Timothy St. Clair
 
PDF
Rxjava 介紹與 Android 中的 RxJava
Kros Huang
 
PDF
How lagom helps to build real world microservice systems
Markus Eisele
 
PDF
Microservices Manchester: How Lagom Helps to Build Real World Microservice Sy...
OpenCredo
 
Struts2 - 101
Munish Gupta
 
Servlets 3.0 - Asynchronous, Extensibility, Ease-of-use @ JavaOne Brazil 2010
Arun Gupta
 
Fifty New Features of Java EE 7 in Fifty Minutes
Arun Gupta
 
Fifty Features of Java EE 7 in 50 Minutes
glassfish
 
Oleksandr Valetskyy - DI vs. IoC
Oleksandr Valetskyy
 
JavaOne India 2011 - Servlets 3.0
Arun Gupta
 
Introduction to java servlet 3.0 api javaone 2009
JavaEE Trainers
 
Crossing the Bridge: Connecting Rails and your Front-end Framework
Daniel Spector
 
PuppetDB: Sneaking Clojure into Operations
grim_radical
 
人人网技术架构的演进
airsex
 
Develop and Deploy your JavaEE micro service in less than 5 minutes with Apac...
Alex Soto
 
GlassFish REST Administration Backend
Arun Gupta
 
JDD2015: ClassIndex - szybka alternatywa dla skanowania klas - Sławek Piotrowski
PROIDEA
 
Logging for Production Systems in The Container Era
Sadayuki Furuhashi
 
ApacheCon EU 2014: Enterprise Development with Apache Karaf
Achim Nierbeck
 
JAX-RS 2.0 and OData
Anil Allewar
 
Crossing the Streams Mesos &lt;> Kubernetes
Timothy St. Clair
 
Rxjava 介紹與 Android 中的 RxJava
Kros Huang
 
How lagom helps to build real world microservice systems
Markus Eisele
 
Microservices Manchester: How Lagom Helps to Build Real World Microservice Sy...
OpenCredo
 
Ad

Recently uploaded (20)

PDF
Brief History of Internet - Early Days of Internet
sutharharshit158
 
PDF
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
 
PDF
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
PDF
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
PDF
Doc9.....................................
SofiaCollazos
 
PPTX
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PDF
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
PPTX
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
PDF
The Evolution of KM Roles (Presented at Knowledge Summit Dublin 2025)
Enterprise Knowledge
 
PDF
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
PDF
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
PDF
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
PPTX
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
PDF
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
PDF
The Future of Artificial Intelligence (AI)
Mukul
 
PPTX
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
PDF
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
Brief History of Internet - Early Days of Internet
sutharharshit158
 
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
 
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
Doc9.....................................
SofiaCollazos
 
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
The Evolution of KM Roles (Presented at Knowledge Summit Dublin 2025)
Enterprise Knowledge
 
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
The Future of Artificial Intelligence (AI)
Mukul
 
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 

ATG Secure Repository

  • 1. ATG - SECURED D a t e : J u l y 6 th, 2 0 1 2 Author : Sanju Thomas REPOSITORY
  • 2. SUBJECT MATTER  Authentication and Authorization  Secured Data Access in ATG  ATG Repository Design  ATG Secured Repository Design  Configure a Secured Repository  Item Descriptor Level Security (Object Level )  Repository Item Level Security (Data Level )  Repository Item Property level security (Field Level)  ATG Access Control List (ACL)  ACL Components and Syntax  Secured Repository and Performance Considerations  Questions and Answers
  • 3. AUTHENTICATION AND AUTHORIZATION  Authentication  Identity of the user  Username/Password  Access Card  Finger Print  Retinal Scan  Kerberos  Secret Code  Two Factor  Public/Private Key  Digital Signature
  • 4. AUTHENTICATION AND AUTHORIZATION  Authorization  Is authenticated user entitled to perform an action on a resource? has role(s) can perform on a Role Action Resouce User Actions <<extend>> <<extend>> <<extend>> <<extend>> Create Read Update Delete
  • 5. SECURED DATA ACCESS IN ATG  The ATG secured repository system works in conjunction with the ATG Security System to provide fine -grained access control. S e c u r e Re p o s i to r y A content repository is decorated with security.
  • 6. ATG REPOSITORY STATIC DESIGN <<interface>> RepositoryViewContainer <<interface>> <<interface>> <<interface>> Repository DisplayableRepository ProxyableRepository <<interface>> <<interface>> <<interface>> <<interface>> <<interface>> RepositoryImpl SecuredRepository CompositeKeyRepository ContentRepository LoadBatchRepository MutableRepository MutableCompositeKeyRepository LDAPRepository GSARepository CompositeRepository MutableCompositeRepository <<interface>> RepositoryVersionContainer VersionRepository
  • 7. ATG SECURE REPOSITORY STATIC DESIGN <<abstract>> Repository <<abstract>> DisplayableRepository GenericService <<abstract>> <<abstract>> <<abstract>> RepositoryWrapper SecuredRepository MutableRepository GenericSecuredRepository <<abstract>> SecuredMutableRepository GenericSecuredMutableRepository <<abstract>> ContentRepository GenericSecuredMutableContentRepository GenericSecuredMutableVersionContentRepository
  • 8. CONFIGURE A SECURED REPOSITORY Unsecure Repository Secure Repository IDENTIFIER NAME DOB 1 Rahul Dravid 12-12-1980 2 Sachin Tendulkar 01-01-1980 3 Anil Kumble 03-03-1980 IDENTIFIER NAME GENDER OWNER ITEM_ACL PROPERTY_ACL 1 Rahul Dravid Male Raju Who can do what? Who can do what? 2 Sachin Tendulkar Male Ramesan Who can do what? Who can do what? 3 Anil Kumble Male Nebu Who can do what? Who can do what?
  • 9. CONFIGURE A SECURED REPOSITORY Unsecure Repository Secure Repository <item-descriptor name=“cricketer" > <table name="cricketer" type="primary" id-column-names="identifier"> <property name="identifier" column-names="identifier" data-type="string"/> <property name="name" column-names="name" data-type="string"/> <property name="dob" column-names="dob" data-type="date"/> </table> </item-descriptor> <item-descriptor name=“cricketer" default="true"> <table name="cricketer" type="primary" id-column-names="identifier"> <property name="identifier" column-names="identifier" data-type="string"/> <property name="name" column-names="name" data-type="string"/> <property name="dob" column-names="dob" data-type="date"/> <property name="owner" column-names="owner" data-type="string"/> <property name="itemAcl" column-names="item_acl" data-type="string"/> <property name="propertyAcl" column-names="property_acl" data-type="string"/> </table> </item-descriptor>
  • 11. DEFINE SECURED REPOSITORY <secured-repository-template> <item-descriptor name="cricketer"> <descriptor-acl value="Admin$role$administrators -group:read,write,create,delete;Admin$role$everyone -group:read <owner-property name="owner"/> <acl-property name="item_acl"/> <creation-base-acl value="Admin$role$administrators-group: read,write,list,destroy,read_owner,write_owner,read_acl,write_acl ; Admin$role$everyone-group:read,list"/> <creation-owner-acl-template value="$:read,write,list,destroy"/> <creation-group-acl-template value="$:read,list"/> <property name="secured_property"> <descriptor-acl value="Admin$role$administrators-group:read,write;Admin$role$everyone -group:read"/> <acl-property name="property_acl"/> <creation-base-acl value="Admin$role$administrators-group:read,write"/> <creation-owner-acl-template value="$:read,write"/> <creation-group-acl-template value="$:read,write"/> </property> </item-descriptor> </secured-repository-template>
  • 12. CONFIGURE SECURED REPOSITORY # / c o m / m c f a d ye n / s o l ut io n / S e c ur e d C r i c kete r Re p o s i to r y. p ro p e r t ie s $ c l a s s = a t g . a d a p te r.s e c ur e .G e n e r ic S e c ur e d M ut a b l e Re p o s i to r y $ s c o p e = g lo ba l n a m e = S e c ur e C r i c kete r Re p o s i to r y r e p o s i to r yN a m e = S e c ur e C r ic kete r Re p o s i to r y # t h e u n s e c u r e r e p o s i to r y t h a t w e ' r e w r a p p i n g r e p o s i to r y= C r i c kete r Re p o s i to r y # T h e te m p l a te f i l e t h a t c o n f i g ur e s t h e r e p o s i to r y c o n f i gur a t io n F i le = se c ur e d - c r i c kete r - r e p o s i to r y.x m l # T h e s e c u r i t y c o n f i g ur a t i o n c o m p o n e n t u s e d b y t h e r e p o s i to r y s e c u r i t yC o n fi gur a t io n = / a t g / d yn a m o / s e c ur i t y/ S e c ur e d Re p o s i to r yS e c ur i t yC o n fi g ur a t i o n # Va r i o u s D y n a m o s e r v i c e s w e n e e d X M LTo o ls Fa c to r y = / a t g / d y n am o / s er v i ce / x m l / X M LTo o l s Fa c to r y t r a n s a c t i o n M a n a g e r = / a t g / d y n am o / t r a n s ac t i o n / Tr a n s a c t i o n M a n a g e r
  • 13. REGISTER SECURE REPOSITORY In order to expose the two repositories to the ATG Control Center Repository Editor and to activate them on application startup, you must add them to the initial Repositories property of the /atg/registry/ContentRepositories component. i n i t i a l R e p o s i t o r i e s + = / c o m / m c f a d y e n / s o l u t i o n / S e c u r e d C r i c k e t e r R e p o s i t o r y. p r o p e r t i e s , / c o m / m c f a d y e n / s o l u t i o n / C r i c ke t e r R e p o s i t o r y. p r o p e r t i e s
  • 16. ATG SECURIT Y SYSTEM Repository 1 Subject User Authority ACL Repository 2 Subject Repository N
  • 17. ACCESS CONTROL LIST Identity Access Control List Access Control Entry 1..* Access Right 1..* Grant Deny UD_IDENTITY ::= UD -name '$' principal - type '$' UD - principal – key : access rights Admin$role$administrators-group:list,read,write,delete;deny{Admin$user$Fnord:write,delete};
  • 18. QA