小编Mic*_*ael的帖子

会话超时时来自浏览器的HTTP请求

我有两个HTTP服务器提供的UI.因此,我需要从两个服务器清除HTTP会话.注销用例很简单但不清楚如何为会话超时用例执行此操作.

服务器端的通知可以通过HttpSessionBindingListener 获取有界/无界的通知到HTTP会话.但是如何通知客户端网站呢?我必须将请求从浏览器发送到第二台服务器,以便能够清理第二台服务器上的会话cookie,因此我无法从服务器端发送请求.

添加

一台服务器是Tomcat 8,第二台服务器是Apache HTTPD服务器.我想通过UI回调来解决它(来自Tomcat HTTP servlet服务器).

session notifications httpsession

8
推荐指数
1
解决办法
477
查看次数

Liquibase支持干运行吗?

我们有几个数据模式,我们调查迁移到Liquibase.(其中一个数据模式已经迁移到Liquibase).

对我们来说重要的问题是Liquibase是否支持干运行:

  • 我们需要在没有提交的情况下对所有模式运行数据库更改,以确保我们没有问题.
  • 如果成功,所有数据库更改将再次使用commit运行.

(类似于此SQL Server查询干运行但与Liquibase相关的问题)

答案后添加

我阅读了与updateSQL相关的文档,并没有回答"干运行"的要求.它只是生成SQL(在命令行中,在Ant任务和Maven插件中).我会澄清我的问题:

Liquibase是否支持对交易的控制?

我想在执行Liquibase changelog之前打开事务,并在更改日志执行后回滚事务.当然,我需要验证执行的结果.

可能吗?

添加

如果没有对事务(或干运行)的控制,我们就无法将所有模式迁移到Liquibase.

请帮忙.

sql transactions liquibase

7
推荐指数
2
解决办法
6611
查看次数

更好地理解Liquibase如何执行更改集

我想更好地理解Liquibase如何执行更改集.

1)

a)例如,我有一个包含4个更改集的更改日志,我执行updateDatabase(http://www.liquibase.org/documentation/ant/updatedatabase_ant_task.html).Liquibase将执行4个更改集.

b)如果我再次运行相同的更改日志Liquibase不执行任何设置.

c)如果我将一个新的更改集添加到更改日志并运行更改日志,Liquibase将仅执行新的更改集.

问题:

  • Liquibase如何知道要执行的更改集?

  • Liquibase如何知道已经执行了哪些更改集?

2)变更集ID如何重要?更改日志执行后我可以更改它吗?

3)变更集作者如何重要?更改日志执行后我可以更改它吗?

4)如果我将执行rollbackDatabase(http://www.liquibase.org/documentation/ant/rollbackdatabase_ant_task.html)会怎样?Liquibase如何知道哪些更改设置为回滚?

a)如果我将在1 a)之后执行回滚会发生什么.Liquibase会调用位于每个更改集中的回滚元素(4个回滚元素)吗?

b)如果我将在1 b)之后执行回滚会发生什么.Liquibase如何知道不会调用任何回滚元素?

c)如果我将在1 c)之后执行回滚会发生什么.Liquibase会调用只有新变更集的回滚元素吗?

liquibase

7
推荐指数
1
解决办法
4357
查看次数

多租户认证的设计

我开始设计多租户系统并已阅读文章:http:
//msdn.microsoft.com/en-us/library/aa479086.aspx

无论如何,我有几个与身份验证有关的问题.例如,我们需要支持需要单独数据库的客户.更确切地说,客户使用单独的LDAP(每个租户的LDAP).我无法解决的问题是,在身份验证之前,身份验证框架需要知道租户,以便针对相应的LDAP进行身份验证.用户在身份验证期间如何选择租户?

表单身份验证:

我们是否应该开发一个包含3个输入字段的特殊表单登录:用户名,密码和租户?
我们应该向用户显示所有租户的列表吗?这是信息泄露,用户可以看到部署中所有租户的列表.它应该是自由文本提交吗?在这种情况下,它容易出错.

其他类型的身份验证:

如果我们使用基本身份验证,如何发送租户信息?摘要认证?客户证书认证?

任何对现有(免费)框架的观点都将受到赞赏.

authentication multi-tenant

7
推荐指数
1
解决办法
5264
查看次数

如何使用UnboundID SDK连接到具有SSL服务器证书的LDAP服务器?

我手中有一个SSL LDAP服务器证书.我想用它来使用UnboundID SDK连接到LDAP服务器.

我不想使用com.unboundid.util.ssl.TrustAllTrustManager,如下所示: 使用带有SSL证书文件的UnboundID SDK连接到Android应用程序中的LDAP服务器

以下TrustManagers不符合我们的产品要求:

com.unboundid.util.ssl.PromptTrustManager
com.unboundid.util.ssl.HostNameTrustManager
com.unboundid.util.ssl.ValidityDateTrustManager
Run Code Online (Sandbox Code Playgroud)

我不希望任何用户交互,以及我在TrustManager上面列出的验证证书颁发者的内容.

另外,我不想在任何密钥库中插入LDAP服务器证书,因此我无法使用以下TrustManagers:

com.unboundid.util.ssl.WrapperKeyManager
com.unboundid.util.ssl.PKCS11KeyManager
com.unboundid.util.ssl.KeyStoreKeyManager
Run Code Online (Sandbox Code Playgroud)

我想做类似下面的代码:

