Например, пользователь хочет, чтобы его веб-сайт на WordPress автоматически публиковался в Linkedin. Он был бы не против поделиться своими учетными данными Linkedin со своим собственным веб-сайтом. Но если ему нужно установить плагин WordPress, который будет автоматически публиковаться в Linkedin, ему нужно будет поделиться с этим сторонним плагином своим паролем Linkedin, что немыслимо.
С помощью Oauth пользователь может предоставить ограниченный доступ плагину через авторизацию токена вместо учетных данных. Плагин будет действовать от имени пользователя для специально назначенной и разрешенной задачи.
OAuth не хранит учетные данные, но ограничивает доступ к определенному действию.
Фреймворк также позволяет отменять индивидуальный доступ к ресурсам без изменения пароля ресурса.
Роли Oauth — это владелец ресурса, клиент, сервер ресурсов и сервер авторизации.
Владелец ресурса: это владелец ресурса, которому будет предоставлен ограниченный доступ.
Клиент: приложение запрашивает авторизацию для выполнения действия (чтения, записи) от имени Владельца ресурса. В предыдущем примере (WordPress + Linkedin) клиентом был плагин, настроенный с помощью токена.
Сервер ресурсов: это API, к которому вы хотите предоставить доступ. Это могут быть карты Google, твиты и т.д.
Сервер авторизации: этот компонент может быть размещен на собственном сервере или в составе сервера ресурсов. Сервер авторизации генерирует и передает токен после аутентификации личности владельца. OAuth может предоставить доступ владельцу ресурса или клиенту.
Владелец ресурса разрешает приложению доступ к серверу ресурсов. Затем приложение запрашивает токен у сервера авторизации, используя утверждение или авторизацию владельца ресурса.
Когда сервер авторизации проверяет утверждение, он выдает токен доступа к приложению. Используя этот токен, приложение может получить доступ к серверу ресурсов.
В следующем разделе этого руководства описаны некоторые концепции OAuth, которые необходимо понять перед его установкой в Linux.
Токены содержат информацию, называемую претензиями . Заявлением может быть имя пользователя, адрес электронной почты, автор, клиент, используемый Владельцем ресурса, или некоторая информация об объекте, указанном в токене.
Области ограничивают клиентский доступ к функциям сервера ресурсов или API. Когда владелец ресурса утверждает авторизацию, ему необходимо определить области, предоставленные клиенту.
Идентификатор клиента — это общедоступная строка для идентификации приложения и построения URL-адреса авторизации. Client Secret аутентифицирует приложение перед сервером авторизации при запросе доступа к приложению.
Мы не установили PHP; если вы хотите протестировать OAuth, вам необходимо сначала установить PHP. Вы можете установить PHP в Debian и других дистрибутивах Linux, выполнив следующую команду:
apt install php-pear php-dev -y
После установки PHP установите следующие пакеты:
sudo apt install -y gcc make autoconf libc-dev pkg-config libpcre3-dev
Теперь вы можете установить PHP, выполнив команду, показанную ниже:
sudo apt install php-oauth
В дистрибутивах Debian и в других на основе Linux, создайте файл конфигурации, выполнив следующую команду.
bash -c "echo extension=oauth.so > /etc/php/7.3/cli/conf.d/oauth.ini" /etc/init.d/apache2 restart
или же
sudo service apache restart
Наконец, вы можете проверить правильность установки OAuth, выполнив:
php -i | grep -i "OAuth"
Вы можете настроить свое веб-приложение, используя решения для авторизации, такие как https://openid.net/connect/ или https://goteleport.com.
Вы также можете установить OAuth для Ruby con Linux. В следующем примере показано, как установить OAuth для Ruby и Debian и основанных на нем дистрибутивов Linux.
Чтобы установить OAuth для ruby в Debian или Ubuntu, запустите:
sudo apt install ruby-oauth2 -y
OAuth — отличное решение для управления доступом и разрешениями, а также для интеграции различных приложений.
Он предоставляет платформу авторизации для веб-приложений, настольных приложений и мобильных устройств.
Внедрив OAuth, пользователи могут избежать совместного использования учетных данных и могут делиться ограниченным доступом к ресурсам. Они также могут легко отозвать доступ для определенных пользователей.
Предотвращение обмена учетными данными представляет собой существенное улучшение безопасности.
Пользователи также могут использовать OAuth для управления и защиты своей базы данных, докеров, ssh-доступа и многого другого, внедряя такие решения, как Teleport.
Надеюсь, вы нашли эту статью по OAuth полезным.
Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!
Спасибо! Ваша заявка принята
Спасибо! Ваша заявка принята