Spring Security 3.1 (15) 更多

  • 第370页
    JavaScript updates The last change we need to make is to have the JavaScript framework handle the 401 response sent by Spring Security when a login is required. The method in which this is done wil...
  • 第368页
    Http401EntryPoint As we mentioned previously, Spring Security's default behavior when using form- based login is to redirect the user to a page that contains a form to submit their username and pas...
  • 第163页
    Note that the IP-based remember-me tokens may behave unexpectedly, if the user is behind a shared or load balanced network infrastructure, such as a multi-WAN corporate environment. In most scenari...
  • 第154页
    How does the persistent-based remember-me feature work Instead of validating a signature present in the cookie, the persistent-based remember-me service validates if the token exists in a database....
  • 第150页
    Configuration of the remember-me session cookies If token-validity-seconds is set to -1, the login cookie will be set to a session cookie, which does not persist after the browser is closed by the ...
  • 第146页
    How the token-based remember-me feature works The remember-me feature sets a cookie on the user's browser containing a Base64- encoded string with the following pieces: • The username • An ex...
  • 第98页
    Now, note that the encrypted password of the hacker@example.com user is exactly the same as the real user! Thus, a hacker who had somehow gained the ability to read the encrypted passwords in the d...
  • 第155页
    Are database-backed persistent tokens more secure Just like TokenBasedRememberMeServices, persistent tokens may be compromised by cookie theft or other man-in-the-middle techniques. The use of SSL,...
  • 第154页
    How does the persistent-based remember-me feature work Instead of validating a signature present in the cookie, the persistent-based remember-me service validates if the token exists in a database....
  • 第146页
    How the token-based remember-me feature works The remember-me feature sets a cookie on the user's browser containing a Base64- encoded string with the following pieces: • The username • An ex...
  • 第266页
    Why we secure in layers Let's take a minute to see why it is important to secure our methods even though we have already secured our URLs. Start the JBCP Calendar application up. Log in using user1...
  • 第355页
    There is a disadvantage to this approach that may not be apparent without some thought. Try closing Chrome without logging out and then opening it up again. Now, attempt to log in to the applicatio...
  • 第353页
    Common problems with concurrency control There are a few common reasons that logging in with the same user does not trigger a logout event. The first occurs when using a custom UserDetails (as we d...
  • 第344页
    Understanding session fixation attacks Session fixation is a type of attack whereby a malicious user attempts to steal the session of an unauthenticated user of your system. This can be done by usi...
  • 第73页
    Which authentication method to use · SecurityContextHolder: ... · UserDetailsService: ... It also provides a mechanism to hook into other Spring Security features. For example, Spring Security re...

Exploring Everyday Things with R and Ruby (7) 更多

  • 第88页
    ggplot() + scale_shape_manual(name="Type", value=c(2,3,4,22)) + geom_smooth(data = df("simulation3"), aes(x=population,y=max)) + geom_point(data = df("simulation3"), aes(x=population,y=max,shape="...
  • 第87页
    We run the same script in Example 3-6 but change the filename from simulation1.csv to simulation4-1.csv to generate the chart in Figure 3-8. 应该为 We run the same script in Example 3-6 but change ...
  • 第80页
    想来这页还是个疙瘩放不下 Example3-8中的代码是 ggplot(data = df) + scale_color_discrete(name="Type") + geom_smooth(aes(x=population,y=mean,color="mean")) + geom_point(aes(x=population,y=mean,color="...
  • 第84页
    先说一下 在 第三章目前包括Example 3-11 在内的所有R的示例代码中 ggplot() + scale_shape_manual(name="Type", value=c(2,3,4,22)) + 均写错了,应为 ggplot() + scale_shape_manual(name="Type", values=c(2,3...
  • 第73页
    勘误 ggplot(data = df) + scale_shape_manual(name="Type", value=c(2,3,4)) + 应该为 ggplot(data = df) + scale_shape_manual(name="Type", values=c(2,3,4)) +
  • 第27页
    Programmers are trained in logic, and our daily work mostly involves controlling and moving bits and bytes around. So when we're faced with a chunk of data and asked to do something with it, our re...
  • 第4页
    RubyInstaller includes many native C-based extensions, so that's a bonus.

Twitter Bootstrap Web Development (1)

  • 第28页
    f navbar provides the outside containing element for all contents of the navbar. f navbar-inverse calls for a dark navbar background with light font color. f navbar-fixed-top fixes the navbar at th...

JavaScript (3)

  • 第35页
    Some languages offer the tail recursion optimization. This means that if a function returns the result of invoking itself recursively, then the invocation is replaced with a loop, which can signifi...
  • 第29页
    JavaScript是一门基于原型继承的语言。这意味着对象可以直接从其他对象继承属性。该语言是无类别的。 这偏离了当今编程语言的主流。当今大多数语言都是基于类的语言。尽管原型继承有着强大的表现力,但它并不被广...
  • 第10页
    Unlike many other languages, blocks in JavaScript do not create a new scope, so variables should be defined at the top of the function, not in blocks.

Groovy Recipes (1)

  • 第131页
    Whereas XmlParser treats everything like a node or a list of nodes, Xml- Slurper treats everything like the result of a GPath query. This makes it more natural to navigate the path. When you ask fo...