• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java JWKSet类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中com.nimbusds.jose.jwk.JWKSet的典型用法代码示例。如果您正苦于以下问题:Java JWKSet类的具体用法?Java JWKSet怎么用?Java JWKSet使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



JWKSet类属于com.nimbusds.jose.jwk包,在下文中一共展示了JWKSet类的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: init

import com.nimbusds.jose.jwk.JWKSet; //导入依赖的package包/类
@PostConstruct
public void init() {

    InputStream inputStream = TokenGenerator.class.getClassLoader().getResourceAsStream("rsa.keyset");
    String content = new Scanner(inputStream).useDelimiter("\\Z").next();
    try {
        jwkSet = JWKSet.parse(content);

        inputStream.close();
    } catch (ParseException | IOException e) {
        e.printStackTrace();
        // FIXME
    }

    keys = jwkSet.getKeys().stream().map(JWK::getKeyID).collect(Collectors.toList());

}
 
开发者ID:atbashEE,项目名称:jsr375-extensions,代码行数:18,代码来源:DemoJWTHandler.java


示例2: getKey

import com.nimbusds.jose.jwk.JWKSet; //导入依赖的package包/类
private ECPublicKey getKey(String kid, String alg) throws Exception {
  JWK jwk = keyCache.get(kid);
  if (jwk == null) {
    // update cache loading jwk public key data from url
    JWKSet jwkSet = JWKSet.load(new URL(PUBLIC_KEY_VERIFICATION_URL));
    for (JWK key : jwkSet.getKeys()) {
      keyCache.put(key.getKeyID(), key);
    }
    jwk = keyCache.get(kid);
  }
  // confirm that algorithm matches
  if (jwk != null && jwk.getAlgorithm().getName().equals(alg)) {
    return ECKey.parse(jwk.toJSONString()).toECPublicKey();
  }
  return null;
}
 
开发者ID:GoogleCloudPlatform,项目名称:java-docs-samples,代码行数:17,代码来源:VerifyIapRequestHeader.java


示例3: lookupJWKSource

import com.nimbusds.jose.jwk.JWKSet; //导入依赖的package包/类
private JWKSource<SecurityContext> lookupJWKSource() throws IOException, ParseException {
    if(jwtConfiguration.getJwkResource() != null &&
            !"".equals(jwtConfiguration.getJwkResource())) {
        URL resource = DefaultValidatingJWTProcessor.class.getResource(jwtConfiguration.getJwkResource());
        try(InputStream stream = resource.openStream()) {
            String key = com.nimbusds.jose.util.IOUtils.readInputStreamToString(stream, Charset.defaultCharset());
            return new ImmutableJWKSet<>(JWKSet.parse(key));
        }
    }
    else if(jwtConfiguration.getJwkSourceUrl() != null &&
            !"".equals(jwtConfiguration.getJwkSourceUrl())) {
        return new RemoteJWKSet<>(new URL(jwtConfiguration.getJwkSourceUrl()));
    }
    else {
        JWKSet jwkSet = JWKSet.load(new File(jwtConfiguration.getJwkSourceFile()));

        return new ImmutableJWKSet<>(jwkSet);
    }
}
 
开发者ID:hammock-project,项目名称:hammock,代码行数:20,代码来源:DefaultValidatingJWTProcessor.java


示例4: loadAadPublicKeys

import com.nimbusds.jose.jwk.JWKSet; //导入依赖的package包/类
private static JWKSet loadAadPublicKeys() {
    try {
        return JWKSet.load(
                new URL(KEY_DISCOVERY_URI));
    } catch (IOException | ParseException e) {
        LOG.error("Error loading AAD public keys: {}", e.getMessage());
    }
    return null;
}
 
开发者ID:Microsoft,项目名称:azure-spring-boot,代码行数:10,代码来源:UserPrincipal.java


示例5: resolveJwk

import com.nimbusds.jose.jwk.JWKSet; //导入依赖的package包/类
private JWK resolveJwk(JWSAlgorithm algorithm) {
	// @formatter:off
	JWKMatcher jwkMatcher = new JWKMatcher.Builder()
			.keyType(KeyType.forAlgorithm(algorithm))
			.keyUse(KeyUse.SIGNATURE)
			.build();
	// @formatter:on

	JWKSelector jwkSelector = new JWKSelector(jwkMatcher);
	JWKSet jwkSet = this.jwkSetLoader.load();
	List<JWK> keys = jwkSelector.select(jwkSet);

	return keys.iterator().next();
}
 
开发者ID:vpavic,项目名称:simple-openid-provider,代码行数:15,代码来源:DefaultTokenService.java


示例6: getJwkSet

import com.nimbusds.jose.jwk.JWKSet; //导入依赖的package包/类
@GetMapping
public void getJwkSet(HttpServletResponse response) throws IOException {
	JWKSet jwkSet = this.jwkSetLoader.load();

	response.setContentType(JWKSet.MIME_TYPE);

	PrintWriter writer = response.getWriter();
	writer.print(jwkSet.toJSONObject().toJSONString());
	writer.close();
}
 
