Authentication and Authorization in Microservices Architecture: A Systematic Literature Review
Source abstract
Abstract
The microservice architectural style splits an application into small services, which are implemented independently, with their own deployment unit. This architecture can bring benefits, nevertheless, it also poses challenges, especially about security aspects. In this case, there are several microservices within a single system, it represents an increase in the exposure of the safety surface, unlike the monolithic style, there are several applications running independently and must be secured individually. In this architecture, microservices communicate with each other, sometimes in a trust relationship. In this way, unauthorized access to a specific microservice could compromise an entire system. Therefore, it brings a need to explore knowledge about issues of security in microservices, especially in aspects of authentication and authorization. In this work, a Systematic Literature Review is carried out to answer questions on this subject, involving aspects of the challenges, mechanisms and technologies that deal with authentication and authorization in microservices. It was found that there are few studies dealing with the subject, especially in practical order, however, there is a consensus that communication between microservices, mainly due to its individual and trustworthy characteristics, is a concern to be considered. To face the problems, mechanisms such as OAuth 2.0, OpenID Connect, API Gateway and JWT are used. Finally, it was found that there are few open-source technologies that implement the researched mechanisms, with some mentions of the Spring Framework.
Source: crossref · Quality: baseline
Research context
OpenAlex topics: IoT and Edge/Fog Computing · Software System Performance and Reliability · Cloud Computing and Resource Management
SciVX discovery tags are terminology-based. OpenAlex topics are source-provided classifications.
Affiliations
Department of Computer Science, University of Brasília (UnB), P.O. Box 4466, Brasilia 70910-900, Brazil
References (51)
Show source-provided references
1. Lewis, J., and Fowler, M. (2014). Microservices—A Definition of This New Archtectural Term, EA PAD.
2. Merson, P. (2015). Microservices beyond the Hype: What You Gain and What You Lose, SEI Digital Library.
3. Security in microservices architectures10.1016/j.procs.2021.01.320 ↗
4. Security in microservice-based systems: A Multivocal literature review10.1016/j.cose.2021.102200 ↗
5. Pippal, S.K., Kumari, A., and Kushwaha, D.S. (2011, January 15–17). CTES based Secure approach for Authentication and Authorization of Resource and Service in Clouds. Proceedings of the 2011 2nd International Conference on Computer and Communication Technology (ICCCT-2011), Allahabad, India.10.1109/ICCCT.2011.6075140 ↗
6. Halonen, T. (2000). Authentication and authorization in mobile environment. Tik-110.501 Seminar on Network Security, Citeseer.
7. Yarygina, T., and Bagge, A.H. (2018, January 26–29). Overcoming Security Challenges in Microservice Architectures. Proceedings of the 12th IEEE International Symposium on Service-Oriented System Engineering, SOSE 2018 and 9th International Workshop on Joint Cloud Computing, JCC 2018, Bamberg, Germany.10.1109/SOSE.2018.00011 ↗
8. Barabanov, A., and Makrushin, D. (2020). Authentication and authorization in microservice-based systems: Survey of architecture patterns. arXiv.10.21681/2311-3456-2020-04-32-43 ↗
9. Sun, Y., Nanda, S., and Jaeger, T. (December, January 30). Security-as-a-service for microservices-based cloud applications. Proceedings of the IEEE 7th International Conference on Cloud Computing Technology and Science, CloudCom 2015, Vancouver, BC, Canada.10.1109/CloudCom.2015.93 ↗
10. Mehraj, S., and Banday, M.T. (2020, January 22–24). Establishing a Zero Trust Strategy in Cloud Computing Environment. Proceedings of the 2020 International Conference on Computer Communication and Informatics (ICCCI), Coimbatore, India.10.1109/ICCCI48352.2020.9104214 ↗
11. Rose, S., Borchert, O., Mitchell, S., and Connelly, S. (2020). Zero Trust Architecture, National Institute of Standards and Technology. Technical Report.10.6028/NIST.SP.800-207 ↗
12. Adoption of free/libre open source software in public organizations: Factors of impact10.1108/09593841211232677 ↗
13. Open source software and the “private-collective” innovation model: Issues for organization science10.1287/orsc.14.2.209.14992 ↗
14. Lavazza, L. (2007, January 25–31). Beyond Total Cost of Ownership: Applying Balanced Scorecards to Open-Source Software. Proceedings of the International Conference on Software Engineering Advances (ICSEA 2007), Cap Esterel, France.10.1109/ICSEA.2007.19 ↗
15. Xu, R., Jin, W., and Kim, D. (2019). Microservice security agent based on API gateway in edge computing. Sensors, 19.10.3390/s19224905 ↗
16. Implementing secure applications in smart city clouds using microservices10.1016/j.future.2019.04.042 ↗
17. Kitchenham, B., and Charters, S. (2007). Guidelines for Performing Systematic Literature Reviews in Software Engineering, EBSE.
18. Systematic literature reviews in software engineering—A systematic literature review10.1016/j.infsof.2008.09.009 ↗
19. Freitas, V. (2021, October 17). Parsifal, 2021. Available online: https://parsif.al.
20. Wohlin, C. (2014, January 13–14). Guidelines for Snowballing in Systematic Literature Studies and a Replication in Software Engineering. Proceedings of the 18th International Conference on Evaluation and Assessment in Software Engineering, London, UK. EASE ’14.10.1145/2601248.2601268 ↗
21. Information system development for restricting access to software tool built on microservice architecture10.1051/e3sconf/202022401041 ↗
22. Shulin, Y., and Jieping, H. (2020, January 28–31). Research on Unified Authentication and Authorization in Microservice Architecture. Proceedings of the International Conference on Communication Technology Proceedings, ICCT, Nanning, China.10.1109/ICCT50939.2020.9295931 ↗
23. Secure edge computing management based on independent microservices providers for gateway-centric IoT networks10.1109/ACCESS.2020.3030297 ↗
24. Applying Spring Security Framework and OAuth2 To Protect Microservice Architecture API10.17706/jsw.14.6.257-264 ↗
25. A survey on security issues in services communication of Microservices-enabled fog applications10.1002/cpe.4436 ↗
26. Enhancing Security to the Microservice (MS) Architecture By Implementing Authentication and Authorization Service using Docker and Kubernetes
27. Securing Microservices10.1109/MITP.2018.2876987 ↗
28. Pereira-Vale, A., Marquez, G., Astudillo, H., and Fernandez, E.B. (October, January 30). Security mechanisms used in microservices-based systems: A systematic mapping. Proceedings of the 2019 45th Latin American Computing Conference, CLEI 2019, Panama City, Panama.10.1109/CLEI47609.2019.235060 ↗
29. Banati, A., Kail, E., Karoczkai, K., and Kozlovszky, M. (2018, January 21–25). Authentication and authorization orchestrator for microservice-based software architectures. Proceedings of the 41st International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO), Opatija, Croatia.10.23919/MIPRO.2018.8400214 ↗
30. Defense-in-depth and Role Authentication for Microservice Systems10.1016/j.procs.2018.04.047 ↗
31. Fine-Grained Access Control for Microservices
32. Richter, D., Neumann, T., and Polze, A. (2018, January 19–21). Security considerations for microservice architectures. Proceedings of the CLOSER 2018-Proceedings of the 8th International Conference on Cloud Computing and Services Science, Funchal, Portugal.10.5220/0006791006080615 ↗
33. Cao, R., Lu, S., Wang, X., Xiao, H., and Chi, X. (2018, January 16–23). Unified Account Management for High Performance Computing as a Service with Microservice Architecture. Proceedings of the Unified Account Management for High Performance Computing as a Service with Microservice Architecture, Taipei, Taiwan.10.22323/1.327.0020 ↗
34. Lu, D., Huang, D., Walenstein, A., and Medhi, D. (2017, January 6–9). A Secure Microservice Framework for IoT. Proceedings of the Proceedings-11th IEEE International Symposium on Service-Oriented System Engineering, SOSE 2017, San Francisco, CA, USA.10.1109/SOSE.2017.27 ↗
35. Preuveneers, D., and Joosen, W. (2017). Access Control with Delegated Authorization Policy Evaluation for Data-Driven Microservice Workflows. Future Internet, 9.10.3390/fi9040058 ↗
36. Authentication and Authorization of End User in Microservice Architecture10.1088/1742-6596/910/1/012060 ↗
37. Torkura, K.A., Sukmana, M.I., and Meinel, C. (2017, January 5–8). Integrating continuous security assessments in microservices and cloud native applications. Proceedings of the UCC 2017-Proceedings of the10th International Conference on Utility and Cloud Computing, Austin, TX, USA.10.1145/3147213.3147229 ↗
38. Dooley, K. (2001). Designing Large Scale Lans: Help for Network Designers, O’Reilly Media.
39. Rfc 6749: The oauth 2.0 authorization framework
40. Jones, M., Bradley, J., and Sakimura, N. (2015). Rfc 7519: Json Web Token (jwt), IETF.10.17487/RFC7519 ↗
41. Foundation, O. (2022, February 04). How Is OpenID Connect Different than OpenID 2.0?. Available online: https://openid.net/connect/.
42. Rescorla, E. (2000). Rfc 2818: HTTP over TLS, Internet Engineering Task Force (IETF).10.17487/rfc2818 ↗
43. Sinnema, R., and Wilde, E. (2013). Rfc 7061: eXtensible Access Control Markup Language (XACML) XML Media Type, Internet Engineering Task Force (IETF).10.17487/rfc7061 ↗
44. Krawczyk, H., Bellare, M., and Canetti, R. (1997). MAC: Keyed-Hashing for Message Authenticatio, Internet Engineering Task Force (IETF).10.17487/rfc2104 ↗
45. Campbell, B., Mortimore, C., and Jones, M. (2015). Security Assertion Markup Language (SAML) 2.0 Profile for OAuth 2.0 Client Authentication and Authorization Grants, Internet Engineering Task Force (IETF).10.17487/RFC7522 ↗
46. (2021, October 14). Pivotal. Spring Cloud. Available online: https://spring.io/projects/spring-cloud.
47. Kit, G. (2022, February 04). Go Kit—A Toolkit for Microservices. Available online: https://gokit.io/.
48. Pallets Projects (2022, February 04). Flask Web Development. Available online: https://flask.palletsprojects.com/.
49. Microsoft (2022, February 04). NET Core. Available online: https://dotnet.microsoft.com/.
50. Kong (2021, October 14). Kong API Gateway. Available online: https://konghq.com/kong.
51. Guidelines for including grey literature and conducting multivocal literature reviews in software engineering10.1016/j.infsof.2018.09.006 ↗