Return to Open Positions

PhD Proposal : Trust based authorisation model in the Cloud (closed position)

Modèle et environnement d’autorisation basée sur la confiance pour le Cloud

Olivier Perrin
Claudia-Lavinia Ignat
Equipe Coast – LORIA – Inria
Campus Scientifique, 54506 Vandoeuvre
Olivier.Perrin@loria.fr

Candidat souhaité : Master 2 Recherche en Informatique ou Ingénieur en Informatique

Ce poste est pourvu

Problématique de recherche

Contrôler la sécurité dans des environnements collaboratifs distribués est une tâche difficile. En effet, les systèmes collaboratifs cherchent à rendre plus facile la collaboration entre utilisateurs en leur permettant d’accéder à toutes les informations et toutes les ressources dont ils sont susceptibles d’avoir besoin, qu’il s’agisse d’applications, de services ou d’informations. Dans le même temps, les mécanismes de contrôle d’accès eux cherchent à limiter l’accès et l’utilisation des données et ressources uniquement aux utilisateurs identifiés. De plus,  les mécanismes de gestion des identités, de gestion des autorisations et de révocation ont été conçus pour des systèmes centralisés mono-organisationnels (l’organisation possède le contrôle des identités, de l’accès aux ressources). Il est donc nécessaire de réfléchir à des mécanismes de sécurité́ qui soient désormais adaptés à la collaboration et qui tiennent compte de l’antinomie entre sécurité́ et collaboration.

Un état de l’art des mécanismes de sécurité́ dans les systèmes collaboratifs est présenté  dans (Tolone et al., 2005). Le modèle de contrôle d’accès discrétionnaire [Lampson et al., 1971] et ses variantes – des listes de contrôle d’accès (ACL – Access Control List) et des listes des capacités (Capability List) – spécifient les droits d’accès de chaque sujet pour chaque objet. Les systèmes collaboratifs comme Grove (Ellis et al., 1989), RTCAL (Grief et al., 1987), BSCW (Sikkel et al., 1997) ou Google Cloud Storage utilisent des ACLs. Le principal désavantage de ce modèle de contrôle d’accès est qu’il est très vulnérable aux modifications apportées par les utilisateurs, et qu’il est assez peu adapté aux changements dynamiques de droits d’accès.

Dans les mécanismes de contrôle d’accès basés sur les rôles (RBAC – Role-based Access Control) (Ferraiolo et al., 1992; Sandhu et al., 1996), les droits sont associés à un rôle fonctionnel ou un ensemble de rôles organisés de manière hiérarchique et non plus à des utilisateurs individuels. SUITE (Shen et al., 1992) et PREP (Neuwirth et al., 1990) sont des exemples de systèmes collaboratifs qui utilisent RBAC comme mécanisme de contrôle d’accès. Les mécanismes RBAC sont largement utilisés et ils offrent des avantages pour l’administration de la sécurité́ une fois que les rôles sont implémentés (Coyne et al., 2013). Mais les mécanismes RBAC sont couteux à implanter et à administrer et ils ne peuvent pas inclure de paramètres de contrôle spécifiques aux systèmes dynamiques distribués comme par exemple le temps ou la localisation d’un utilisateur. De plus, dans le contexte de fédérations d’organisations, mettre en place des rôles acceptés par toutes les parties est une gageure.

Les mécanismes de contrôle d’accès basés sur des attributs (ABAC – Attribute-based Access Control) ont été proposés pour adresser les désavantages de RBAC et offrir un contrôle d’accès flexible et adaptable pour les systèmes distribués. Dans ces mécanismes les demandes d’accès sont évaluées à travers des politiques contenant des attributs des entités (utilisateurs ou ressources). Les attributs utilisateurs sont des propriétés utilisateur dans le contexte du contrôle d’accès comme par exemple l’identifiant utilisateur. Les mécanismes ABAC requièrent un effort d’ingénierie considérable au niveau des attributs qui prennent un sens seulement quand ils sont associés avec un utilisateur, un objet ou une relation.

