Nano Hash - криптовалюты, майнинг, программирование

IIS 8 - доступ запрещен при попытке запустить команду с помощью exec в PHP

при попытке запустить эту команду из PHP она показывает эту ошибку

Access is denied.

$ruta = "C:\OpenSSL-Win31\bin\openssl pkcs8 -inform DER -in Usuarios_XML/$rfc/$archivo.key -out Usuarios_XML/$rfc/$archivo.key.pem -passin pass:".$key;

$ejecuta = exec($ruta . ' 2>&1', $output);
print_r($output);

Но когда я запускаю его прямо с моего сервера в консоли openssl, он работает.

Я предполагаю, что мне нужно какое-то разрешение, но я понятия не имею, где его изменить, какое-то представление о том, как этого добиться?

Сервер работает Windows Server 2012, надеюсь, вы мне поможете, спасибо.

23.11.2016

  • Это было бы полезно. stackoverflow.com/questions/17914402 / 23.11.2016
  • @DipuRaj Я прочитал всю информацию из этого вопроса и именно там я видел ваш комментарий, но там нет информации, чтобы дать разрешение, как вы это сделали, чтобы решить, какому пользователю вы дали разрешение и как? Мне действительно нужна помощь, я есть доступ к моему серверу, и я могу внести любые изменения, но я не знаю, что изменить 23.11.2016
  • Я пытался дать все разрешения пользователям и файлу, но это не работает, все та же проблема, 23.11.2016

Ответы:


1

Это довольно сложная проблема. Насколько я понимаю, проблема в том, что ваша команда пытается получить доступ к файловой системе, а IIS по умолчанию не разрешен доступ к файловой системе. Он работает в командной строке, потому что командная поддержка имеет доступ к файловой системе, но когда одна и та же команда запускается через PHP и веб-сервер (IIS), она получает отказ.

Вы можете попробовать несколько вещей,

  1. Просмотрите свойства безопасности всех файлов, используемых в команде (включая C:\OpenSSL-Win31\bin\openssl.exe), и проверьте, есть ли доступ у NETWORK USER, в противном случае добавьте его и дайте полный доступ.
    Чтобы проверить безопасность файла: right click on the file > properties > security tab

  2. Если это не поможет, предоставьте IIS права администратора. См. раздел IIS: идентификаторы пула приложений, чтобы узнать, как сделать это. Поскольку вы предоставляете администратору доступ к IIS, существует риск внешней атаки. Пожалуйста, изучите больше об этом, чтобы вы знали, что делаете.

В моем случае сработало более позднее решение, сообщите нам, если что-то из этого вам поможет.

23.11.2016
  • Я пробовал первый, но я не уверен, кто является сетевым пользователем моего списка, я пробовал со вторым вариантом, но он говорит, что в основном это для Windows Server 2008, в любом случае я пытался сделать часть, где показывает рабочий процесс W3wp.exe и я попытался дать полный контроль, но он не позволяет мне сохранить изменения, которые он говорит unable to save changes on w3wp, access is denied 23.11.2016
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

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

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..