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

Ограничение доступа к некоторым функциям Azure для членов группы AD

Недавно экспериментируя с функциями Azure в домене моего клиента, я успешно развернул одну из них и вызвал ее из консольного приложения .NET.

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

Несмотря на часы, потраченные на гугление, все, что мне удалось сделать, это активировать аутентификацию AppService, как описано здесь в разделе «Настройка аутентификации и авторизации».

Затем мое консольное приложение начало давать сбой с кодом 401 Несанкционировано и "У вас нет разрешения на просмотр этого каталога или страницы" в содержимом ответа - пока все хорошо... Затем я подумал, что могу просто сказать Azure, чтобы оно требовало членства в AD группу для вызова функции, а-ля WCF, но как? Я не могу управлять Azure Active Directory моего клиента, поэтому, возможно, я просто не могу добраться до того места, где можно создать эту ассоциацию (если вообще возможный).

Вот мой код для вызова функции:

    private static async void CallMyTypedFunctionAsync()
    {
        var functionAddress = "https://[...].azurewebsites.net/api/MyTypedFunction";
        var requestDto = new DataContracts.MyTypedFunctionReqest { X = 6, Y = 7 };

        HttpRequestMessage message = new HttpRequestMessage(HttpMethod.Post, functionAddress)
        {
            Content = new StringContent(JsonConvert.SerializeObject(requestDto), Encoding.UTF8, "application/json")
        };

        var httpClient = new HttpClient();
        var response = await httpClient.SendAsync(message);
        var responseContent = await response.Content.ReadAsStringAsync();

        if (response.StatusCode == System.Net.HttpStatusCode.OK)
        {
            var responseDto = JsonConvert.DeserializeObject<DataContracts.MyTypedFunctionResponse>(responseContent);
            Console.WriteLine("CallMyTypedFunctionAsync's result: {0}", responseDto.Z); // 42
        }
        else
            Console.WriteLine("CallMyTypedFunctionAsync has failed. {0}: {1}", response.StatusCode, responseContent);
    }
08.09.2018

  • Вам нужно будет синхронизировать AD с Azure AD. 09.09.2018

Ответы:


1

Как упомянул Томас, вам необходимо синхронизировать AD с каталогом Azure AD. Как это сделать, вы можете узнать по ссылке . локальные каталоги с помощью Azure Active Directory.

О том, как получить доступ к функции Azure, защищенной Azure AD, см. работу с аутентификацией в разделе «Функция» в Функции Azure и аутентификация службы приложений

10.09.2018
Новые материалы

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

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

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

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

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

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

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