SlideShare une entreprise Scribd logo
1  sur  26
Applying dynamic security in Mondrian
David Fombella Pombal
http://anonymousbi.wordpress.com
@Pentaho_Fan
Applying dynamic security in Mondrian 2
About me
Simple Scenario
Complex Scenario
Introduction
Solution 1: Roles created using ETL
Solution 2: Dynamic Security
Applying dynamic security in Mondrian
Applying dynamic security in Mondrian 3
About Me
Simple Scenario
Complex Scenario
Introduction
Solution 1: Roles created using ETL
Solution 2: Dynamic Security
Applying dynamic security in Mondrian
Applying dynamic security in Mondrian 4
David Fombella Pombal
BI Consultant, Technical Developmental Editor and
Pentaho Community Guy
About me
Applying dynamic security in Mondrian 5
About Me
Simple Scenario
Complex Scenario
Introduction
Solution 1: Roles created using ETL
Solution 2: Dynamic Security
Applying dynamic security in Mondrian
Applying dynamic security in Mondrian 6
Introduction
•Mondrian is an open source ROLAP server written in
Java
•Reads from JDBC data sources
•Implements the MDX language
•Supports the XML for Analysis and olap4j interface
specifications.
•Included in Pentaho suite
Applying dynamic security in Mondrian 7
Introduction
•Mondrian allows role based data access
•Each user is assigned one or more roles
•Data access rules are set on the schema file
Applying dynamic security in Mondrian 8
About Me
Simple Scenario
Complex Scenario
Introduction
Solution 1: Roles created using ETL
Solution 2: Dynamic Security
Applying dynamic security in Mondrian
Applying dynamic security in Mondrian 9
Simple Scenario
•President has access to full data
•Country manager has access to a specific country
•A few roles are required
•Roles are created and assigned manually
•Access rules are edited by hand in XML file
Applying dynamic security in Mondrian 10
About me
Simple Scenario
Complex Scenario
Introduction
Solution 1: Roles created using ETL
Solution 2: Dynamic Security
Applying dynamic security in Mondrian
Applying dynamic security in Mondrian 11
Complex Scenario
•Case in Hand: PentahoFan fictitious company
•International multi-channel retailer
•Collects sales data from all its stores
•Needs to limit data visibility per user/role
•Stores distributed over five continents
•4 categories of users : President, Continent Manager,
Country Manager and Store Manager
•Over 8000 stores
Applying dynamic security in Mondrian 12
First reaction
Panic!
Applying dynamic security in Mondrian 13
Problem description
•Users and Security information will be stored in 2
database tables (users, users_scope)
users
u_userid
users
u_username
1 President
2 EuropeManager
3 NorthAmericaManager
4 AfricaManager
16 SpainManager
20 USManager
21 EgyptManager
50 Store1Manager
58 Store7Manager
59 Store8Manager
users_scope
s_userid
users_scope
s_storeid
1 1
1 2
1 100
2 1
2 2
2 3
16 1
16 2
50 1
58 7
Applying dynamic security in Mondrian 14
Dimensions Measures
Problem description
•Quantity
•Amount
Applying dynamic security in Mondrian 15
Easy to use +
Open Source +
BI Solution =
Pentaho and
Mondrian!
Searching
Applying dynamic security in Mondrian 16
About me
Simple Scenario
Complex Scenario
Introduction
Solution 1: Roles created using ETL
Solution 2: Dynamic Security
Applying dynamic security in Mondrian
Applying dynamic security in Mondrian 17
Solution 1: Roles created using ETL
•Add Roles to a Mondrian schema template using a Kettle
Transformation
Applying dynamic security in Mondrian 18
Solution 1: Roles created using ETL
Problems:
•Performance issues
•ETL execution required if
a new store opens
•Cube up to date?
Applying dynamic security in Mondrian 19
About Me
Simple Scenario
Complex Scenario
Introduction
Solution 1: Roles created using ETL
Solution 2: Dynamic Security
Applying dynamic security in Mondrian
Applying dynamic security in Mondrian 20
Solution 2: Dynamic Security
Dynamic Schema Processor
•Restricting data using a dynamic schema processor
(DSP)
•Prior to Mondrian using the schema, the DSP can
modify the schema.
Applying dynamic security in Mondrian 21
Time to code
Java +
Eclipse IDE =
Perfect
combination!
Applying dynamic security in Mondrian 22
Solution 2: Dynamic Security
Applying dynamic security in Mondrian 23
Solution 2: Dynamic Security
•Restricting data in store dimension using SQL view
Applying dynamic security in Mondrian 24
Solution 2: Dynamic Security
•Sales Cube using a SQL view
Applying dynamic security in Mondrian 25
Solution 2: Dynamic Security
Benefits:
• Nice Performance
• Updated cube
• Go live
Applying dynamic security in Mondrian 26
The End

