Авторизация на сервере, защищенном Azure Active Directory, с помощью сценария C# Unity3D - PullRequest
0 голосов
/ 09 июля 2020

В нашей компании нам необходимо аутентифицировать наших пользователей на нашем сервере, защищенном AAD, через Unity3D. Наш сервер должен быть настроен правильно, так как при доступе к «https://ourserver.azurewebsites.com/» все отображается правильно, и когда я смотрю в заголовок запроса браузера, у нас есть AppServiceAuthSession Cook ie.

При попытке этого в C# с этим кодом:

        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(SERVER_URL + path + argumentsString);
        request.AutomaticDecompression = DecompressionMethods.GZip;
        request.Proxy = PROXY;
        request.UseDefaultCredentials = true;

        string json = "";
        using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
        using (Stream stream = response.GetResponseStream())
        using (StreamReader reader = new StreamReader(stream))
        {
            json = reader.ReadToEnd();
        }
        Debug.Log(json);

        T result = JsonUtility.FromJson<T>(json);

он работал, когда у нас была Azure веб-служба на основе Linux. Теперь, когда мы перешли на веб-службу Windows, она всегда выдает 401. Я знаю, что мне нужно включить AppServiceAuthSession Cook ie в заголовок запроса, но я понятия не имею, как получить этот Cook ie. Это также должно работать с SSO, чтобы пользователю не приходилось снова вводить свой пароль, потому что он вошел в свою учетную запись Windows.

Каков рекомендуемый способ получить этот токен? Я на самом деле не сетевой разработчик, так что извините за очевидный вопрос.

...