Комбинация аутентификации OpenID & Facebook

    private void TestApi()
    {
        try
        {
                 using (var httpClient = new HttpClient())
                {

                    string URI = string.Empty;

                    string progressAPI = "api/GetNearBeacons";

                    var baseUrl = @"http://localhost/sample";

                    var uriBuilder = new UriBuilder(baseUrl)
                    {
                        Scheme = Uri.UriSchemeHttp
                    };

                    httpClient.BaseAddress = uriBuilder.Uri;

                    httpClient.DefaultRequestHeaders.Accept.Clear();

                    httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

                    HttpResponseMessage response = httpClient.GetAsync(progressAPI).Result;

                    response.EnsureSuccessStatusCode();

                    if (response.IsSuccessStatusCode)
                    {
                        WriteErrorLog("Api called successfully StatusCode :" + response.StatusCode + Environment.NewLine);
                    }
                    else
                    {
                        WriteErrorLog("Api Calling Failed StatusCode :" + response.StatusCode + Environment.NewLine);
                    }
                }

        }
        catch (WebException ex)
        {
            WriteErrorLog(ex.GetBaseException().ToString());
        }
        catch (Exception ex)
        {
            WriteErrorLog(ex.GetBaseException().ToString());
        }
    }
5
задан Jon Winstanley 13 March 2009 в 13:04
поделиться

4 ответа

Почти для каждого языка должна быть Платформа! Можно объединить функциональность в цепочку/перенести этого платформы к statisfy потребности!

В псевдокоде:

if(IsUserValidViaOpenId() || IsUserValidByOwnAuthDB()) ...  user auth successful

При использовании Java безопасность Acegi/Spring могла бы быть лучшим способом (безопасность, которая не является инвертируемой - через AOP). Там можно использовать открытый и определить собственный второй блок проверки допустимости для собственного userdb yor!

2
ответ дан 14 December 2019 в 09:01
поделиться

Что-то вроде этого в Вашей логике обработки формы:

def authenticate(form_info):
    url = form_info['url']
    if (is_facebook_url(url)):
        return perform_facebook_authentication(form_info)
    else:
        return perform_open_id_authentication(form_info)
0
ответ дан 14 December 2019 в 09:01
поделиться

Facebook присоединился к основе OpenID, поэтому возможно, они будут реализовывать OpenID скоро (в этом случае, может быть лучше просто использовать OpenID).

3
ответ дан 14 December 2019 в 09:01
поделиться

Вы хотите RPX. Это абстрагирует целую путаницу OpenID далеко и от Вас и от Ваших посетителей. Это также позволяет им пройти проверку подлинности с Facebook или MySpace в дополнение к поставщикам OpenID.

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

2
ответ дан 14 December 2019 в 09:01
поделиться
Другие вопросы по тегам:

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