小编And*_*fat的帖子

JSESSIONID未过期,SPRING_SECURITY_REMEMBER_ME已过期

因此,我在应用程序中具有春季安全性,并在选中该复选框时引入了“记住我”功能。

我想知道确切的行为是什么:如果我设置了</remember-me>标签并指定了rememberMeServices tokenValiditySecondsto 20秒,则会话是否不应该过期并要求我再次登录?我必须设置:

<session-config>
   <session-timeout>XX</session-timeout>
</session-config> 
Run Code Online (Sandbox Code Playgroud)

所以它匹配SPRING_SECURITY_REMEMBER_MEcookie tokenValiditySeconds

更新

我是否已实现自己的计划PersistentTokenBasedRememberMeServices?我必须重写PersistentTokenBasedRememberMeServices来自spring 的默认值,因为它PersistentRememberMeToken没有任何no-arg构造函数,因此无法使用hibernate,所以我所做的只是写了自己的PersistentRememberMeTokenPersistentTokenBasedRememberMeServices(顺便说一下,它什么也没有在我旁边特别介绍了no-arg构造函数PersistentRememberMeToken,此外,它是从spring的源中复制粘贴的)

java spring-security session-cookies

5
推荐指数
0
解决办法
977
查看次数

Spring Cloud中的Sticky Sessions和Zuul

我有一组微服务,我们使用zuul从前端进行路由,作为使用spring cloud将uri上下文路径映射到特定微服务的一种方式.

在内部和外部,我们使用spring OAuth2,效果很好.

但是,对于一个特定服务,出现了对SAML的要求,这对该服务强加了粘性会话要求.

是否有人考虑过这个问题以及为zuul提供粘性会话支持的正确方法.

作为一个解决方法,直到我弄清楚这一点,我将一些请求从我们在前端的HAProxy直接路由到此服务.

spring-security spring-cloud netflix-zuul

5
推荐指数
1
解决办法
4659
查看次数

使用 Spring Boot 和 Netflix Zuul 的简单反向代理

我正在寻找使用 Spring Boot 实现一个简单的反向代理,即:

  • 轻松添加路线
  • 能够在每个路由的基础上添加自定义身份验证
  • 根据需要添加其他标头

我查看了注释提供的功能@EnableZuulProxy,但它似乎太重量级了,因为我不想使用 Eureka、Ribbon 或 Hystrix。然而,@EnableZuulServer配置有点轻。

有人能提供一个我所追求的例子吗?Netflix Zuul 是正确的选择吗?还是还有其他我应该考虑的库?

谢谢!

netflix spring-boot spring-cloud netflix-zuul

5
推荐指数
1
解决办法
2万
查看次数

@Configuration 类中的 Spring @Scheduled

当我运行以下类时,Spring 不会调度方法“mywork()”。

@Configuration
@EnableScheduling
public class AppConfig {

    @Scheduled(fixedRate = 1000)
    public void mywork(){
        System.out.println("test");
    }

    @Bean(name = "propertyConfigurer")
    public PropertyPlaceholderConfigurer propertyConfigurer(){
        PropertyPlaceholderConfigurer ppc = new PropertyPlaceholderConfigurer();
        return ppc;
    }

    public static void main(String[] args) {
        ApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);
    }
}
Run Code Online (Sandbox Code Playgroud)

但是如果我删除propertyConfigurer的Bean定义,它就会正常工作。

@Configuration
@EnableScheduling
public class AppConfig {

    @Scheduled(fixedRate = 1000)
    public void mywork(){
        System.out.println("test");
    }

    public static void main(String[] args) {
        ApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);
    }
}
Run Code Online (Sandbox Code Playgroud)

谁能告诉我为什么?

java spring scheduling

5
推荐指数
1
解决办法
2224
查看次数

如何创建继承Ellipse类的子类

我是C#语言的新手,我在创建一个继承某类属性的子类时遇到了一些麻烦.我正在使用Visual Studio 2012来创建Windows Phone 8应用程序.

我继承像Button或TextBox这样的类没有问题,但是我不能让它继承Ellipse类.我可以继承Shape类,从中派生Ellipse,但不能继承Ellipse本身.

我的想法是为我创建的省略号添加一些属性,因此我可以跟踪用户按这些省略号的顺序.我可以使用另一个类,或者使用Ellipse本身(并使用它已经存在的属性),但出于学习目的,我想知道为什么我不能(或我怎么能)继承Ellipse类.

public partial class Ball : Ellipse
{
     ...
}
Run Code Online (Sandbox Code Playgroud)

c# wpf inheritance windows-phone-8

4
推荐指数
2
解决办法
1638
查看次数

如何避免使用Zuul重定向到另一台主机?

