Проверка подлинности Windows IIS и SQL Server в приложении django

Я пытаюсь запустить веб-сайт django, который подключается к серверу SQL, используя IIS с аутентификацией Windows.

Сервер IIS и SQL-серверы находятся на разных машинах в одном домене, например, iis_machine.example.com и sql_machine.example.com

То, что я пытаюсь достичь :

  • Включена проверка подлинности Windows и настроен пул приложений ( django_web ) для веб-сайт django, как показано ниже

    Так выглядит моя проверка подлинности для веб-сайта django в IIS

    Так выглядит мой пул приложений для веб-сайта django в IIS

  • Добавлен IIS APPPOOL \ django_web к SQL Server Security \ Logins

  • Результат :

    1. Когда я захожу на сайт django, IIS запрашивает у пользователя его Учетные данные Windows, и я могу успешно войти в систему
    2. Если пользователь пытается получить доступ к SQL Server после входа в систему

      Случай a . IIS и SQL Server находятся на разных машинах: проверка подлинности SQL-сервера не выполняется с одинаковый размер файла, но разные блоки возвращают разные результаты Я заметил, что эти две команды для вывода списка файлов размером менее 5 ГиБ дают разные результаты: find. -тип f -размер -5368709120c находить . -type f -size -5G В частности, тот, который использует килобайтную единицу (...

      Я заметил, что эти две команды для вывода списка файлов размером менее 5 ГиБ дают разные результаты:

      find . -type f -size -5368709120c
      find . -type f -size -5G
      

      В частности, та, которая использует килобайтную единицу ( 5368709120c ) возвращает дополнительные файлы, размер которых превышает максимальный размер файла, возвращаемый тем файлом, который использует блок ГиБ ( 5G ).

      Из руководства find На странице я прочитал следующее:

      -size n[cwbkMG]
                File uses n units of space.  The following suffixes can be used:
                `b'    for 512-byte blocks (this is the default if no suffix is used)
                `c'    for bytes
                `w'    for two-byte words
                `k'    for Kilobytes (units of 1024 bytes)
                `M'    for Megabytes (units of 1048576 bytes)
                `G'    for Gigabytes (units of 1073741824 bytes)
      
      The size does not count indirect blocks, but it does count blocks 
      in sparse files that are not actually allocated.  Bear in mind that the `%k'
      and `%b' format specifiers of -printf handle sparse files differently.   The 
      `b'  suffix always denotes 512-byte blocks and never 1 Kilobyte blocks, 
      which is different to the behaviour of -ls.
      

      Итак, учитывая, что единица измерения G - 1073741824, 5G должна быть 5368709120c . Проблема в том, насколько редко или подсчитываются косвенные блоки?

      Заранее спасибо за помощь.

      ** ОБНОВЛЕНИЕ **

      Обнаружена еще одна странность. Порог, при котором возвращаемые файлы отличаются, составляет ровно 4 ГиБ:

      Самый большой файл, найденный -5G :

      4285018593 bytes = 3.990734548 GiB
      

      Самый большой , а не файл, найденный -5G :

      4299230968 bytes = 4.003970854 GiB
      

      Файлы хранятся в разделе XFS:

      meta-data=/dev/mapper/vg_XXXXX_lv isize=256    agcount=197, agsize=268435440 blks
               =                       sectsz=4096  attr=2, projid32bit=1
               =                       crc=0        finobt=0
      data     =                       bsize=4096   blocks=52739701760, imaxpct=1
               =                       sunit=16     swidth=256 blks
      naming   =version 2              bsize=4096   ascii-ci=0 ftype=0
      log      =internal               bsize=4096   blocks=521728, version=2
               =                       sectsz=4096  sunit=1 blks, lazy-count=1
      realtime =none                   extsz=4096   blocks=0, rtextents=0
      
    0
    задан 23 August 2018 в 17:38
    1 ответ

    См. Ответ на суперпользователя Камил

    https://superuser.com/a/1351674/27340

    0
    ответ дан 5 December 2019 в 05:23

    Теги

    Похожие вопросы