Contenu connexe

En vedette (8)

Social Networking
Social NetworkingSocial Networking
Social Networking
 
System development life cycle
System development life cycleSystem development life cycle
System development life cycle
 
Gram negative rods
Gram negative rodsGram negative rods
Gram negative rods
 
Ieee paper mobile boadband
Ieee paper mobile boadbandIeee paper mobile boadband
Ieee paper mobile boadband
 
Rss
RssRss
Rss
 
Record Storage
Record StorageRecord Storage
Record Storage
 
Troublemaker
TroublemakerTroublemaker
Troublemaker
 
Walk Through Wednesday
Walk Through WednesdayWalk Through Wednesday
Walk Through Wednesday
 

Similaire à Mondrian applying dynamic security - Pentaho

DevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve Poole
DevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve PooleDevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve Poole
DevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve Poole
JAXLondon_Conference
 

Similaire à Mondrian applying dynamic security - Pentaho (20)

Business Intelligence Solutions
Business Intelligence SolutionsBusiness Intelligence Solutions
Business Intelligence Solutions
 
Docker taylor swift and protection v06
Docker taylor swift and protection v06Docker taylor swift and protection v06
Docker taylor swift and protection v06
 
Disaster Recovery Solutions
Disaster Recovery SolutionsDisaster Recovery Solutions
Disaster Recovery Solutions
 
SOPHOS presentation used during the SWITCHPOINT NV/SA Quarterly Experience Da...
SOPHOS presentation used during the SWITCHPOINT NV/SA Quarterly Experience Da...SOPHOS presentation used during the SWITCHPOINT NV/SA Quarterly Experience Da...
SOPHOS presentation used during the SWITCHPOINT NV/SA Quarterly Experience Da...
 
TrendMicro - Security Designed for the Software-Defined Data Center
TrendMicro - Security Designed for the Software-Defined Data CenterTrendMicro - Security Designed for the Software-Defined Data Center
TrendMicro - Security Designed for the Software-Defined Data Center
 
A Microservice Architecture for Big Data Pipelines
A Microservice Architecture for Big Data PipelinesA Microservice Architecture for Big Data Pipelines
A Microservice Architecture for Big Data Pipelines
 
SharePoint Saturday Netherlands 2019 - Citizen dev. and the admin
SharePoint Saturday Netherlands 2019 - Citizen dev. and the adminSharePoint Saturday Netherlands 2019 - Citizen dev. and the admin
SharePoint Saturday Netherlands 2019 - Citizen dev. and the admin
 
How to Build a Basic Edge Cloud
How to Build a Basic Edge CloudHow to Build a Basic Edge Cloud
How to Build a Basic Edge Cloud
 
Is Docker Secure?
Is Docker Secure?Is Docker Secure?
Is Docker Secure?
 
A Plan to Control and Protect Data in the Private and Public Cloud
A Plan to Control and Protect Data in the Private and Public CloudA Plan to Control and Protect Data in the Private and Public Cloud
A Plan to Control and Protect Data in the Private and Public Cloud
 
Code to Cloud Workshop
Code to Cloud WorkshopCode to Cloud Workshop
Code to Cloud Workshop
 
IoT Seminar (Oct. 2016) Nicolas Damour - Sierra Wireless
IoT Seminar (Oct. 2016) Nicolas Damour - Sierra WirelessIoT Seminar (Oct. 2016) Nicolas Damour - Sierra Wireless
IoT Seminar (Oct. 2016) Nicolas Damour - Sierra Wireless
 
Combining LwM2M and OneM2M
Combining LwM2M and OneM2MCombining LwM2M and OneM2M
Combining LwM2M and OneM2M
 
Proactive Threat Detection and Safeguarding of Data for Enhanced Cyber resili...
Proactive Threat Detection and Safeguarding of Data for Enhanced Cyber resili...Proactive Threat Detection and Safeguarding of Data for Enhanced Cyber resili...
Proactive Threat Detection and Safeguarding of Data for Enhanced Cyber resili...
 
Threat_Modelling.pdf
Threat_Modelling.pdfThreat_Modelling.pdf
Threat_Modelling.pdf
 
JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"
JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"
JAXLondon 2015 "DevOps and the Cloud: All Hail the (Developer) King"
 
DevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve Poole
DevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve PooleDevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve Poole
DevOps and the cloud: all hail the (developer) king - Daniel Bryant, Steve Poole
 