开发者ID:vpavic,项目名称:simple-openid-provider,代码行数:11,代码来源:JwkSetEndpoint.java


示例7: jwkSetLoader

import com.nimbusds.jose.jwk.JWKSet; //导入依赖的package包/类
@Bean
public JwkSetLoader jwkSetLoader() {
	return () -> {
		try {
			Resource jwkSetResource = this.resourceLoader.getResource(JWK_SET_LOCATION);
			String jwkSetJson = new String(FileCopyUtils.copyToByteArray(jwkSetResource.getInputStream()));

			return JWKSet.parse(jwkSetJson);
		}
		catch (IOException | ParseException e) {
			throw new RuntimeException(e);
		}
	};
}
 
开发者ID:vpavic,项目名称:simple-openid-provider,代码行数:15,代码来源:OAuth2Configuration.java


示例8: main

import com.nimbusds.jose.jwk.JWKSet; //导入依赖的package包/类
public static void main(String[] args) {
    List<JWK> jwks = new ArrayList<>();

    // First key
    String xApiKey = UUID.randomUUID().toString();
    JWK jwk = make(2048, KeyUse.SIGNATURE, new Algorithm("PS512"), xApiKey);

    jwks.add(jwk);

    // Second key
    xApiKey = UUID.randomUUID().toString();
    jwk = make(2048, KeyUse.SIGNATURE, new Algorithm("PS512"), xApiKey);

    jwks.add(jwk);

    // Third key
    xApiKey = UUID.randomUUID().toString();
    jwk = make(2048, KeyUse.SIGNATURE, new Algorithm("PS512"), xApiKey);

    jwks.add(jwk);

    JWKSet jwkSet = new JWKSet(jwks);
    System.out.println(jwkSet.toJSONObject(false));
}
 
开发者ID:atbashEE,项目名称:jsr375-extensions,代码行数:25,代码来源:RSAKeysGenerator.java


示例9: getProviderRSAKeys

import com.nimbusds.jose.jwk.JWKSet; //导入依赖的package包/类
JWKSet getProviderRSAKeys(JSONObject json) throws ParseException {
	JSONArray keyList = (JSONArray) json.get("keys");
	List<JWK> rsaKeys = new LinkedList<>();
	for (Object key : keyList) {
		JSONObject k = (JSONObject) key;
		if (k.get("use").equals("sig") && k.get("kty").equals("RSA")) {
			rsaKeys.add(RSAKey.parse(k));
		}
	}
	if (!rsaKeys.isEmpty()) {
		return new JWKSet(rsaKeys);
	}
	throw new IllegalArgumentException("No RSA keys found");
}
 
开发者ID:aaronanderson,项目名称:swarm-oidc,代码行数:15,代码来源:OIDCAuthenticationMechanism.java


示例10: init

import com.nimbusds.jose.jwk.JWKSet; //导入依赖的package包/类
@PostConstruct
public void init() {
    String privateContent = readFile("private.jwkset");
    try {
        jwkSet = JWKSet.parse(privateContent);
    } catch (ParseException e) {
        e.printStackTrace();
    }
}
 
开发者ID:rdebusscher,项目名称:soteria-jwt,代码行数:10,代码来源:DemoJWTHandler.java


示例11: onNewFile

import com.nimbusds.jose.jwk.JWKSet; //导入依赖的package包/类
public void onNewFile() {
    currentFile = null;
    jwkSet = new JWKSet();
    changed.setValue(true);
}
 
开发者ID:atbashEE,项目名称:atbash-octopus,代码行数:6,代码来源:JWKSetData.java


示例12: getKeys

import com.nimbusds.jose.jwk.JWKSet; //导入依赖的package包/类
@Test
public void getKeys() throws Exception {
	given(this.jwkSetLoader.load()).willReturn(new JWKSet());

	this.mvc.perform(get("/oauth2/keys")).andExpect(status().isOk()).andExpect(jsonPath("$.keys").isEmpty());
}
 
开发者ID:vpavic,项目名称:simple-openid-provider,代码行数:7,代码来源:JwkSetEndpointTests.java


示例13: readJWKSet

import com.nimbusds.jose.jwk.JWKSet; //导入依赖的package包/类
private static JWKSet readJWKSet() throws ParseException, IOException {
    JWKSet result;


    InputStream inputStream = TokenGenerator.class.getClassLoader().getResourceAsStream("rsa.keyset");
    String content = new Scanner(inputStream).useDelimiter("\\Z").next();
    result = JWKSet.parse(content);

    inputStream.close();

    return result;
}
 
开发者ID:atbashEE,项目名称:jsr375-extensions,代码行数:13,代码来源:TokenGenerator.java


示例14: load

import com.nimbusds.jose.jwk.JWKSet; //导入依赖的package包/类
/**
 * Load JWK set.
 * @return the JWK set
 */
JWKSet load();
 
开发者ID:vpavic,项目名称:simple-openid-provider,代码行数:6,代码来源:JwkSetLoader.java



注:本文中的com.nimbusds.jose.jwk.JWKSet类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java XFormParser类代码示例发布时间:2022-05-22
下一篇:
Java RENAME3Request类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap