3. Introduction - About Me
•
PhD Dissertation: “Model-Based Analysis of Role-Based
Access Control”
•
Supervisors: Charles B. Haley (retired), Yijun Yu, Michel
Wermelinger
•
Examiners: Jon Whittle (Lancaster), Robin Laney (OU)
8. Model-Driven Engineering
•
“[…] the consideration of models as first-class entities. A
model is an artefact that conforms to a metamodel and
that represents a given aspect of a system” [Bézivin06]
•
Model-Driven Security Engineering [FernandezMedina09]
14. rbacDSML, rbacUML and rbacMDE
•
one DSML
•
•
•
for RBAC only
using a UML profile
one DSL
•
•
one extension of UML
•
•
textual
to integrate RBAC into the design
from the same domain meta-model
21. rbacMDE - Sample Model
• user Doe {
role Student;
role TA;
}
user Wood {
role TA;
}
user Smith {
role Professor;
}
role Student {
permission Access Marks;
ssod Professor;
}
[…]
33. How are Solutions Generated
•
Fixing individual errors
•
•
completeness, correctness
Combining them to fix the whole model
•
“keep” profile
•
heuristics for building the graph
•
completeness, correctness
35. The Tool
•
Plugins for IBM Rational
Software Architect 8.0
•
EPL licence
•
Available on github
(contributions are very
welcome)
•
rbacUML and rbacDSML
modelling and verification
•
rbacDSML fixing
•
rbacMDE in progress (using
Xtext)
40. Chiselapp
•
Created both rbacUML and rbacDSML models
•
PHP_UML to extract a class diagram, grep and manual
inspection for the rest
•
We found a bug
•
… but the maintainer insists that it’s a feature
44. Thank you. Any questions?
The tool: http://computing-research.open.ac.uk/rbac/
My dissertation: http://oro.open.ac.uk/28672/
45. References
•
[Basin09] Basin, D.; Clavel, M.; Doser, J. & Egea, M. Automated analysis of security-design
models Information and Software Technology, 2009, 51, 815 - 831
•
[Basin11] Basin, D.; Clavel, M. & Egea, M. A decade of model-driven security Proceedings of
the 16th ACM symposium on Access control models and technologies, ACM, 2011, 1-10
•
[Bézivin06] Bézivin, J. Model Driven Engineering: An Emerging Technical Space Generative and
Transformational Techniques in Software Engineering, 2006, 36-64
•
[Egyed07] Egyed, A. Fixing Inconsistencies in UML Design Models ICSE '07: Proceedings of the
29th international conference on Software Engineering, IEEE Computer Society, 2007, 292-301
•
[Egyed11] Egyed, A. Automatically Detecting and Tracking Inconsistencies in Software Design
Models Software Engineering, IEEE Transactions on, 2011, 37, 188 -204
•
[Fernandez-Medina09] Fernández-Medina, E.; Jurjens, J.; Trujillo, J. & Jajodia, S. Model-Driven
Development for secure information systems Information and Software Technology, 2009, 51,
809 - 814
46. References (2)
•
[Hidaka10] Hidaka, S.; Hu, Z.; Inaba, K.; Kato, H.; Matsuda, K. & Nakano, K.
Bidirectionalizing graph transformations Proceedings of the 15th ACM SIGPLAN
international conference on Functional programming, ACM, 2010, 205-216
•
[Jürjens05] Jürjens, J.; Lehrhuber, M. & Wimmel, G. Model-Based Design and
Analysis of Permission-Based Security Proceedings of the 10th IEEE
International Conference on Engineering of Complex Computer Systems, IEEE
Computer Society, 2005, 224-233
•
[Montrieux09] Montrieux, L. Implementation of Access Control using AspectOriented Programming University of Namur, 2009
•
[Montrieux10] Montrieux, L.; Jürjens, J.; Haley, C. B.; Yu, Y.; Schobbens, P.-Y. &
Toussaint, H. Tool support for code generation from a UMLsec property
Proceedings of the IEEE/ACM international conference on Automated software
engineering, ACM, 2010, 357-358
47. References (3)
•
[Montrieux11] Montrieux, L.; Wermelinger, M. & Yu, Y. Tool support for
UML-based specification and verification of role-based access control
properties ESEC/FSE: Procs. SIGSOFT Symposium and European Conf.
on Foundations of Software Engineering, ACM, 2011, 456-459
•
[Petre13] Petre, M. UML in practice 35th International Conference on
Software Engineering (ICSE 2013), 2013
•
[Reder13] Reder, A. & Egyed, A. Determining the Cause of a Design Model
Inconsistency Software Engineering, IEEE Transactions on, 2013, 1-1
•
[Sandhu00] Sandhu, R.; Ferraiolo, D. & Kuhn, R. The NIST model for rolebased access control: towards a unified standard Proceedings of the fifth
ACM workshop on Role-based access control, ACM, 2000, 47-63
48. Pictures Credits
•
LHC by UK dept. for Business, Innovation and Skills (by-nd)
•
Newton’s tree by Bob Franklin (by-nc-nd)
•
Robot by Yo Mostro (by-nc-nd)
•
Giant wrenches by Lars Hammar (by-nc-sa)
•
Speedometer by Don Melanson (by-nc-sa)
•
Case study by Binuri Ranashinghe (by-nc-nd)
•
Holy Grail drawings by Jessica Hardaway (with permission)
•
SecureUML models from [Basin09]