Pytanie : Administrator´s profil ratować profil skoroszytowy

I mieć Windows Serwer 2008 R2 i profil ratować podzielony skoroszytowy zwany profiles.
I nazwa użytkownika serwer używać administrator konto i gdy I robić zmiana i wtedy logout, profil ratować w okolicy only.
Is ono normalna lub dokąd być problemowy?

Odpowiedź : Administrator´s profil ratować profil skoroszytowy

OK… Tutaj być the zawartość the blog poczta… jon

Rubin: Using reset_session w Poręcz z Ogórek i Webrat
I segregować the następujący pluskwa:

    Wszystkie the Poręcz ochrona przewdonik mówić że ty musieć reset_session po the użytkownik bela dalej lub bela dalej. To rozjaśniać to the sesja i zmuszać nowy sesja ID. Ono wydawać się tam  być tam  Poręcz pluskwa odnosić sie reset_session przez lata. , I teraz martwić się że tam  być konflikt gdzieś odnosić sie Poręcz infrastruktura and/or Webrat.

    W mój nazwa użytkownika akcja, I dzwonić reset_session i wtedy stawiać ładny wiadomość w błysk. Gdy I właściwie używać the strona internetowa, I móc (przez Firefox) że I dostawać nowy sesja ID, i I móc mój błyskowy wiadomość. , Gdy I pisać test dla tamte dwa rzecz, the błyskowy wiadomość dostawać przegrany, i I dostawać nowy sesja ID w mój ciastko. Ono być prawie tak jakby the nowy sesja ignorować, i the stary sesja używać.

    I być zmartwiony, ale I móc dokładnie dokąd the problem być. I znać że tam  być specjalny Poręcz kod ten rękojeść sesyjny ciastko gdy ty robić integracja testowanie.

    I używać actionpack-2.3.8 i webrat-0.7.1.

Tutaj być jak I zrobić mój best wokoło the problem.

Najpierw wszystko, I przechować mój sesja w the baza danych. Hence, I tworzyć ActiveRecord model ręcznie sesyjny rejestr:

klasowy Sesja <� ActiveRecord::Base="">  # Poręcz reset_session być reset_session ale kłopot dla.  I brać
  # liczyć się w mój swój ręka.  Ten kod musieć jeżeli my zatrzymywać
  # stawiać nasz sesja w the baza danych.
  def self.nuke_session (session_id)
    find_by_session_id! (session_id) .destroy
  końcówka
końcówka

Ponieważ I być authlogic, mój logout akcja patrzeć to jak to:

def niszczyć
  current_user_session.destroy

  # Unikać sesyjny fiksacja atak.  Ono móc niepotrzebny, ale ono być
  # konieczny the test przepustka.
  sesja [: test_that_this_disappears] = "test_that_this_disappears"
  session_id = ciastko [ActionController:: Base.session_options [: klucz]]
  Session.nuke_session (session_id)
  reset_session

  redirect_to: akcja =>: logged_out
końcówka

Mój nazwa użytkownika akcja być to jak akcja:

def tworzyć
  @user_session = UserSession.new (params [: user_session])
  jeśli @user_session.valid?
    powrót odpłacać się: akcja =>: nowy
  końcówka

  # Unikać sesyjny fiksacja atak resetting the sesja.
  reset_session
  @user_session = UserSession.new (params [: user_session])
  @user_session.save!

  # Dla niektóre powód, błysk, reset_session, Ogórek, Etc. dostawać niektóre,
  # w ten sposób I musieć the błyskowy wiadomość przez parametr.
  redirect_to (root_url (: nazwa użytkownika => 1))
końcówka

Zamiast wiadomość przez błysk, I przechodzić zapytanie parametr.

I sprawdzać dla ten parametr w mój ApplicationController:

before_filter: check_for_login_message

# Dla niektóre powód, błysk, reset_session, Ogórek, Etc. dostawać niektóre.
# Hence, po nazwa użytkownika, my musieć the błyskowy wiadomość przez zapytanie parametr
# raczej przez błysk.
#
# Jeżeli I musieć ten jakby rzecz znowu, I tworzyć lookup stół folować
# wiadomość.
def check_for_login_message
  flash.now [: success_message] = "Nazwa użytkownika pomyślny!" jeżeli params [: nazwa użytkownika]
końcówka

W końcu, I mieć to w pełnometrażowy kartoteka:

# Ten test musieć.  W rzeczywistości, ono pracować gdy ty używać twój wyszukiwarka.
#, Tam  być pluskwa gdzieś między Poręcz i Webrat który zapobiegać
# ono od działanie gdy ty używać Ogórek.  Jakoś, reset_session łamać.
#
# Scenariusz: dalej musieć twój sesyjny ciastko
# I być na the homepage
# Gdy I patrzeć mój sesyjny ciastko
# I I notować dalej
# Wtedy I musieć różny sesyjny ciastko

Ten test polegać na te krok:

# Ten test musieć.  W rzeczywistości, ono pracować gdy ty używać twój wyszukiwarka.
#, Tam  być pluskwa gdzieś między Poręcz i Webrat który zapobiegać
# ono od działanie gdy ty używać Ogórek.  Jakoś, reset_session łamać.
#
# Dawać/^I spojrzenie przy mój sesja cookie$/
# @cookie = ciastko [ActionController:: Base.session_options [: klucz]]
# końcówka
#
# Wtedy/^I musieć różny sesja cookie$/
# new_cookie = ciastko [ActionController:: Base.session_options [: klucz]]
# new_cookie.sh ould_not == @cookie
# końcówka
Inne rozwiązania  
 
programming4us programming4us