Пользователь-частное соединение между моим расширением Google Chrome и моей родной программой на Linux
У меня есть "родная" программа (на Java), которая хотела бы общаться с расширением Google Chrome/Chromium. Сообщение содержит конфиденциальную информацию и не должно быть доступно никому, кроме пользователя, выполняющего его (и, конечно, корня).
Какую технологию я должен выбрать для этого канала связи? Есть ли вообще решение?
Редактировать: Конечно, я мог бы открыть порт TCP / IP на локальном хосте, но разве он не будет доступен другим пользователям иметь учетную запись на том же хостинге? Есть ли метод, чтобы избежать этого побочного эффекта?
Можем ли мы получить доступ к доменным сокетам unix из расширений Google Chrome?
3 ответа:
Предполагая, что вы уже знакомы с TCP, если вы используете localhost / 127.0.0.1 для связи, она не будет видна / доступна для других машин.
Вы можете решить эту проблему на более высоком уровне с помощью защищенной связи SSL с сертификатами и т. д... Если у кого-то нет сертификата, то соединение будет прервано. Кроме того, вы выиграете от шифрования.
Решение, которое я выбрал, состоит в том, чтобы иметь сокет сервера, слушающий интерфейс loopback (/ 127.0.0.1) с общим секретом, используемым в качестве ключа api.
Причина в том, что я не понимал, что в моем случае каждое приложение, которое подключается к моему узлу, должно быть аутентифицировано .. потому что каждое приложение обрабатывается по-разному, с разными правами доступа.