Ответ
Идентификация — процесс определения пользователя (например, по логину или email).
Аутентификация — проверка подлинности (например, через пароль, токен или биометрию).
Авторизация — предоставление прав на доступ к ресурсам (например, роли admin или user).
// Пример в Go:
type User struct {
ID int
Username string // Идентификация
Password string // Аутентификация
Role string // Авторизация
}
func login(username, password string) (*User, error) {
user := getUserByUsername(username) // Идентификация
if user.Password != hash(password) { // Аутентификация
return nil, errors.New("invalid credentials")
}
return user, nil
}
func accessResource(user *User) error {
if user.Role != "admin" { // Авторизация
return errors.New("forbidden")
}
return nil
}