Передача учетных данных домена приложению Python Flask на сервере IIS 8.5 2012R2 для подключения к базе данных с использованием доверенного соединения

#sql-server #database-connection

#sql-сервер #база данных-подключение

Вопрос:

Я просмотрел сеть и этот сайт, но, похоже, я не могу заставить это работать.

Это мой первый сайт Flask, и прямо сейчас я просто хочу, чтобы работало доверенное соединение, чтобы я мог подключаться к своим базам данных.

В моем app.py у меня есть следующий код

 from flask import Flask, request, render_template_string
import os
import pyodbc

def conn():
    try:
        conn = pyodbc.connect("Driver={SQL Server};DATABASE=FP;Trusted_Connection=Yes;Server=MSSQL01; 
        Description=FP;")
        return conn
    except:
        return False

app = Flask(__name__)

@app.route('/', methods=['GET','POST'])
def index():
    username = request.environ.get('REMOTE_USER')
    con = conn()
    template = "<h1>User: {{ con }}</h1>"
    return render_template_string(template, con)

if __name__ == "main":
    app.run
  

Я внес изменения в свой файл web.config, как я нашел.
Я знаю, что мне чего-то не хватает, я могу использовать некоторые рекомендации относительно того, как я могу заставить это доверенное соединение работать.

Спасибо

Сурка

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

1. В какой программе размещен ваш веб-сайт? От имени какого пользователя запущена эта программа?

2. IIS 8.5 размещает сайт на сервере Win 2012. Я хочу передать учетные данные домена на сайт, чтобы я мог получить доступ к базам данных.

3. Вы создали логин SQL Server для удостоверения пула приложений IIS?

4. К сожалению, это не разрешено в организации, в которой я работаю. Доступ к базе данных должен осуществляться через аутентификацию домена, у них нет автономной аутентификации SQL

5. Идентификатор пула приложений IIS является идентификатором Windows, и для учетной записи домена необходимо создать логин Windows. НАПРИМЕР create login [somedomainsomeuser] from windows , есть ли сообщение об ошибке входа в систему в журнале ошибок SQL Server?