Becoming Secure By Design: Questions You Should Ask Your Software Vendors
Becoming Secure By Design: Questions You Should Ask Your Software VendorsBecoming Secure By Design: Questions You Should Ask Your Software Vendors
Becoming Secure By Design: Questions You Should Ask Your Software Vendors
 
VMworld 2013: How to make most out of your Hybrid Cloud
VMworld 2013: How to make most out of your Hybrid Cloud VMworld 2013: How to make most out of your Hybrid Cloud
VMworld 2013: How to make most out of your Hybrid Cloud
 
miniproject
miniprojectminiproject
miniproject
 

Dernier

Toko Jual Viagra Asli Di Malang 081229400522 COD Obat Kuat Viagra Malang
Toko Jual Viagra Asli Di Malang 081229400522 COD Obat Kuat Viagra MalangToko Jual Viagra Asli Di Malang 081229400522 COD Obat Kuat Viagra Malang
Toko Jual Viagra Asli Di Malang 081229400522 COD Obat Kuat Viagra Malang
adet6151
 
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
pyhepag
 
1:1原版定制伦敦政治经济学院毕业证(LSE毕业证)成绩单学位证书留信学历认证
1:1原版定制伦敦政治经济学院毕业证(LSE毕业证)成绩单学位证书留信学历认证1:1原版定制伦敦政治经济学院毕业证(LSE毕业证)成绩单学位证书留信学历认证
1:1原版定制伦敦政治经济学院毕业证(LSE毕业证)成绩单学位证书留信学历认证
dq9vz1isj
 
Abortion pills in Dammam Saudi Arabia// +966572737505 // buy cytotec
Abortion pills in Dammam Saudi Arabia// +966572737505 // buy cytotecAbortion pills in Dammam Saudi Arabia// +966572737505 // buy cytotec
Abortion pills in Dammam Saudi Arabia// +966572737505 // buy cytotec
Abortion pills in Riyadh +966572737505 get cytotec
 
如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证
如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证
如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证
ju0dztxtn
 
Exploratory Data Analysis - Dilip S.pptx
Exploratory Data Analysis - Dilip S.pptxExploratory Data Analysis - Dilip S.pptx
Exploratory Data Analysis - Dilip S.pptx
DilipVasan
 
Toko Jual Viagra Asli Di Salatiga 081229400522 Obat Kuat Viagra
Toko Jual Viagra Asli Di Salatiga 081229400522 Obat Kuat ViagraToko Jual Viagra Asli Di Salatiga 081229400522 Obat Kuat Viagra
Toko Jual Viagra Asli Di Salatiga 081229400522 Obat Kuat Viagra
adet6151
 
一比一原版纽卡斯尔大学毕业证成绩单如何办理
一比一原版纽卡斯尔大学毕业证成绩单如何办理一比一原版纽卡斯尔大学毕业证成绩单如何办理
一比一原版纽卡斯尔大学毕业证成绩单如何办理
cyebo
 
1:1原版定制利物浦大学毕业证(Liverpool毕业证)成绩单学位证书留信学历认证
1:1原版定制利物浦大学毕业证(Liverpool毕业证)成绩单学位证书留信学历认证1:1原版定制利物浦大学毕业证(Liverpool毕业证)成绩单学位证书留信学历认证
1:1原版定制利物浦大学毕业证(Liverpool毕业证)成绩单学位证书留信学历认证
ppy8zfkfm
 

Dernier (20)

Toko Jual Viagra Asli Di Malang 081229400522 COD Obat Kuat Viagra Malang
Toko Jual Viagra Asli Di Malang 081229400522 COD Obat Kuat Viagra MalangToko Jual Viagra Asli Di Malang 081229400522 COD Obat Kuat Viagra Malang
Toko Jual Viagra Asli Di Malang 081229400522 COD Obat Kuat Viagra Malang
 
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
 
1:1原版定制伦敦政治经济学院毕业证(LSE毕业证)成绩单学位证书留信学历认证
1:1原版定制伦敦政治经济学院毕业证(LSE毕业证)成绩单学位证书留信学历认证1:1原版定制伦敦政治经济学院毕业证(LSE毕业证)成绩单学位证书留信学历认证
1:1原版定制伦敦政治经济学院毕业证(LSE毕业证)成绩单学位证书留信学历认证
 
Genuine love spell caster )! ,+27834335081) Ex lover back permanently in At...
Genuine love spell caster )! ,+27834335081)   Ex lover back permanently in At...Genuine love spell caster )! ,+27834335081)   Ex lover back permanently in At...
Genuine love spell caster )! ,+27834335081) Ex lover back permanently in At...
 
