小编Luk*_*Luk的帖子

为一个属性使用多个输入字段

我是铁杆的新手,很抱歉,如果这个太容易了.

我的模型中有一个datetime属性,我尝试用3个表单元素将值放在其中.第一个是日期,是一个输入形式(我使用bootstrap-datepicker-rails,我想坚持下去).在第二个我想要一个小时的选择框,第三个是分钟.

所以我看到我可以使用DateHelpers datetime_select但是我不能再使用bootstrap-datepicker了.那么通过使用多个表单输入元素来填充属性(日期时间)的正确方法是什么.我看到有类似assign_multiparameter_attributes但文档不太有帮助:-(

谢谢

datetime ruby-on-rails datepicker

10
推荐指数
1
解决办法
5845
查看次数

将Spring Security OAuth2与SAML SSO连接

我们有一个基于Spring Boot的微服务架构,在该架构中,我们有多个相互对话的微服务以及一个连接到不同微服务的Javascript UI。

由于这是一个内部应用程序,并且我们需要将它们连接到SAML2端点以提供SSO,因此将所有这些连接在一起让我有些头疼。理想情况下,微服务在其自身(JWT)和UI之间使用oAuth2,但是用户身份验证是通过SAML2完成的

我要实现以下目标:

  • UI客户端使用JWT与微服务对话
  • 微服务也使用JWT进行通信。当用户向微服务发起请求并且该微服务需要来自另一个微服务的更多数据时,它将使用用户的JWT令牌(这应该很容易做到)。
  • 具有一个中央身份验证微服务,该服务负责生成新令牌并针对SAML端点对用户进行身份验证。
  • 在身份验证微服务中存储一些SAML详细信息(例如,角色)

所以我尝试了很多不同的东西。我能说的是:

我想我最麻烦的是oauth2资源服务器和SAML服务的连接点。

关于SAML,我有以下可以正常工作的方法:

@Configuration
@EnableWebSecurity
public class WebSecurityConfiguration extends WebSecurityConfigurerAdapter {

    @Value("${security.saml2.metadata-url}")
    String metadataUrl;
    @Value("${server.ssl.key-alias}")
    String keyAlias;
    @Value("${server.ssl.key-store-password}")
    String password;
    @Value("${server.port}")
    String port;
    @Value("${server.ssl.key-store}")
    String keyStoreFilePath;

    @Autowired
    SAMLUserDetailsService samlUserDetailsService;


    @Override
    protected void configure(HttpSecurity http) throws Exception {

        http.antMatcher("/**")
                .authorizeRequests()
                .antMatchers("/oauth/**").authenticated()
                .and().exceptionHandling()

                .and()
                .authorizeRequests()
                .antMatchers("/saml*").permitAll()
                .anyRequest().authenticated()
                .and()
                .apply(saml()).userDetailsService(samlUserDetailsService)
                .serviceProvider()
                .keyStore()
                .storeFilePath("saml/keystore.jks")
                .password(this.password)
                .keyname(this.keyAlias)
                .keyPassword(this.password)
                .and()
                .protocol("https")
                .hostname(String.format("%s:%s", "localhost", this.port))
                .basePath("/")
                .and() …
Run Code Online (Sandbox Code Playgroud)

spring spring-security spring-security-ldap spring-boot spring-security-oauth2

6
推荐指数
0
解决办法
1734
查看次数

如果设置了特定标头,则测试AngularJs的$ http.defaults.headers.common

所以我是JavaScript和AngularJS的新手,因此我的代码还不如它应该的那么好,但它正在改进.然而,我开始学习并实现一个带有REST后端的简单登录页面.提交登录表单后,将返回一个身份验证令牌,并将其设置为默认的http-header属性,如下所示

$http.defaults.headers.common['X-AUTH-TOKEN'] = data.authToken;
Run Code Online (Sandbox Code Playgroud)

每当我手动测试时,这都可以正常工作,但这不是我要去的方法,所以我想实现一个单元测试,它检查是否设置了X-AUTH-TOKEN标头.

有没有办法用$ httpBackend检查?例如,我有以下测试:

describe('LoginController', function () {
    var scope, ctrl, $httpBackend;

    // Load our app module definition before each test.
    beforeEach(module('myApp'));

    // The injector ignores leading and trailing underscores here (i.e. _$httpBackend_).
    // This allows us to inject a service but then attach it to a variable
    // with the same name as the service.
    beforeEach(inject(function (_$httpBackend_, $rootScope, $controller) {
        $httpBackend = _$httpBackend_;
        scope = $rootScope.$new();
        ctrl = $controller('LoginController', {$scope: scope}, {$http: $httpBackend}, {$location: null});
    })); …
Run Code Online (Sandbox Code Playgroud)

angularjs

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

链接JSF组件的CSS中的图像

我实现了一个jsf 2.0组件,它应该显示jQuery的Datepicker.它工作正常,但找不到css中引用的图像.找到了*.js和*.css,但没有找到图像的链接.

这是我的组件的代码

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
        xmlns:h="http://java.sun.com/jsf/html"
        xmlns:c="http://java.sun.com/jsp/jstl/core"
        xmlns:cc="http://java.sun.com/jsf/composite">
<head>
    <title>jQuery - Datepicker</title>

</head>
<body>
<cc:interface>
    <cc:editableValueHolder name="input"/>
</cc:interface>

<cc:implementation>
    <h:outputStylesheet library="stats" name="jquery/css/jquery-ui-1.8.16.custom.css" />
    <h:outputScript library="stats" name="jquery/js/jquery-1.7.1.min.js" target="head"/>
    <h:outputScript library="stats" name="jquery/js/jquery-ui-1.8.17.custom.min.js" target="head"/>


    <script type="text/javascript">
    var jq = jQuery.noConflict();
    jq(document).ready(function() {
        jq("[id$=#{cc.clientId}]").datepicker({
            showOn : 'focus',
            duration : 10,
            changeMonth : true,
            changeYear : true,
            dayNamesMin : ['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'],
            currentText : 'Heute',
            dateFormat : 'dd-mm-yy',
            yearRange …
Run Code Online (Sandbox Code Playgroud)

css java jquery jsf-2

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