Я пытаюсь разработать способ для моего клиента отправить мне запрос на завивание, чтобы получить данные с моего сервера. Мне нужно, чтобы это было psuedo-secure. Я бы ожидал, что мой клиент пришлет мне что-нибудь, я проведу его аутентификацию, а затем жду, пока он пришлет мне запрос на получение данных. Что-то вродеsecure curl call - вызовы командной строки
curl -O 1.2.3.4/curlRequest.php?username=Joe&password=123456790
curlRequest.php проверит некоторые учетные данные. Ясно, что передача u/p поверх get - ужасная идея. любые мысли, как я могу это сделать. Я не прошу кого-либо писать код для меня, я спрашиваю больше, какие процедуры я мог бы использовать для достижения своей цели.
моя первая мысль послать запрос 1, который будет запрашивать определенную строку:
curl 1.2.3.4/authCurl.php?userName=Joe
, используя это и тот факт, что этот запрос пришел от известного сервера, я могу ответить со строкой:
125tewgkljgetEDtstdkj
тогда все будущие запросы должны содержать эту строку в течение следующих Х минут:
curl -O 1.2.3.4/curlRequest.php?hash=125tewgkljgetEDtstdkj
Это ужасная идея? Любые другие варианты, которые вы могли бы порекомендовать?
хотя бы использовать сообщение, поэтому их пользователь/пропуск не набиты в ваш access_log , отключите пользователя от запроса - выпустите ключ API (например, случайную буквенно-цифровую строку, которая никоим образом не может быть привязана к конкретному пользователю, кроме как через вашу базу данных). –
Вы говорите, что я должен клиент X должен иметь ключ adsakglsdjglkj, а у клиента должен быть ключ lk4yhkljfhdgkjh и просто отправить этот вызов? – bart2puck
точно. эта строка может быть такой простой, как 'sha1 ($ username. $ password. 'randomsaltstringhere')', но с учетом строки типа asdfasdfasdfasdfasd не будет никакого практического способа вернуть «Джо» из нее. –