プロジェクトOIOSAMLは、 Apache Ivyによって管理されるBouncy Castle APIを使用します。
ivi.xml の一部:
...
<dependency org="org.bouncycastle" name="bcprov-jdk15on" rev="1.49" conf="*->*,!sources,!javadoc"/>
<dependency org="org.bouncycastle" name="bcpkix-jdk15on" rev="1.49" conf="*->*,!sources,!javadoc"/>
...
同じ依存関係でMavenを使用します。pom.xml の一部:
...
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk15on</artifactId>
<version>1.49</version>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcpkix-jdk15on</artifactId>
<version>1.49</version>
</dependency>
...
subjectKeyIdentifier
ただし、フィールドとクラスauthorityKeyIdentifier
が見つかりません。X509Extension
SecurityHelper
クラスの一部:
package dk.itst.oiosaml.security;
public class SecurityHelper {
...
public static X509Certificate generateCertificate(Credential credential, String entityId) throws Exception {
...
gen.addExtension(X509Extension.subjectKeyIdentifier, false, new JcaX509ExtensionUtils().createSubjectKeyIdentifier(credential.getPublicKey()));
gen.addExtension(X509Extension.authorityKeyIdentifier, false, new JcaX509ExtensionUtils().createAuthorityKeyIdentifier(credential.getPublicKey()));
...
}
}
X509Extension
クラス:
package org.bouncycastle.asn1.x509;
public class X509Extension {
boolean critical;
org.bouncycastle.asn1.ASN1OctetString value;
public X509Extension(org.bouncycastle.asn1.DERBoolean derBoolean, org.bouncycastle.asn1.ASN1OctetString asn1OctetString) { /* compiled code */ }
public X509Extension(boolean b, org.bouncycastle.asn1.ASN1OctetString asn1OctetString) { /* compiled code */ }
public boolean isCritical() { /* compiled code */ }
public org.bouncycastle.asn1.ASN1OctetString getValue() { /* compiled code */ }
public int hashCode() { /* compiled code */ }
public boolean equals(java.lang.Object o) { /* compiled code */ }
public static org.bouncycastle.asn1.ASN1Object convertValueToObject(org.bouncycastle.asn1.x509.X509Extension x509Extension) throws java.lang.IllegalArgumentException { /* compiled code */ }
}
OIOSAML を使用するには、どのバージョンの Bouncy Castle API を使用する必要がありますか?