Abortion pills in Dammam Saudi Arabia// +966572737505 // buy cytotec
Abortion pills in Dammam Saudi Arabia// +966572737505 // buy cytotecAbortion pills in Dammam Saudi Arabia// +966572737505 // buy cytotec
Abortion pills in Dammam Saudi Arabia// +966572737505 // buy cytotec
 
Pre-ProductionImproveddsfjgndflghtgg.pptx
Pre-ProductionImproveddsfjgndflghtgg.pptxPre-ProductionImproveddsfjgndflghtgg.pptx
Pre-ProductionImproveddsfjgndflghtgg.pptx
 
如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证
如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证
如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证
 
How to Transform Clinical Trial Management with Advanced Data Analytics
How to Transform Clinical Trial Management with Advanced Data AnalyticsHow to Transform Clinical Trial Management with Advanced Data Analytics
How to Transform Clinical Trial Management with Advanced Data Analytics
 
Formulas dax para power bI de microsoft.pdf
Formulas dax para power bI de microsoft.pdfFormulas dax para power bI de microsoft.pdf
Formulas dax para power bI de microsoft.pdf
 
123.docx. .
123.docx.                                 .123.docx.                                 .
123.docx. .
 
Exploratory Data Analysis - Dilip S.pptx
Exploratory Data Analysis - Dilip S.pptxExploratory Data Analysis - Dilip S.pptx
Exploratory Data Analysis - Dilip S.pptx
 
2024 Q1 Tableau User Group Leader Quarterly Call
2024 Q1 Tableau User Group Leader Quarterly Call2024 Q1 Tableau User Group Leader Quarterly Call
2024 Q1 Tableau User Group Leader Quarterly Call
 
ℂall Girls Balbir Nagar ℂall Now Chhaya ☎ 9899900591 WhatsApp Number 24/7
ℂall Girls Balbir Nagar ℂall Now Chhaya ☎ 9899900591 WhatsApp  Number 24/7ℂall Girls Balbir Nagar ℂall Now Chhaya ☎ 9899900591 WhatsApp  Number 24/7
ℂall Girls Balbir Nagar ℂall Now Chhaya ☎ 9899900591 WhatsApp Number 24/7
 
Toko Jual Viagra Asli Di Salatiga 081229400522 Obat Kuat Viagra
Toko Jual Viagra Asli Di Salatiga 081229400522 Obat Kuat ViagraToko Jual Viagra Asli Di Salatiga 081229400522 Obat Kuat Viagra
Toko Jual Viagra Asli Di Salatiga 081229400522 Obat Kuat Viagra
 
How I opened a fake bank account and didn't go to prison
How I opened a fake bank account and didn't go to prisonHow I opened a fake bank account and didn't go to prison
How I opened a fake bank account and didn't go to prison
 
basics of data science with application areas.pdf
basics of data science with application areas.pdfbasics of data science with application areas.pdf
basics of data science with application areas.pdf
 
一比一原版纽卡斯尔大学毕业证成绩单如何办理
一比一原版纽卡斯尔大学毕业证成绩单如何办理一比一原版纽卡斯尔大学毕业证成绩单如何办理
一比一原版纽卡斯尔大学毕业证成绩单如何办理
 
1:1原版定制利物浦大学毕业证(Liverpool毕业证)成绩单学位证书留信学历认证
1:1原版定制利物浦大学毕业证(Liverpool毕业证)成绩单学位证书留信学历认证1:1原版定制利物浦大学毕业证(Liverpool毕业证)成绩单学位证书留信学历认证
1:1原版定制利物浦大学毕业证(Liverpool毕业证)成绩单学位证书留信学历认证
 
NOAM AAUG Adobe Summit 2024: Summit Slam Dunks
NOAM AAUG Adobe Summit 2024: Summit Slam DunksNOAM AAUG Adobe Summit 2024: Summit Slam Dunks
NOAM AAUG Adobe Summit 2024: Summit Slam Dunks
 
Atlantic Grupa Case Study (Mintec Data AI)
Atlantic Grupa Case Study (Mintec Data AI)Atlantic Grupa Case Study (Mintec Data AI)
Atlantic Grupa Case Study (Mintec Data AI)
 

