Не удается подключиться к серверу MySQL через разные домены

#mysql #vb.net #database-connection

#mysql #vb.net #база данных-подключение

Вопрос:

У меня проблема с подключением к серверу MySQL через два разных доверенных домена.
Мы разрабатываем приложение для внутреннего использования и до сих пор используем MySQL. Это настольное приложение, написанное на vb.net .
До сих пор все пользователи находились в одном домене, и проблем не было. Совсем недавно было принято решение более высокого уровня разделить пользователей на 2 разных домена по разным причинам.
Проблема в том, что пользователи из нового домена не могут получить доступ к серверу. Если это поможет, администраторы сказали мне, что пользователям из обоих доменов доверяют. Обе машины работают под управлением Windows Server — 2003 и 2008.
Порт сервера открыт, все разрешения находятся там (base_class@%), но при попытке —

доступ запрещен для пользователя base_class@datablock2.

В чем проблема?

Ответ №1:

Отказано в доступе означает, что клиенты подключаются, но не имеют соответствующих прав. Поэтому сосредоточьтесь на grant правах для этих пользователей. Обратите внимание, что mysql использует * подстановочные знаки в GRANT запросах, а не % , поэтому запрос на предоставление должен быть

 GRANT ... ON database.* TO base_class@datablock2
  

Также обратите внимание, что если вы используете имена хостов (datablock2) в своих запросах на предоставление, вам потребуется правильно настроенная настройка DNS, чтобы MySQL мог выполнить обратный поиск подключаемого IP-адреса обратно к имени хоста. имена хостов отсутствуют на уровне TCP / IP, и MySQL видит только IP. Для сопоставления имен хостов необходимо выполнить обратный поиск. Если этот поиск завершится неудачно, то он отключится от IP.

Комментарии:

1. Я проверю это утром. Надеюсь, это просто проблема с тем, что я неправильно установил права.

Ответ №2:

ИМО, это не задача разработки, это задача системного администратора и / или администратора базы данных. Поэтому разработайте тестовый пример с использованием MS Query и передайте его системным администраторам / администраторам баз данных для выяснения. пример: конфигурация ODBC и оператор SQL для запуска через MS Query, который должен (теоретически) работать и который работал бы до разделения. Докажите, что это работает для пользователей из старого домена. Попросите их сообщить вам, когда это сработает для нового домена. В противном случае они будут продолжать обвинять ваше приложение VB.

Комментарии:

1. Я согласен с вами. К сожалению, в текущей ситуации мне придется сделать это самому и на 7/10. Системные администраторы только заявляют, что все отношения между доменами в порядке и что это моя проблема, связанная с подключением для разных пользователей.

Ответ №3:

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

Комментарии:

1. Спасибо за это! Я не знал о разрешениях MySQL на основе домена. К сожалению, создание, модификация и администрирование домена находятся вне моего контроля. Я должен работать на основе «сделай сам». Мне просто нужно найти способ заставить его работать в текущей среде.

2. Не могу сделать! Я проголосовал за решение Криса, потому что убедить администраторов в правде — ваша единственная надежда. Удачи.

3. Получил некоторую помощь от администраторов. Я последовал вашему совету, и они сказали, что изменят доверие к домену и установят разные уровни разрешений пользователей для каждого домена и для каждого пользователя. Спасибо!