2012-05-03 4 views
1

Из-за того, что я читал, у меня сложилось впечатление, что неплохо хранить секретные ключи для клиентов в открытом исходном коде. Итак, я настроил внешний прокси-сервер на другом веб-сервере для обработки запросов и доступа к токенам.Использование OAuth в Wordpress Plugin

Итак, как только я получу токен доступа и секрет от поставщика, должен ли я сохранять эти токены на внешнем веб-сервере и опросить веб-сервер с каждым запросом? Или я должен вернуть эти токены в установку Wordpress пользователя, где плагин сохраняет их в базе данных пользователя?

Спасибо!

ответ

1

Сохраните их в установке Wordpress пользователя, вам нужно будет иметь какой-то идентификатор в любом случае на вашей конечной точке прокси/ретранслятора, чтобы идентифицировать плагин с маркером доступа, который вы сохранили на своем конце.

Если токен доступа должен протекать из Wordpress пользователя, он по-прежнему не может использоваться без ключа потребителя, который вы все равно сохраняете на своем конце. Тем не менее существует риск использования пропущенного токена доступа, который используется для выполнения аутентифицированных запросов через конечную точку вашего ретранслятора. Но у вас будет такая же ситуация с другим механизмом идентификации.

Если вы действительно хотите играть в нее безопасно, вы можете реализовать простой криптографический слой между установкой wordpress и вашим сервисом ретрансляции. Скажем, например, хэш SHA1 параметров токена доступа, URL-адрес, временную метку и еще один секретный секрет установки как соль. Это, по крайней мере, помешало бы потерянному токену доступа непосредственно использовать вашу конечную точку ретрансляции. Тогда единственный вектор атаки, который я вижу, заключается в том, что сам Wordpress скомпрометирован.