Mondrian applying dynamic security - Pentaho

  • 1. Applying dynamic security in Mondrian David Fombella Pombal http://anonymousbi.wordpress.com @Pentaho_Fan
  • 2. Applying dynamic security in Mondrian 2 About me Simple Scenario Complex Scenario Introduction Solution 1: Roles created using ETL Solution 2: Dynamic Security Applying dynamic security in Mondrian
  • 3. Applying dynamic security in Mondrian 3 About Me Simple Scenario Complex Scenario Introduction Solution 1: Roles created using ETL Solution 2: Dynamic Security Applying dynamic security in Mondrian
  • 4. Applying dynamic security in Mondrian 4 David Fombella Pombal BI Consultant, Technical Developmental Editor and Pentaho Community Guy About me
  • 5. Applying dynamic security in Mondrian 5 About Me Simple Scenario Complex Scenario Introduction Solution 1: Roles created using ETL Solution 2: Dynamic Security Applying dynamic security in Mondrian
  • 6. Applying dynamic security in Mondrian 6 Introduction •Mondrian is an open source ROLAP server written in Java •Reads from JDBC data sources •Implements the MDX language •Supports the XML for Analysis and olap4j interface specifications. •Included in Pentaho suite
  • 7. Applying dynamic security in Mondrian 7 Introduction •Mondrian allows role based data access •Each user is assigned one or more roles •Data access rules are set on the schema file
  • 8. Applying dynamic security in Mondrian 8 About Me Simple Scenario Complex Scenario Introduction Solution 1: Roles created using ETL Solution 2: Dynamic Security Applying dynamic security in Mondrian
  • 9. Applying dynamic security in Mondrian 9 Simple Scenario •President has access to full data •Country manager has access to a specific country •A few roles are required •Roles are created and assigned manually •Access rules are edited by hand in XML file
  • 10. Applying dynamic security in Mondrian 10 About me Simple Scenario Complex Scenario Introduction Solution 1: Roles created using ETL Solution 2: Dynamic Security Applying dynamic security in Mondrian
  • 11. Applying dynamic security in Mondrian 11 Complex Scenario •Case in Hand: PentahoFan fictitious company •International multi-channel retailer •Collects sales data from all its stores •Needs to limit data visibility per user/role •Stores distributed over five continents •4 categories of users : President, Continent Manager, Country Manager and Store Manager •Over 8000 stores
  • 12. Applying dynamic security in Mondrian 12 First reaction Panic!
  • 13. Applying dynamic security in Mondrian 13 Problem description •Users and Security information will be stored in 2 database tables (users, users_scope) users u_userid users u_username 1 President 2 EuropeManager 3 NorthAmericaManager 4 AfricaManager 16 SpainManager 20 USManager 21 EgyptManager 50 Store1Manager 58 Store7Manager 59 Store8Manager users_scope s_userid users_scope s_storeid 1 1 1 2 1 100 2 1 2 2 2 3 16 1 16 2 50 1 58 7
  • 14. Applying dynamic security in Mondrian 14 Dimensions Measures Problem description •Quantity •Amount
  • 15. Applying dynamic security in Mondrian 15 Easy to use + Open Source + BI Solution = Pentaho and Mondrian! Searching
  • 16. Applying dynamic security in Mondrian 16 About me Simple Scenario Complex Scenario Introduction Solution 1: Roles created using ETL Solution 2: Dynamic Security Applying dynamic security in Mondrian
  • 17. Applying dynamic security in Mondrian 17 Solution 1: Roles created using ETL •Add Roles to a Mondrian schema template using a Kettle Transformation
  • 18. Applying dynamic security in Mondrian 18 Solution 1: Roles created using ETL Problems: •Performance issues •ETL execution required if a new store opens •Cube up to date?
  • 19. Applying dynamic security in Mondrian 19 About Me Simple Scenario Complex Scenario Introduction Solution 1: Roles created using ETL Solution 2: Dynamic Security Applying dynamic security in Mondrian
  • 20. Applying dynamic security in Mondrian 20 Solution 2: Dynamic Security Dynamic Schema Processor •Restricting data using a dynamic schema processor (DSP) •Prior to Mondrian using the schema, the DSP can modify the schema.
  • 21. Applying dynamic security in Mondrian 21 Time to code Java + Eclipse IDE = Perfect combination!
  • 22. Applying dynamic security in Mondrian 22 Solution 2: Dynamic Security
  • 23. Applying dynamic security in Mondrian 23 Solution 2: Dynamic Security •Restricting data in store dimension using SQL view
  • 24. Applying dynamic security in Mondrian 24 Solution 2: Dynamic Security •Sales Cube using a SQL view
  • 25. Applying dynamic security in Mondrian 25 Solution 2: Dynamic Security Benefits: • Nice Performance • Updated cube • Go live
  • 26. Applying dynamic security in Mondrian 26 The End