Vraag : Kracht de verandering van het 30 dagwachtwoord in FileMaker

Wanneer gebruikend een gegevensbestand FileMaker en gebruikend gebouwd in FileMaker het mechanisme van de gebruikerstoestemming, zijn er gebruikers om hun wachtwoord om de 30 dagen te veranderen hoe dan ook te dwingen?

As een follow-up, als dit mogelijk is, zijn er hen van het opnieuw gebruiken van een vorig wachtwoord hoe dan ook te houden?

Or moet dit allen gebruikend een douanemechanisme met manuscripten worden gecre�ërd?

Thanks voor uw hulp!

Antwoord : Kracht de verandering van het 30 dagwachtwoord in FileMaker

O.K.… Hier is de inhoud van de blogpost… jon

Robijn: Het gebruiken van reset_session in Sporen met Komkommer en Webrat
Ik diende het volgende insect in:

    Alle de veiligheidsgidsen van Sporen zeggen dat u reset_session zou moeten roepen nadat de gebruiker het programma opent of aflogt. Dit haalt de zitting leeg en dwingt dat een nieuwe zittingsidentiteitskaart wordt tot stand gebracht. Het schijnt er een paar insecten van Sporen met betrekking tot reset_session in de loop van de jaren zijn geweest. Nochtans, ben ik nu ongerust gemaakt dat er een conflict ergens met betrekking tot de testende infrastructuur en/of Webrat van Sporen is.

    In mijn login actie, roep ik reset_session en zette toen een aardig bericht in flits. Wanneer ik eigenlijk de website gebruik, kan ik zien (via Firefox) dat ik een nieuwe zittingsidentiteitskaart krijg, en ik mijn flitsbericht kan zien. Nochtans, wanneer ik tests voor die twee dingen schrijf, wordt het flitsbericht verloren, en ik krijg geen nieuwe zittingsidentiteitskaart in mijn koekjes. Het is bijna alsof de nieuwe zitting wordt genegeerd, en de oude zitting wordt gebruikt.

    Ik ben droevig, maar ik kan niet precies vertellen waar het probleem is. Ik weet dat er de speciale code is van Sporen die zittingskoekjes behandelt wanneer u integratie het testen doet.

    Ik gebruik actionpack-2.3.8 en webrat-0.7.1.

Hier is hoe ik mijn beste rond het probleem deed werken.

Eerst en vooral, sla ik mijn zittingen in het gegevensbestand op. Vandaar, cre�ërde ik een model ActiveRecord om zittingsverslagen manueel te schrappen:

de klassen Zitting <� ActiveRecord::Base="">  # reset_session van Sporen zijn niets dan probleem voor ons geweest.  Ik neem
  # is in mijn eigen handen van belang.  Deze code zal moeten veranderen als wij ophouden
  # zettend onze zittingen in het gegevensbestand.
  def self.nuke_session (session_id)
    find_by_session_id! (session_id) .destroy
  eind
eind

Aangezien ik authlogic gebruik, kijkt mijn logout actie iets in die aard:

def vernietig
  current_user_session.destroy

  # Vermijd de aanvallen van de zittingsbevestiging.  Dit kan overtollig schijnen, maar het was
  # noodzakelijk om de tests te maken overgaan.
  zitting [: test_that_this_disappears] = „o.k.“
  session_id = koekjes [ActionController:: Base.session_options [: zeer belangrijk]]
  Session.nuke_session (session_id)
  reset_session

  redirect_to: actie =>: logged_out
eind

Mijn login actie is iets in die aard:

def cre�ër
  @user_session = UserSession.new (params [: user_session])
  tenzij @user_session.valid?
    de terugkeer geeft terug: actie =>: nieuw
  eind

  # Vermijd de aanvallen van de zittingsbevestiging door de zitting terug te stellen.
  reset_session
  @user_session = UserSession.new (params [: user_session])
  @user_session.save!

  # Met een bepaalde bedoeling, boeken de flits, reset_session, de Komkommer, enz. niet vooruitgang,
  # zo moet ik het flitsbericht via een parameter overgaan.
  redirect_to (root_url (: login => 1))
eind

In plaats van het plaatsen van een bericht via flits, ga ik een vraagparameter over.

Ik controleer deze parameter in mijn ApplicationController:

before_filter: check_for_login_message

# Met een bepaalde bedoeling, boeken de flits, reset_session, de Komkommer, enz. niet vooruitgang.
# Vandaar, na login, moeten wij het flitsbericht via een vraagparameter overgaan
# eerder dan via flits.
#
# Als ik dit soort ding moet opnieuw doen, zal ik een hoogtepunt van de raadplegingslijst creëren
# van berichten.
def check_for_login_message
  flash.now [: success_message] = „succesvol Login!“ als params [: login]
eind

Tot slot heb ik dit in een eigenschapdossier:

# Zou deze test moeten werken.  In feite, werkt het wanneer u uw browser gebruikt.
# Nochtans, is er een insect ergens tussen Sporen en Webrat die verhindert
# het van het werken wanneer u Komkommer gebruikt.  Op de een of andere manier, is reset_session gebroken.
#
# Scenario: het het programma openen zou uw zittingskoekje moeten ongeldig maken
# Gegeven ben ik op de homepage
# Wanneer ik mijn zittingskoekje bekijk
# En ik word het programma geopend
# Dan zou ik een verschillend zittingskoekje moeten hebben

Die test baseert zich op deze stappen:

# Zou deze test moeten werken.  In feite, werkt het wanneer u uw browser gebruikt.
# Nochtans, is er een insect ergens tussen Sporen en Webrat die verhindert
# het van het werken wanneer u Komkommer gebruikt.  Op de een of andere manier, is reset_session gebroken.
#
# Bepaalde bekijkt/^I mijn zitting cookie$/
# @cookie = koekjes [ActionController:: Base.session_options [: zeer belangrijk]]
# eind
#
# Dan zou/^I een verschillende zitting cookie$/moeten hebben doen
# new_cookie = koekjes [ActionController:: Base.session_options [: zeer belangrijk]]
# new_cookie.sh ould_not == @cookie
# eind
Andere oplossingen  
 
programming4us programming4us