Ces différents mécanismes de contrôle d’accès posent deux difficultés. La première concerne la mise en œuvre de politiques de sécurité qui satisfassent tous les partenaires d’une collaboration. Une question difficile est de savoir comment gérer simplement l’arrivée ou le départ d’un partenaire. La seconde difficulté concerne l’obligation de soumettre une demande d’accès à une autorité́ de confiance centralisée qui gère les politiques et d’attendre sa décision. Dans le cas d’une fédération d’organisations, trouver et se mettre d’accord sur une telle autorité est quasiment impossible. De plus, dans le contexte collaboratif, il doit être possible pour un des partenaires de révoquer rapidement une autorisation accordée préalablement, sans avoir besoin de contacter une autorité externe (conservation de l’autonomie vis-à-vis de sa gestion des autorisations). En effet, une fois que les utilisateurs ont collaboré, ils peuvent souhaiter que certains autres utilisateurs n’aient plus accès aux nouvelles modifications apportés aux documents partagés. Il est normal que les utilisateurs qui ont eu accès à une version du document et qui ont contribué́ à une version du document gardent cette version du document même s’ils n’ont plus accès aux versions suivantes.

Sujet

La première partie du travail de thèse consistera à proposer un modèle de gestion des identités et des autorisations qui permettent le partage de ressources (applications/services/documents) dans un environnement distribué et collaboratif. Ce modèle pourra s’inspirer des modèles multi-niveaux et devra éviter que le mécanisme de contrôle d’accès nécessite une autorité́ centrale. Ce modèle devra également être capable de supporter les concepts de délégation et de contexte. Il devra prendre en compte le mécanisme de révocation permettant à un des partenaires de garantir une révocation immédiate et irréversible. Le point de départ sera basé sur les travaux menés dans l’équipe COAST à propos de la sécurisation de la plateforme collaborative OpenPaaS (Bouchami et al., 2014) et de la sécurisation de données collaboratives (Truong et al., 2012).

Un aspect important dans les systèmes collaboratifs distribués concerne la confiance. La confiance est un concept difficile à définir. Il est cependant accepté que le processus de prise de décision d’une autorisation pourrait s’appuyer sur la notion de confiance (Yan et al., 2008). Plusieurs approches ont introduit la notion de confiance dans les mécanismes de contrôle d’accès (Chakraborty et al., 2006). Ces approches vérifient la valeur de confiance avant de permettre aux utilisateurs d’accéder aux données. Les approches existantes définissent des politiques d’autorisation qui incluent la confiance mais elles ne prennent pas en compte le processus de calcul de la confiance. Dans le contexte d’une plateforme collaborative, la confiance pourrait être calculée à partir de l’histoire respect ou de la violation des permissions par les utilisateurs.

Le modèle de sécurité proposé devra dans un deuxième temps se baser sur des modèles de confiance entre les utilisateurs. Ces modèles, qui utilisent entre autre sur des modèles de réputation, seront construits à partir des historiques de collaboration et du graphe social des participants. Ce mécanisme devra être simple d’usage et compréhensible. Les mécanismes de sécurité́ développés pour les différents composants collaboratifs devront pouvoir inter-opérer entre eux en adaptant leurs politiques de sécurité́ et éventuellement s’intégrer avec des systèmes grand public ou ouverts. Une attention particulière sera portée sur les niveaux de sécurité́ qui devront être définis pour limiter l’accès aux données par les mécanismes d’inférences et de recommandation.

Compétences théoriques requises

Algorithmique distribuée, calcul des évènements,  sécurité (modèles de contrôle d’accès, gestion des identités) , informatique orienté service

Compétences techniques requises

Développement java, javascript, serveur d’application (Java EE), SGBD, Cloud

Bibliographie

W. Tolone, G.-J. Ahn, T. Pai, et S.-P. Hong. 2005. Access control in collaborative systems. Dans ACM Computing Surveys, 37(1).

Ellis, C.A., Gibbs, S.J. et Rein, G.L. 1989. Design and use of a group editor. Dans International Federation for Information Processing Working Group 2.7, Working Conference on Engineering for Human-Computer Interaction.

