Top Inners Fields Constructors Methods
org.keycloak.common.crypto

public abstract Class UserIdentityExtractorProvider

extends Object
Class Inheritance
Imports
java.security.Principal, java.security.cert.X509Certificate, java.util.Optional, java.util.function.Function, java.util.regex.Matcher, .Pattern, org.jboss.logging.Logger, org.keycloak.common.util.PemUtils

Author
Peter Nalyvayko
Version
$Revision: 1 $
Date
7/30/2016

Nested and Inner Type Summary

Modifier and TypeClass and Description
public class
protected class
public class
public abstract class
public abstract class

Field Summary

Modifier and TypeField and Description
private static final Logger

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public UserIdentityExtractorProvider.OrBuilder
public UserIdentityExtractor
public UserIdentityExtractor
public abstract UserIdentityExtractorProvider.SubjectAltNameExtractor

Returns:

the value from the subjectAltName extension
getSubjectAltNameExtractor
(int
an integer representing the general name. See X509Certificate#getSubjectAlternativeNames()
generalName
)

Obtains the subjectAltName given a generalName.

public abstract UserIdentityExtractor
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

loggerback to summary
private static final Logger logger

Constructor Detail

UserIdentityExtractorProviderback to summary
public UserIdentityExtractorProvider()

Method Detail

eitherback to summary
public UserIdentityExtractorProvider.OrBuilder either(UserIdentityExtractor extractor)
getCertificatePemIdentityExtractorback to summary
public UserIdentityExtractor getCertificatePemIdentityExtractor()
getPatternIdentityExtractorback to summary
public UserIdentityExtractor getPatternIdentityExtractor(String pattern, Function<X509Certificate[], String> valueToMatch)
getSubjectAltNameExtractorback to summary
public abstract UserIdentityExtractorProvider.SubjectAltNameExtractor getSubjectAltNameExtractor(int generalName)

Obtains the subjectAltName given a generalName.

Parameters
generalName:int

an integer representing the general name. See X509Certificate#getSubjectAlternativeNames()

Returns:UserIdentityExtractorProvider.SubjectAltNameExtractor

the value from the subjectAltName extension

getX500NameExtractorback to summary
public abstract UserIdentityExtractor getX500NameExtractor(String identifier, Function<X509Certificate[], Principal> x500Name)
org.keycloak.common.crypto back to summary

public Class UserIdentityExtractorProvider.OrBuilder

extends Object
Class Inheritance
  • java.lang.Object
  • org.keycloak.common.crypto.UserIdentityExtractorProvider.OrBuilder

Field Summary

Modifier and TypeField and Description
pack-priv UserIdentityExtractor
pack-priv UserIdentityExtractor

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
public UserIdentityExtractor
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

extractorback to summary
pack-priv UserIdentityExtractor extractor
otherback to summary
pack-priv UserIdentityExtractor other

Constructor Detail

OrBuilderback to summary
pack-priv OrBuilder(UserIdentityExtractor extractor)

Method Detail

orback to summary
public UserIdentityExtractor or(UserIdentityExtractor other)
org.keycloak.common.crypto back to summary

protected Class UserIdentityExtractorProvider.OrExtractor

extends Object
implements UserIdentityExtractor
Class Inheritance
  • java.lang.Object
  • org.keycloak.common.crypto.UserIdentityExtractorProvider.OrExtractor
All Implemented Interfaces
org.keycloak.common.crypto.UserIdentityExtractor

Field Summary

Modifier and TypeField and Description
pack-priv UserIdentityExtractor
pack-priv UserIdentityExtractor

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
public Object
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

extractorback to summary
pack-priv UserIdentityExtractor extractor
otherback to summary
pack-priv UserIdentityExtractor other

Constructor Detail

OrExtractorback to summary
pack-priv OrExtractor(UserIdentityExtractor extractor, UserIdentityExtractor other)

Method Detail

extractUserIdentityback to summary
public Object extractUserIdentity(X509Certificate[] certs)

Implements org.keycloak.common.crypto.UserIdentityExtractor.extractUserIdentity.

Annotations
@Override
org.keycloak.common.crypto back to summary

public Class UserIdentityExtractorProvider.PatternMatcher

extends Object
implements UserIdentityExtractor
Class Inheritance
  • java.lang.Object
  • org.keycloak.common.crypto.UserIdentityExtractorProvider.PatternMatcher
All Implemented Interfaces
org.keycloak.common.crypto.UserIdentityExtractor

Field Summary

Modifier and TypeField and Description
private final Function<X509Certificate[], String>
private final String

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
public Object
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

_fback to summary
private final Function<X509Certificate[], String> _f
_patternback to summary
private final String _pattern

Constructor Detail

PatternMatcherback to summary
pack-priv PatternMatcher(String pattern, Function<X509Certificate[], String> valueToMatch)

Method Detail

extractUserIdentityback to summary
public Object extractUserIdentity(X509Certificate[] certs)

Implements org.keycloak.common.crypto.UserIdentityExtractor.extractUserIdentity.

Annotations
@Override
org.keycloak.common.crypto back to summary

public abstract Class UserIdentityExtractorProvider.SubjectAltNameExtractor

extends Object
implements UserIdentityExtractor
Class Inheritance
  • java.lang.Object
  • org.keycloak.common.crypto.UserIdentityExtractorProvider.SubjectAltNameExtractor
All Implemented Interfaces
org.keycloak.common.crypto.UserIdentityExtractor

Constructor Summary

AccessConstructor and Description
public

Method Summary

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

SubjectAltNameExtractorback to summary
public SubjectAltNameExtractor()
org.keycloak.common.crypto back to summary

public abstract Class UserIdentityExtractorProvider.X500NameRDNExtractor

extends Object
implements UserIdentityExtractor
Class Inheritance
  • java.lang.Object
  • org.keycloak.common.crypto.UserIdentityExtractorProvider.X500NameRDNExtractor
All Implemented Interfaces
org.keycloak.common.crypto.UserIdentityExtractor

Constructor Summary

AccessConstructor and Description
public

Method Summary

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

X500NameRDNExtractorback to summary
public X500NameRDNExtractor()