Как настроить dotNetOpenId на сессии меньше среды выравнивания нагрузки

Вы могли использовать понимание списка или выражение генератора вместо этого:

', '.join([str(x) for x in list])  # list comprehension
', '.join(str(x) for x in list)    # generator expression
8
задан Mihai Lazar 4 September 2009 в 13:11
поделиться

3 ответа

Stateful

Наиболее оптимизированный метод - это написать настраиваемое хранилище сохраняемости, которое реализует IRelyingPartyApplicationStore для «секретов», требуемых RP OpenID, и передать свой экземпляр в конструктор OpenIdRelyingParty (IRelyingPartyApplicationStore) или зарегистрируйте его в своем файле web.config .

Stateless

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

Вы можете активировать режим без сохранения состояния, создав экземпляр OpenIdRelyingParty , передав null в качестве экземпляра хранилища приложений . Вызов конструктора по умолчанию заставит DNOA использовать свое хранилище в памяти, которое не работает на фермах серверов,

6
ответ дан 5 December 2019 в 14:04
поделиться

Используя DotNetOpenID, вы должны иметь возможность сохранять нужное состояние во время аутентификации для клиента через cookie.

Изменить: У меня нет примера кода для этого потому что мне никогда не приходилось использовать DotNetOpenID в среде без сеанса, но я хотел бы проверить эту ссылку, она может предоставить вам необходимую информацию: http://code.google.com/p/dotnetopenid/wiki / WebFarmHowto

1
ответ дан 5 December 2019 в 14:04
поделиться

Here's how we're enabling stateless mode:

var uri = new Uri(Request.Url, Request.RawUrl);
var openid = new OpenIdRelyingParty(null, uri, 
             Request.HttpMethod == "GET" ? Request.QueryString : Request.Form);

Seems to work so far, though per Andrew there's a small performance hit. Not sure that matters since login is a fairly rare activity.

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

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