Nếu bạn không thể phụ thuộc vào việc thoát ứng dụng một cách duyên dáng hoặc ít nhất là nắm bắt tất cả các ngoại lệ và xử lý một cách thích hợp, tôi nghĩ rằng giải pháp thay thế duy nhất sẽ là chuyển sang cách tiếp cận phiên. Về cơ bản, khi mỗi người dùng đăng nhập, một phiên mới được thiết lập và id phiên đó sẽ được xác thực cho bất kỳ lệnh gọi nào trong tương lai.
Bằng cách làm này, bạn có thể cho phép việc sử dụng kết thúc một phiên hiện có / đang mở khi họ cố gắng đăng nhập ở một nơi khác. Nếu họ cố gắng đăng nhập từ PC B và đã đăng nhập từ PC A - bạn chỉ cần đặt điều đó vào một lời nhắc và nếu họ chọn tiếp tục từ PC B, phiên trên PC A sẽ bị hủy kích hoạt. Ngay cả khi ai đó đang tích cực sử dụng ứng dụng trên PC A, cuộc gọi dịch vụ tiếp theo mà họ đưa ra sẽ bị từ chối khi phiên đóng.