#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_ATTEMPTS 5
#define MAX_USERNAME_LENGTH 20
#define MAX_PASSWORD_LENGTH 20
int main() {
char username[MAX_USERNAME_LENGTH];
char password[MAX_PASSWORD_LENGTH];
int loginAttempts = 0;
while (loginAttempts < MAX_ATTEMPTS) {
printf("Username: ");
scanf("%s", username);
printf("Password: ");
scanf("%s", password);
// 비밀번호 검증 로직을 추가해야 합니다.
// 예를 들어, 실제로는 데이터베이스와의 비교 등을 수행할 수 있습니다.
if (strcmp(username, "admin") == 0 && strcmp(password, "password") == 0) {
printf("Login successful.\n");
break;
} else {
printf("Invalid username or password. Please try again.\n");
loginAttempts++;
}
}
if (loginAttempts == MAX_ATTEMPTS) {
printf("Maximum login attempts reached. Your account is locked.\n");
// 계정 잠금 처리 로직을 추가할 수 있습니다.
// 예를 들어, 데이터베이스에서 해당 사용자 계정을 잠금 상태로 변경하는 등의 작업을 수행할 수 있습니다.
}
return 0;
}
'ISMS-P > 보안' 카테고리의 다른 글
AAA (Authentication, Authorization, and Accounting) 솔루션 특징비교 (0) | 2023.06.26 |
---|---|
SSO , EAM, IAM 비교 (0) | 2023.06.26 |
TCP wrapper /etc/inetd.conf 설정 (0) | 2023.06.24 |
last log에서 TTY 또는 PTS 해석 (0) | 2023.06.24 |
CIDR 표기법으로 IP 구간 확인하기 (0) | 2023.06.22 |