API-интерфейс Azure B2C Graph: установка блокировки учетной записи для пользователя. Неправильные попытки входа - PullRequest
0 голосов
/ 18 октября 2018

Можно ли заблокировать учетную запись Azure B2C, отправив вызов API из базы кода?Мне нужно написать функцию для следующего требования

После 3 неудачных попыток входа в систему с неверным паролем учетная запись должна быть заблокирована, пока пользователь не будет разблокирован.он должен быть заблокирован на определенное время.

public async Task<string> LockUserAccount(string api, string query)
{

  AuthenticationResult result = authContext.AcquireToken("https://graph.windows.net", credential);


  HttpClient http = new HttpClient();


        **Here I need your help what kind of URL do i need to call here**
        > // string url = "https://graph.windows.net/" + tenant + api + "?" +

        >    
        >    //HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, url);

     request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", result.AccessToken);
     HttpResponseMessage response = await http.SendAsync(request);

        if (!response.IsSuccessStatusCode)
            {
               string error = await response.Content.ReadAsStringAsync();
               object formatted = JsonConvert.DeserializeObject(error);
               throw new WebException("Error Calling the Graph API: \n" + JsonConvert.SerializeObject(formatted, Formatting.Indented));
            }

    return await response.Content.ReadAsStringAsync();
}

Я пошел с этой документацией, и он говорит, что интервал блокировки увеличивается после дальнейших неудачных попыток входа в систему: https://docs.microsoft.com/en-us/azure/active-directory/authentication/howto-password-smart-lockout#manage-azure-ad-smart-lockout-values

1 Ответ

0 голосов
/ 22 октября 2018

Кажется, что нет соответствующего API для блокировки пользователя на определенное время.

Вы также можете отправить свой отзыв команде Azure.

Мой обходной путь - подсчет количества попыток.Если 3 неудачных попытки входа в систему, отправьте информацию о пользователе на запланированные сообщения servicebus Затем обновите пользователя , чтобы установить accountEnabled false .

Возможно, мы могли бы использовать триггер служебной шины функции Azure, чтобы обновить пользователя для установки accountEnabled true

...