Class ClientAttributeCertificateResource
- java.lang.Object
-
- org.keycloak.services.resources.admin.ClientAttributeCertificateResource
-
public class ClientAttributeCertificateResource extends Object
- Version:
- $Revision: 1 $
- Author:
- Bill Burke
-
-
Field Summary
Fields Modifier and Type Field Description protected AdminEventBuilderadminEventprotected StringattributePrefixstatic StringCERTIFICATE_PEMprotected ClientModelclientstatic StringJSON_WEB_KEY_SETstatic StringPUBLIC_KEY_PEMprotected RealmModelrealmprotected KeycloakSessionsession
-
Constructor Summary
Constructors Constructor Description ClientAttributeCertificateResource(AdminPermissionEvaluator auth, ClientModel client, KeycloakSession session, String attributePrefix, AdminEventBuilder adminEvent)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CertificateRepresentationgenerate()Generate a new certificate with new key pairbyte[]generateAndGetKeystore(KeyStoreConfig config)Generate a new keypair and certificate, and get the private key file Generates a keypair and certificate and serves the private key in a specified keystore format.CertificateRepresentationgetKeyInfo()Get key infobyte[]getKeystore(KeyStoreConfig config)Get a keystore file for the client, containing private key and public certificateCertificateRepresentationuploadJks()Upload certificate and eventually private keyCertificateRepresentationuploadJksCertificate()Upload only certificate, not private key
-
-
-
Field Detail
-
CERTIFICATE_PEM
public static final String CERTIFICATE_PEM
- See Also:
- Constant Field Values
-
PUBLIC_KEY_PEM
public static final String PUBLIC_KEY_PEM
- See Also:
- Constant Field Values
-
JSON_WEB_KEY_SET
public static final String JSON_WEB_KEY_SET
- See Also:
- Constant Field Values
-
realm
protected final RealmModel realm
-
client
protected final ClientModel client
-
session
protected final KeycloakSession session
-
adminEvent
protected final AdminEventBuilder adminEvent
-
attributePrefix
protected final String attributePrefix
-
-
Constructor Detail
-
ClientAttributeCertificateResource
public ClientAttributeCertificateResource(AdminPermissionEvaluator auth, ClientModel client, KeycloakSession session, String attributePrefix, AdminEventBuilder adminEvent)
-
-
Method Detail
-
getKeyInfo
@GET @Produces("application/json") public CertificateRepresentation getKeyInfo()Get key info- Returns:
-
generate
@POST @Path("generate") @Produces("application/json") public CertificateRepresentation generate()Generate a new certificate with new key pair- Returns:
-
uploadJks
@POST @Path("upload") @Consumes("multipart/form-data") @Produces("application/json") public CertificateRepresentation uploadJks() throws IOExceptionUpload certificate and eventually private key- Parameters:
input-- Returns:
- Throws:
IOException
-
uploadJksCertificate
@POST @Path("upload-certificate") @Consumes("multipart/form-data") @Produces("application/json") public CertificateRepresentation uploadJksCertificate() throws IOExceptionUpload only certificate, not private key- Parameters:
input-- Returns:
- information extracted from uploaded certificate - not necessarily the new state of certificate on the server
- Throws:
IOException
-
getKeystore
@POST @Path("/download") @Produces("application/octet-stream") @Consumes("application/json") public byte[] getKeystore(KeyStoreConfig config)Get a keystore file for the client, containing private key and public certificate- Parameters:
config- Keystore configuration as JSON- Returns:
-
generateAndGetKeystore
@POST @Path("/generate-and-download") @Produces("application/octet-stream") @Consumes("application/json") public byte[] generateAndGetKeystore(KeyStoreConfig config)Generate a new keypair and certificate, and get the private key file Generates a keypair and certificate and serves the private key in a specified keystore format. Only generated public certificate is saved in Keycloak DB - the private key is not.- Parameters:
config- Keystore configuration as JSON- Returns:
-
-