Grief, I. and Sarin, S. 1987. Data sharing in group work. Dans ACM Transactions on Information Systems 5(2).

Klaas Sikkel. 1997. A group-based authorization model for cooperative systems. Dans Proceedings of the 5th conference on European Conference on Computer-Supported Cooperative Work – ECSCW 1997.

David F. Ferraiolo et D. Richard Kuhn. Role-based Access Controls. Dans Proceedings of the 15th National Computer Security Conference.

Sandhu, R. S., Coyne, E. J., Feinstein, H. L., et Youman, C. E. 1996. Role-based access control models. IEEE Computer 29(2).

HongHai Shen and Prasun Dewan. 1992. Access Control for Collaborative Environments. Dans Proceedings of the 1992 ACM conference on Computer-supported cooperative work – CSCW 1992.

Christine M. Neuwirth, David S. Kaufer, Ravinder Chandhok, et James H. Morris. 1990. Issues in the design of computer support for co-authoring and commenting. Dans Proceedings of the 1990 ACM conference on Computer-supported cooperative work – CSCW 1990.

Ed Coyne et Timothy R. Weil. 2013. ABAC and RBAC: Scalable, Flexible, and Auditable Access Management. Dans IT Professional. 15(3).

S. Chakraborty et I. Ray. 2006. TrustBAC: Integrating Trust Relationships into the RBAC Model for Access Control in Open Systems. Dans Proceedings of the 11th ACM Symposium on Access Control Models and Technologies – SACMAT 2006.

Yan, Z., Holtmanns, S. 2008. Trust Modeling and Management: from Social Trust to Digital Trust. Dans Computer Security, Privacy and Politics: Current Issues, Challenges and Solutions.

Paul Watson, Mark Little. Multilevel Security for Deploying Distributed Applications on Clouds, Devices and Things. Newcastle University, Technical Report Series, No. CS-TR-1430. August 2014

Paul Simmonds. Identity is the new Currency. The Global Identity Foundation. 2014

Arnar Birgisson, Joe Gibbs Politz, Ulfar Erlingsson, Ankur Taly, Michael Vrable, Mark Lentczner. Macaroons: Cookies with Contextual Caveats for Decentralized Authorization in the Cloud. NDSS ’14, San Diego, CA, USA. February 2014

Sultan Ullah, Zheng Xuefeng, Zhou Feng. TCloud: A Dynamic Framework and Policies for Access Control across Multiple Domains in Cloud Computing. International Journal of Computer Applications (0975 – 8887) Volume 62– No.2, January 2013

Hien Thi Thu Truong, Claudia-Lavinia Ignat, Pascal Molli. Authenticating Operation-based History in Collaborative Systems. ACM 2012 International Conference on Support Group Work – GROUP’2012, pages 131–140, Sanibel Island, Floride, Etats-Unis, 2012

Ehtesham Zahoor, Olivier Perrin, Ahmed Bouchami. CATT: A Cloud Based Authorization Framework with Trust and Temporal Aspects. CollaborateCom 2014, 10th IEEE International Conference on Collaborative Computing: Networking, Applications and Worksharing, Oct 2014, Miami, Florida, United States.

Title: A Trust Based Authorization Model and Framework for the Cloud
Keywords: Distributed collaborative systems, security, trust, service-oriented architecture, event calculus, game theory
Detailed subject: http://www.loria.fr/~ignatcla/pmwiki/pmwiki.php/Main/Thesis15

Employment period: 1/09/2015 – 31/08/2018
Salary: 1757 euros gross monthly

The required documents for applying are the following:
* A detailed CV with a description of your previous research
* Transcripts of undergraduate and graduate studies
* List of 2-3 reference persons
* Links to masters and internship thesis/reports, and publications if applicable
* Links to examples of software personal contributions (on github or similar)
* A motivation letter explaining how the candidate research project matches with the research topic proposed

All the documents should be sent to Claudia Ignat (claudia.ignat@loria.fr) by June 1, 2015.