CertificateFactory cf = CertificateFactory.getInstance("X.509");
Certificate cert = cf.generateCertificate(byteArrayInputStream);
SSLUtil sslUtil = new SSLUtil(new CertificateTrustManager(cert));
SSLSocketFactory socketFactory = sslUtil.createSSLSocketFactory();
LDAPConnection connection = new LDAPConnection(socketFactory,
     "server.example.com", 636);
Run Code Online (Sandbox Code Playgroud)

请注意,UnboundID SDK中不存在CertificateTrustManager.怎么可能这样做?

ssl ldap ssl-certificate ldapconnection unboundid-ldap-sdk

6
推荐指数
1
解决办法
4932
查看次数

如何配置Python以忽略主机名验证?

我们在Python中相对较新,因此可能是问题太简单了。我们正在使用Python版本2.7.15。

我们试图在TLS上使用Python失败。

这是我们的代码:

import ssl,socket
import urllib2

context = ssl.SSLContext(ssl.PROTOCOL_TLS)
context.verify_mode = ssl.CERT_REQUIRED
context.check_hostname = False
context.load_verify_locations("/py-test/python/bin/certificate.pem")
url = "https://10.0.0.12"
request = urllib2.Request(url)
websocket = urllib2.urlopen(request,None,None,None,None,None,context)
pages=websocket.readlines()
print pages
Run Code Online (Sandbox Code Playgroud)

如您所见,我们已经配置 context.check_hostname = False

不幸的是,它失败并带有以下异常

Traceback (most recent call last):
 File "./test.py", line 11, in <module>
   websocket = urllib2.urlopen(request,None,None,None,None,None,context)
 File "/py-test/python/lib/python2.7/urllib2.py", line 154, in urlopen
   return opener.open(url, data, timeout)
 File "/py-test/python/lib/python2.7/urllib2.py", line 429, in open
   response = self._open(req, data)
 File "/py-test/python/lib/python2.7/urllib2.py", line 447, in _open
   '_open', req)
 File "/py-test/python/lib/python2.7/urllib2.py", line 407, …
Run Code Online (Sandbox Code Playgroud)

python ssl python-2.7

6
推荐指数
1
解决办法
344
查看次数

Jenkins:使用子项目构建项目的最佳方式

我们在同一个SVN存储库中有一个包含两个子项目的项目.例如:

svn://ip/svn/ trunk/subproject1
svn://ip/svn/ trunk/subproject2
Run Code Online (Sandbox Code Playgroud)

项目的构建应包括两个子项目的构建结果.为了使我们的构建更快,我想分别在SVN被更改时(在svn:// ip/svn/trunk/subproject1中)运行subproject1的构建.对于子项目2也是如此

最好的方法是什么?我可以用一份工作吗?在这种情况下,我应该如何定义构建触发器?

或者我需要定义3个工作:每个子项目一个或每个项目一个?

任何帮助将不胜感激!最好的问候,迈克尔

java jenkins

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

如何检查 PostgreSQL 安装是否支持 SSL?

在 PostgreSQL 文档中描述了为 SSL 支持构建 PostgreSQL 所需的内容:

http://www.postgresql.org/docs/9.1/static/ssl-tcp.html

PostgreSQL 安装是否有可能从某些 CentoOS 存储库中支持 SSL 开箱即用?如何检查 PostgreSQL 安装是否支持 SSL?

postgresql ssl centos

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

在SpringSecurity 4中重写BasicAuthenticationEntryPoint的最简单方法是什么?

我无法在SO上找到答案(例如,这里 。SpringSecurity:类扩展BasicAuthenticationEntryPoint中的Commence方法,没有被调用

我只想覆盖BasicAuthenticationEntryPoint而不覆盖其他过滤器和其他人员:

<bean id="authenticationEntryPoint" name="authenticationEntryPoint"
      class="com.myclass.BasicAuthenticationEntryPoint">
    <property name="realmName" value="myapp" />
</bean>
Run Code Online (Sandbox Code Playgroud)

不幸的是,它不起作用,我需要配置过滤器。

<security:http auto-config="true" ..
<sec:custom-filter ref="basicAuthenticationFilter"
                                before="BASIC_AUTH_FILTER" />

</sec:http>

<bean id="basicAuthenticationFilter"
      class="org.springframework.security.web.authentication.www.BasicAuthenticationFilter">
    <constructor-arg name="authenticationManager" ref="authenticationManager" />
    <constructor-arg name="authenticationEntryPoint" ref="authenticationEntryPoint" />
</bean>
Run Code Online (Sandbox Code Playgroud)

然后我有这个警告。

WARN 2015-10-29 09:44:05,330 [localhost-startStop-1::DefaultFilterChainValidator] [user:system] Possible error: Filters at position 2 and 3 are both instances of org.springframework.security.web.authentication.www.BasicAuthenticationFilter
Run Code Online (Sandbox Code Playgroud)

因此,我需要禁用自动配置,但我不想这样做:

<security:http auto-config="false" ...
Run Code Online (Sandbox Code Playgroud)

在SpringSecurity 4中重写BasicAuthenticationEntryPoint的最简单方法是什么?

spring-security spring-security4

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

SpringFramework是否使用来自commons.collections的InvokerTransformer?

昨天宣布了反序列化漏洞(CVE-2015-4852):

https://blogs.apache.org/foundation/entry/apache_commons_statement_to_widespread

SpringFramework使用commons.collections.

如果SpringFramework使用InvokerTransformer,它可能容易受到反序列化漏洞(CVE-2015-4852)的攻击.

问题是SpringFramework使用来自commons.collections的InvokerTransformer?

serialization spring deserialization

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