ebook img

VACCINE REGISTRATION SYSTEM INTEGRATED WITH KEYCLOAK PDF

2022·0.56 MB·
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview VACCINE REGISTRATION SYSTEM INTEGRATED WITH KEYCLOAK

doi.org/10.54473/IJTRET.2022.6501 International Journal of Trendy Research in Engineering and Technology Volume 6 Issue 5 October 2022 ISSN NO 2582-0958 _______________________________________________________________________________ VACCINE REGISTRATION SYSTEM INTEGRATED WITH KEYCLOAK Vaddi Tharun Sai 1, D. Kalyan 2, U. Chaitanya 3, Dr. D. Vijaya Lakshmi 4 1,2 UG Student, 3 Assistant Professor, 4 Professor, Dept. of Information Technology, Mahatma Gandhi Institute of Technology,, Hyderabad, India Received on 24 May 2022 Accepted on 27 May 2022 ABSTRACT The objective of this paper is to provide an online registration system for covid-19 vaccination. In this crisis, it will be difficult to register in person and get vaccinated after waiting in a queue for a long period; thus, registering online is the safest and most convenient way to schedule slots on a convenient date and get vaccinated. We built this application using spring boot, which allows developers to directly get into coding without wasting time in setting up and configuring the environment. For authentication and authorization, we integrated it with keycloak, a third-party service, which is a simple way to make our web- based apps more secure and Keycloak provides distinctive features to the application like single Single-Sign On, OpenID Connect Support, Social Logins and many more. So, this is a web-based service where any individual can conveniently schedule their slots from anywhere according to the availability in their desired locations. Keywords — COVID-19 Vaccine, Vaccine Booking, REST API, Spring Boot, Keycloak, Authentication and Authorization. 1 INTRODUCTION COVID-19 was declared a global pandemic by the World must be able to reserve their slots because they are more Health Organization in March 2020, indicating the considerable vulnerable to the epidemic than younger people due to their global spread of an infectious disease. Since then, there have weakened immune systems. As a result, it will be preferable if been millions of cases and millions of people have died. The they can book individually without the assistance of others. The development of safe and effective Covid-19 vaccination is a application is simple to use and has more functionalities than significant step forward in the global campaign to eradicate the the previous one and it was designed in such a way that even epidemic. Hence, an online service will be crucial for booking elderly people can easily book their slots conveniently. In this vaccine slots in nearby hospitals which helps every individual application, we integrated our spring boot-based application to easily book their slots from their convenient place. This web with keycloak[1], a third party for authentication and application is created using spring boot, which can create a authorization. Keycloak provides many unique features like standalone application that can run on its own, and even it does single sign-on, supporting multiple protocols like OAuth not require any external servers to run because here it has an 2.0[2], OpenID Connect[ 3], and SAML. As everyone today are embedded server like tomcat. In this application, there are two using social media apps, so for their convenience, the keycloak roles, admin and user. also has a feature called Identity Brokering and Social Login, Here, an admin can manage the hospital details, vaccine where the users can log in using their social media apps timings, and details related to vaccine models, and a user can conveniently. In the keycloak admin console, we can manage select their nearby hospital and type of vaccine for vaccination the sessions of the users and can also customize the default and can book their slots in the available timings and can safely login page of keycloak. After deploying this application, it get vaccinated. This allows the user to receive a reminder to his became accessible to users who want to get vaccinated safely. email, which is useful for people who are busy at work. They Finally, when compared with the existing system, which is also receive their slot times and booking information by email, integrated with WSO2 IS(Web Services oxygenated Identity which they may check at any time. Elderly individuals Server)[4], this system is easy to deploy and maintain. www.trendytechjournals.com 1 International Journal of Trendy Research in Engineering and Technology Volume 6 Issue 5 October 2022 ISSN NO 2582-0958 _______________________________________________________________________________ 2 RELATED WORK 3 METHODOLOGY An Online Appointment Booking System [5] was proposed by 3.1 Modules: This System consists of two modules, which are Akshay V, et al. It's a web-based registration solution for admin module and user module, when we register we will be parlour, hospital, and architect appointments in a specified automatically assigned to user module where we will have the geographic area. On an ionic basis, this application is option to book our vaccination slots and we also have the option streamlined. It's an open-source SDK that lets you make web to verify the vaccine booking for confirmation. Here admin is and mobile apps. CSS, HTML, and JavaScript are all used. the one who manages this entire application and who has the Firebase is required for accessing data for appointment control to modify or add any details related to hospitals or the scheduling, which supports in the development of useful vaccine models, its timings and number of slots and everything applications. Analytics, database, messaging, and crash is managed by admin. reporting are all included in this. The system keeps track of the Admin Module number of requests by using NodeJS. Each request defines a An admin has a role where they can add or delete the hospitals sequence of locations that a user should view. with respect to their availability, an admin can add or delete vaccine models, number of slots and the timings accordingly. Shelar Pooja, et al.[6] proposed Smart Appointment Generation For Patient. In hospitals, making appointments and schedules User Module are used to keep track of and regulate access to facility The users can login to the application and can book their providers. A greater patient care, strict cost control, increased vaccination slots in their nearby hospitals according to the profitability, medical record management, and patient availability of the slots and they also have an option to delete information privacy are all advantages of this smart the scheduled slots. appointment generation for a patient. The research is Hence these are the two different roles in this vaccine quantitative, with the majority of the data coming from surveys. registration system and these roles are managed by keycloak. Existing survey data and unique case studies are taken into account to arrive at a definitive conclusion. We can log in with a username and password with this system. 3.2 Architecture: In this vaccine registration system, our spring boot application is integrated with the keycloak to Web-Based Medical Appointment Systems were proposed by improve the systems performance and to add some unique Peng Zhao et al [7]. The goal of this study was to assess the features. Here, an admin can access all the functionalities and a benefits and challenges of implementing Web-based medical user accesses websites over the internet, and when he makes a scheduling, and also unmet needs in today's modern healthcare request, if he is approved, he receives the desired page; if he is system, as indicated in the literature. Due to concerns regarding not authorized, he receives an error page. The architecture cost, flexibility, safety, and integrity, providers are reluctant to includes a spring boot UI server that is linked to a spring boot migrate to Web-based scheduling. Patients' concerns API server and a keycloak server as shown in the below figure about adopting Web-based appointment booking are mostly 1, and all of which are linked to their respective databases based on their previous computer and Internet experiences. The which helps to protect REST APIs from unauthorized calls. use of Web-based appointment systems, on the other hand, appears to be on the rise, as per the literature. According to the conclusions of this study, Web-based scheduling methods can improve a variety of patient outcomes. Globus Auth [8] is a software-as-a-service system that is similar to Keycloak and WSO2 IS in terms of functionalities. Globus Auth can also be used in groups and is linked to other Globus services, such as file transmission. Gateways and middleware operators can leverage open source technologies like Keycloak and WSOS IS to provide identity management services. They can also be integrated with Globus Auth by making it a trusted identity provider. This would allow a gateway built on Apache Airavata to utilize Globus file transfer services and identity management services which is based on Fig.1. Architecture of Vaccine Registration System Keycloak. www.trendytechjournals.com 2 International Journal of Trendy Research in Engineering and Technology Volume 6 Issue 5 October 2022 ISSN NO 2582-0958 _______________________________________________________________________________ Then we need to go to the admin console in 3.3 Proposed System Methodology: http://localhost:8080/auth in the browser and further create roles and assign users to those roles in the console, which The following procedures must be followed in order to successfully integrate our spring boot application with the keycloak. provides authorization. The keycloak is connected to the application by writing a query in application.properties. ⚫ Creating a SPRING BOOT project using Spring Initializr You can directly mention your keycloak realm and server url in ⚫ Install MySQL database for managing data. your eclipse IDE in application.properties and project name ⚫ Installing Keycloak for authentication and authorization. mentioned in keycloak admin login. keycloak.auth-server-url=http://localhost:8080/auth 3.3.1 Creating a SPRING BOOT project using Spring Initializr keycloak.realm=SpringBoot [ 9]. keycloak.resource=Covidvaccineregistration application To create a spring boot project, go to the web and search for spring initializr, then click the Generate button after providing This connects keycloak to your spring boot project. the Group and Artifact names, as well as dependencies. Now Finally, after running this application, we can see a login page that we have downloaded the zip file, we must extract it and where you can log in if you’re already a user or you can register import it into the Eclipse IDE before we can begin developing and can start booking your vaccination in nearby hospitals our application. which are mentioned. With its unique features such as Single- Sign On, Identity Brokering and Social Login, User Federation, ⚫ 3.3.2 Install MySQL database for managing data.[10 ] Account Management Console, and many more, Keycloak Download the community server edition software from enables our project to effectively secure our application. MySQL's official website. You'll notice an option to select an operating system, such as Windows, here. 4 RESULTS Now, after installing MySQL, open MySQL Workbench and begin creating tables and defining required attributes; attributes After running query in command promt for Keycloak and in the database and classes must be the same to avoid mismatch connecting mysql to Eclipse IDE, we need to run the project problems. and after running we get the following figure 2(1), which is a User login page generated from keycloak. Now in application.properties in Eclipse IDE, we need to write: spring.datasource.url=jdbc:mysql://localhost:(port)/database name spring.datasource.username= spring.datasource.password= This connects your database and your spring boot project. ⚫ 3.3.3 Installing Keycloak for authentication and authorization. Following the development of this application, it is critical to ensure that it is secure so that no data is compromised. There are many security services available, but they are difficult to implement and lack many features. In this case, the best service is given by keycloak, which is secure and has many unique features. To run a keycloak server we need to enter the bin directory of the Keycloak file and execute the standalone.bat query in windows. Fig. 2(1). User Login Page www.trendytechjournals.com 3 International Journal of Trendy Research in Engineering and Technology Volume 6 Issue 5 October 2022 ISSN NO 2582-0958 _______________________________________________________________________________ If you are new to this application then you can register as a new User as shown in the below figure 4.2 and you’ll be assigned to user role. You need to provide some details in order to register as shown below. Fig. 4. Hospitals list Now, the important thing is that to add different timings of vaccination slots in different hospitals. Admins can add it in the vaccine page where they can add no of slots and type of vaccine Fig. 2(2). New User Registration Page at that time. Everything is managed by admin here. The below figure .5 is the web page for it. After logged in to this application, we can see the Home page as of vaccine registration application, where we have option to book or verify our vaccination slot as in the figure 3. Fig. 3. Home Page Fig. 5. vaccine slots Now, after clicking book vaccine, now we can select the nearby If you are admin then you can access the hospital page as show hospital and date and then we can book our required vaccine in figure 4 for adding and deleting hospitals when ever type as shown in figure 4.6 and in our suitable time available required. for that hospital. www.trendytechjournals.com 4 International Journal of Trendy Research in Engineering and Technology Volume 6 Issue 5 October 2022 ISSN NO 2582-0958 _______________________________________________________________________________ The future work would be adding a feature called volunteer, which means they can opt as a volunteer and help in running the vaccination drives. And for the people who were already vaccinated can register as a volunteer to participate. This feature should also predict the number of volunteers required at a particular location to successfully run the vaccine drives across different places in a country. REFERENCES [1] Keycloak: http://www.keycloak.org/ [2] Hardt, Dick. "The OAuth 2.0 authorization framework." Fig..6. slot booking page Internet Engineering Task Force (IETF) (2012). https://datatracker.ietf.org/doc/html/rfc6749 After successfully booking your vaccination slot, you’ll be receiving your vaccine Id and Patient Id, and if you want to [3] Sakimura, Natsuhiko, John Bradley, Mike Jones, Breno verify your booking you can always go to the verification page De Medeiros, and Chuck Mortimore. "Openid connect core and check your confirmed slot timings as shown in below figure 7. 1.0." The OpenID Foundation (2014): S3 [4]WSO2 Identity Server: http://wso2.com/identity- and-access- management [5] V. Akshay; Anish Kumar S.; R.M. Alagappan,; S. Gnanavel. "BOOKAZOR-an Online Appointment Booking System." 2019 International Conference on Vision Towards Emerging Trends in Communication and Networking (ViTECoN).IEEE, 2019.DOI: 10.1109/ViTECoN.2019.8899460 [6] Shelar Pooja, Hande Nilima, Dhamak Prajakta, Hingane Nisha, Jadhav Vinayak, ‘Smart Appointment Generation For Patient’, International Journal of Advance Engineering and research Development, 5(2018)1-3 [7]Peng Zhao, Illhoi Yoo, 2 Jaie Lavoie, Beau James Fig. 7. Verify booking Lavoie, and Eduardo Simoes,’Web-Based Medical Appointment Systems: A Systematic Review”, J Med Internet 5 CONCLUSION AND FUTURE SCOPE Res.19( 2017) e134 doi: 10.2196/jmir.6747 The proposed vaccine registration system is flexible to [8] Steven Tuecke, Rachana Anantha krishnan, Kyle Chard, everyone and users can easily book their slots in their desired Mattias Lidman, Brendan McCollam, Stephen Rosen, Ian and available hospitals to get their vaccination. The integration Foster,"Globus Auth: A research identity and access with Keycloak made us easily secure our application and made management platform." 2016 IEEE 12th International it simple for users with its unique features. Conference on e-Science (e-Science). IEEE, 2016. WSO2 IS worked well for the initial use cases in the existing DOI: 10.1109/eScience.2016.7870901 system, and we were able to put this into production without any issue, but the problem is that it failed when we added new [9] Suryotrisongko, Hatma, Dedy Puji Jayanto, and Aris requirements. Also, despite the fact that WSO2 IS is open Tjahyanto. "Design and development of backend application source software, the required improvements proved to be too for public complaint systems using microservice spring complex to deploy and manage. So, as we replaced IS with boot." Procedia Computer Science 124 (2017)736-743. Keycloak, which uses a simple role-based authentication mechanism, the difficulty was reduced by providing additional [10] Letkowski, Jerzy. "Doing database design with wrapper coding to segregate implementation specifics. MySQL." Journal of Technology Research 6 (2014)1-15 www.trendytechjournals.com 5

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.