RESPONSIBILITIES OF AN APP DEVELOPER IN ASPECTS OF SECURITY
RESPONSIBILITIES OF AN APP DEVELOPER IN ASPECTS OF SECURITY
1 Afroze Gul 2 Dr. Muhammad
Naeem
Laureate Folks International
ERC, PAKISTAN
https://laureatefolks.blogspot.com
laureatefolks@gmail.com, WhatsApp:
+923334446261
1. Authentication
Authentication
identifies that whether the credentials of the user match the credentials in
the database, and it is essential for the app developers to give it its due
consideration. The process of
authentication also determines access to a server through a user name and
password, cards, retina scans, voice recognition, or fingerprints. This is how
servers authenticate and identify who is accessing the information of the site
or server. This process is done at the start of the application. Authentication
is also done through clients. In this case, the server certifies that it
belongs to a certain entity. It is certified through a trusted third party
(Verisign or Thawte). If the app developers do not give due importance to
authentication, they are, surely, going to face problems later due to a lack of
a high-level authentication mechanism. It can lead to a number of security
issues. To avoid security problems, app developers must focus on user
authentication. Cybercriminals can easily enter into a system to gain
information if authentication is not of a high level. Therefore, it is
essential for an application to have a strong password policy to prevent it
from being decoded. App developers should also consider multi-factor
authentication, which is pulled off through e-mails, OTP, biometrics, or
authentication code.
1.1. Methods to Implement Authentication
●
Password-based
authentication- The password of the
user is matched by the value in the password file of the system. The
vulnerabilities of this method can be encountered by factors prompting a
minimum length of the password, as well as the usage of capital letters and
symbols.
●
Two-factor
authentication (2FA)- In addition to the password, this method
requires the user to provide a verification code. This code is sent to the
registered number or email through SMS or mail.
●
Multi-factor
authentication (MFA)- In this method, the user has to authenticate through
fingerprint or facial recognition.
●
OTP- a numeric or alphanumeric key, which is generated automatically to
authenticate a user. It is called a one-time password (OTP), as it is only valid for one login session.
●
Three-Factor
Authentication (3FA)- This method uses three steps to authenticate:
a knowledge factor (password), a possession factor, and an inherence factor.
●
Biometrics- often a part of 2FA or
3FA- include fingerprint, facial, retina, or voice recognition. Sometimes,
authentication is solely dependent on biometrics.
●
Mobile Authentication-This include MFA. It
allows the users to authenticate through their devices.
●
Application
Programming Interface (API)- It involves HTTP basic authentication, API
keys, and open authorization.
2. Authorization
It is a process that
helps the server to identify whether the client is permitted to access the
files or resources of the server or not. It is closely linked with
authentication. Authentication verifies the credentials, whereas authorization
grants or denies access to the user. Authorization is also called access
control or client privilege. Through this process, a user may or may not be
permitted to download a particular file or to access a specific administrative
resource. Authorization is specific, as it may permit the client to access one
file but may not allow accessing the other one on the same server. Besides,
security teams maintain settings to make authorization work. The data is moved
through an access token.
3. Security Auditing
Auditing- a cyber-security
assessment strategy- is essential for securing the physical configuration and
software of the system. It also secures information handling processes and user
practices. It is essential for getting along with the regulations that specify
how companies should deal with the information. Auditing involves vulnerability assessments and penetration testing. Vulnerability assessments focus on finding vulnerabilities
in a security system. Additionally, penetration testing includes a test done by
a security expert. It analyzes whether the security system can hold out against
a particular attack or not. A good security audit plan must be repeatable and
easy to update. The involvement of stakeholders should be emphasized for the
best results. It is imperative to note that security auditing helps to analyze
security vulnerabilities and gaps to improve the security of the application or
the system. Therefore, security auditing is a must for protecting the networks
and devices. It also prevents data breaches, data leaks, and criminal
interference and identifies whether the current security strategy is working or
not.
4.
Inter-Process-Communication (IPC)
It allows the system to manage the shared data. IPC
involves programming interfaces. It permits a programmer to synchronize and
coordinate activities securely. IPC may include coordination between
applications or coordination between procedures in a multi-process application.
Security Management
by the Monolithic FGTO Application
The monolithic FGTO application-a Java and Spring Boot application- has many modules, which handle security. These modules manage FGTO order service, FGTO consumer service, FGTO restaurant service, FGTO restaurant service, FGTO courier service, FGTO domain, FGTO common (money and address). The delivery management and order management of the monolithic FGTO manage the schedules of deliveries.
Comments
Post a Comment