我尝试使用Zuul,一个在Spring Cloud Netflix中使用的反向代理.我从春季博客上的教程(https://spring.io/blog/2015/02/03/sso-with-oauth2-angular-js-and-spring-security-part-v)开始了一个项目

然而,我不确定我是否正确地理解了Zuul的角色.

如果我去localhost:8080 /登录,我认为Zuul会代理我的请求,以便我留在localhost:8080但我有一个302重定向到localhost:9999/uaa/login.

配置的zuul路由如下:

zuul: routes: resource: path: /resource/** url: http://localhost:9000/resource login: path: /login/** url: http://localhost:9999/uaa/login user: path: /user/** url: http://localhost:9999/uaa/user auth: path: /auth/** url: http://localhost:9999/uaa/

是否有可能永远留在localhost:8080(这是我认为Zuul应该做的)?

整个项目在github上可用,因此可以在本地运行:https://github.com/hlassiege/oauth-social-zuul

spring-boot spring-cloud netflix-zuul

4
推荐指数
1
解决办法
3539
查看次数

AOP中@within和@annotation有什么区别

@之内

此 PCD 限制匹配具有给定注释的类型内的连接点:

@Pointcut("@within(org.springframework.stereotype.Repository)")
Run Code Online (Sandbox Code Playgroud)

@注解

此 PCD 限制对连接点的匹配,其中连接点的主题具有给定注释。例如我们可以创建一个@Loggable注释:

@Pointcut("@annotation(org.baeldung.aop.annotations.Loggable)")
public void loggableMethods() {}
Run Code Online (Sandbox Code Playgroud)

那么这是否意味着@annotation仅适用于用户定义或自定义的注释。和 @within 用于标准注释

aop spring spring-aop

4
推荐指数
1
解决办法
2939
查看次数

将变量从属性文件传递到 pom.xml 中的 distributionManagement 标记

所以我有类似的东西:

<plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>properties-maven-plugin</artifactId>
            <version>1.0-alpha-1</version>
            <executions>
                <execution>
                    <phase>initialize</phase>
                    <goals>
                        <goal>read-properties</goal>
                    </goals>
                    <configuration>
                        <files>
                            <file>${user.home}/build.properties</file>
                        </files>
                    </configuration>
                </execution>
            </executions>
        </plugin>
Run Code Online (Sandbox Code Playgroud)

distributionManagement喜欢:

<distributionManagement>
    <repository>
        <id>local-repo</id>
        <url>file:///${deploy.dir}/${project.artifactId}</url>
    </repository>
</distributionManagement>
Run Code Online (Sandbox Code Playgroud)

我没有远程存储库,这就是我使用它的原因 file:///

${deploy.dir}build.properties文件中的一个属性,它不会获取该属性的值。为什么?

pom.xml maven

3
推荐指数
1
解决办法
5985
查看次数

Zuul反向代理语言理解

我和Zuul一起玩,但似乎有些根本我不明白.

根据文档(http://cloud.spring.io/spring-cloud-netflix/spring-cloud-netflix.html),以下Zuul配置应该导致所有对"/ myusers"的http调用转发给"用户" "服务.

zuul:
  routes:
      users: /myusers/**
Run Code Online (Sandbox Code Playgroud)

我有类似的情况,但它根本不起作用.我的配置是:

zuul:
   route:
       stores: /california/**
Run Code Online (Sandbox Code Playgroud)

服务Id是"商店",它有一个名为"/ hello"的URL.当我点击:

 http://localhost:8765/california/hello, 
Run Code Online (Sandbox Code Playgroud)

我收到Spring Boot 404错误消息.但是,如果我用商店替换california,那么事情会很好,导致以下配置:

zuul:
   route:
       stores: /stores/**
Run Code Online (Sandbox Code Playgroud)

在这种情况下,如果我打电话

 http://localhost:8765/stores/hello, 
Run Code Online (Sandbox Code Playgroud)

事情很好.因此,看起来URL的前缀必须与服务的ID匹配.这是预期的行为吗?我错过了什么?

我正在使用Zuul 1.0.0.BUILD-SNAPSHOT.在aisde note上,我注意到发现客户端现在已经内置到Zuul中了.如果我不想运行Eureka,有没有办法禁用它?

reverse-proxy netflix spring-cloud netflix-zuul

3
推荐指数
1
解决办法
3725
查看次数

如何创建依赖于Spring Bean的自定义Spring PropertySource

我正在尝试将spring-cloud堆栈用于将使用Zuul的项目.在我的组织中,我们有一个基于xml的自定义配置堆栈,并进行属性组合和分层覆盖.由于处理此配置的方式,我一直在努力为它创建一个PropertySource.

我的自定义PropertySource必须使用我的Config bean,但是因为在Spring Boot引导期间初始化了PropertySources,所以应用程序上下文尚未完全初始化,我无法访问暴露基于xml的配置系统的自定义Bean.

@ConfigurationProperties似乎完全偏向于.properties和.yaml文件.Config bean在ApplicationContextInitializer中初始化.有没有办法延迟各种服务中ConfigurationProperties的解析,所以我可以在初始化后使用我的Config bean构建我的自定义属性源?

java spring spring-boot spring-cloud netflix-zuul

3
推荐指数
2
解决办法
8865
查看次数