2013-11-09 4 views
0

Я блокирую свой экран Mac с помощью своего приложения для Mac. Когда я ввожу пароль, его нужно разблокировать. Пароль должен быть создан внутренне. Поэтому я предложил реализовать его, используя «двухстороннюю аутентификацию». Благодаря этому мое приложение iPhone часто генерирует токен, когда я ввожу токен в приложение Mac, которое он должен разблокировать.Как реализовать «двухфакторную аутентификацию» в приложении iOS?

Я нашел несколько API, таких как Gauthify и Authy. Но они генерируют токены в своих приложениях (то есть, чтобы получить токен от authy, нам нужно установить приложение authy на нашем мобильном устройстве).

Мое требование не устанавливает эти приложения, мое приложение должно генерировать токен и общаться с моим Mac.

Прошу вас, если кто-нибудь это сделал. Хорошие предложения заметны.

ответ

0

Все эти приложения, включая Google или любую другую apis, используют двухэтапную аутентификацию. Здесь они генерируют токен с некоторым закрытым ключом и передают его конечным пользователям через sms или почту или на любой другой носитель. Этот sms или mail зарегистрирован пользователем в базе данных приложения.

Нет необходимости использовать такое приложение, если у вас есть одно и то же приложение на вашем MAC-устройстве и вашем устройстве ios. Вам просто нужно определить, как вы пройдете этот ключ.

  1. Если MAC генерирует маркер, и вы знаете, какое устройство пытается установить соединение с MAC, вы можете отправить этот маркер в фоновом режиме для этого Ios устройства и соответствовать. Если вы используете соединения сокетов, это опция для вас

  2. Когда пользователь вводит токен, вы можете сделать запрос на сервер, чтобы проверить этот токен. Для этого вам нужно отправить токен, созданный на MAC-сервере, и сохранить его где-нибудь. Эти токены обычно истекают через некоторое время, поэтому выполняйте задание cron для удаления таких токенов.

В описанных вами приложениях используется второй способ аутентификации.

Надеюсь, это поможет вам. Все зависит от ваших требований и вашего подхода :)

Cheers

Смежные вопросы