summaryrefslogtreecommitdiffstats
path: root/pki/base/common
Commit message (Collapse)AuthorAgeFilesLines
* Escape parameter values in search filter.Endi Sukma Dewata2012-03-142-5/+7
| | | | | | | | The REST interface was vulnerable to injection attack. This has been fixed by escaping the special characters in parameter values before using them in the search filter. Ticket #96
* Fixed IAttrSet.getElements() implementations.Endi Sukma Dewata2012-03-139-95/+23
| | | | | | | | This patch fixes incorrect implementation of getElement() in some subclasses of IAttrSet. The method is supposed return the attribute names as an enumeration of strings. Ticket #42
* Provide Custom PKI JNDI Realm.Jack Magne2012-03-124-1/+1400
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Provide a Realm that provides the following: 1. Allows SSL client certificate authentation upon protected URLs. For now we are protecting the new DRM Rest functions. 2. Allows simple PKI ACL checking like we have in the current server. This is accomplished with the help of a simple file that maps URLs to ACL resourceIDs and operations. 3. DRMRestClient now support SSL Client authentication to test the feature. How to test this: Install new KRA server, after installing build pki-core rpm. Uncomment "PKIJNDIRealm" settings in conf/server.xml Some customization will be needed for instance specific info. See the sample in server.xml. Uncomment the "Security Constraint" and "login-config" settings webapps/kra/WEB-INF/web.xml In running DRMTest.java in eclipse do the following: Change the arguments to support SSL Client auth such as: -h localhost -p 10443 -w secret -d ~/archive-test -s true -c "KRA Administrator of Instance pki-kra's SjcRedhat Domain ID" where the new flags are -s = true for SSL and -c = <client auth cert name> Export the KRA's admin/agent client auth cert from Firefox to a pk12 file. Import this cert into ~/archive-test by using "pk12util" utility. Run the DRMTest.java program in eclipse and observe the results. There should be a prompt for a client cert.
* Refactored NameValuePairs.Endi Sukma Dewata2012-03-1238-680/+464
| | | | | | | | | The NameValuePairs class has been modified to extend the Linked- HashMap which preserves the order of elements as in the original code. Some methods are renamed to match Java Map interface. The NameValuePair class is no longer needed and has been removed. Ticket #78
* Replaced daemon threads with executor service.Endi Sukma Dewata2012-03-125-123/+192
| | | | | | | | | | | | The certificate status update and retrieving modifications tasks have been modified to use the executor service. Unlike daemon threads, the service will allow existing task to exit gracefully before shutting down. An abandon operation is used terminate the persistent search used for retrieving modifications. Some methods have been moved to CertificateRepository class to simplify synchronizations. Ticket #73
* Refactored JobsScheduler.Endi Sukma Dewata2012-03-129-55/+51
| | | | | | | | | | | | | | The JobsScheduler has been modified to stop all jobs on shutdown. This is done by setting a flag in each job instead of stopping the job thread abruptly. Long running jobs should check this flag periodically and then exit gracefully. None of the existing jobs need to do this since they do not run very long. Other threads that run background services have been converted into daemons such that they will terminate automatically when the JVM exits. Ticket #73
* Fixes to cloning and security domain tables for client auth internaldb userAde Lee2012-03-096-202/+153
| | | | | | | | | | | | | | | | | | | | | The mechanism for getting an ldap connection to the internaldb was incorrect, both in the Security Domain Session Table and the DatabasePanel. As a result, connections to the internaldb failed for accessing the security domain session table and when trying to clone a master which connects to its database using client auth. The thread that handles reading the security domain session table is now only instantiated when running on a configured security domain master. Additionally, needed acls for the client auth certificate ldap user have been moved to manager.ldif. This includes acls to allow creation and management of replication agreements and replication users (now being created under ou=csusers, cn=config) Added logs to show when ldif import errors occur. Also made sure to write and remove master ldap password for use in replication. Ticket #5
* Fixed DRM REST interface to use BigInteger.Endi Sukma Dewata2012-03-0523-106/+389
| | | | | | | | The DRM REST interface previously uses strings for key ID and request ID. It has been modified to use KeyId and RequestId classes which can accept decimal or hex numbers and internally store it as BigInteger. Ticket #94
* Option to change default algorithmsAndrew Wnuk2012-02-291-0/+2
| | | | | | RSA should be default selection for transport, storage, and audit keys till ECC is fully implemented. Bug #787806.
* Removed hard-coded REST paths.Endi Sukma Dewata2012-02-292-6/+17
| | | | | | | | The KeyDAO and KeyRequestDAO have been changed to remove hard-coded paths and use annotation reflection to get the paths from the REST interface definitions. Ticket #95
* Removed dependency on OSUtil.Endi Sukma Dewata2012-02-292-16/+8
| | | | | | | The OSUtil is no longer used by the code. It has been removed from build scripts and tools. Ticket #90
* Removed OS subsystem.Endi Sukma Dewata2012-02-288-462/+56
| | | | | | | | | | The OS subsystem was previously used to get the PID and to handle shutdown signals using the OSUtil. It has been removed because the functionalities can be obtained without using native code. The PID will now be read from an external PID file created by the wrapper script. The shutdown signals will now be handled by shutdown hook. Ticket #90
* Replaced BtoA/AtoB with Apache codec.Endi Sukma Dewata2012-02-232-3/+10
| | | | | | | | The OSUtil's BtoA() and AtoB() have been replaced by Base64 codec from Apache Commons library. The codec is configured to use 64-byte line width as defined in RFC 1421. Ticket #90
* Consolidated BtoA/AtoB invocations.Endi Sukma Dewata2012-02-2335-56/+88
| | | | | | | | The OSUtil's BtoA() and AtoB() have been replaced with wrapper methods in com.netscape.cmsutil.util.Utils to simplify transition into Base64 codec from Apache Commons library. Ticket #90
* Renamed Utils to avoid conflicts.Endi Sukma Dewata2012-02-238-11/+11
| | | | | | | | | The Utils classes in com.netscape.cms.publish.publishers and com.netscape.cms.servlet.common packages have been renamed to PublisherUtils and ServletUtils to avoid conflicts with com.netscape.cmsutil.util.Utils. Ticket #90
* Add client auth user to default installAde Lee2012-02-236-16/+171
| | | | | | | | | | | | | | | | | | When a subsystem is configured, a user is created to facilitate communication between subsystems. This user is created on the security domain ca, and is has the subsystem certificate in its user record. This user will be reused as a user that can talk to the database using the subsystem certificate for client auth. To do this, this patch does the following: 1. If not the security domain master CA, adds this user to the subsystem, and adds the subsystem cert. 2. Adds the subsystem cert subject dn to the user's record in the seeAlso attribute 3. Adds acis for this user for the $basedn and for cn=config (for VLV searches) By default, this user and acls will be added when the system is configured. To actually use the user and client auth, more config steps are required. They will be doc'ed in https://fedorahosted.org/pki/ticket/5
* Sample ECC profilesAndrew Wnuk2012-02-221-1/+1
| | | | | | This patch provides two sample ECC certificate profiles. Bug: 223358.
* Removed unused variables (part 1).Endi Sukma Dewata2012-02-20114-763/+181
| | | | | | This patch brings down the warnings from 2917 to 2406. Ticket #103
* ECC encryption and signing profilesAndrew Wnuk2012-02-155-0/+378
| | | | | | This patch provides an option for certificate profiles to allow them to automatically create enrollment pages which are used to generate new signing and encryption certificate requests. Bug: 703608.
* Added generics (part 4).Endi Sukma Dewata2012-02-1478-314/+273
| | | | | | This patch brings down the warnings from 3427 to 2917. Ticket #2
* KRA symmetric key cmake support.Jack Magne2012-02-132-7/+6
| | | | | | Changes to make the cmake build of this feature work. Change to the .classpath to allow the DRMTest.java test client to run under Eclipse, by adding additional jar paths to allow the client to run.
* KRA changes for archiving and recovering symmetric keys and passphrases.Jack Magne2012-02-1315-23/+476
| | | | | | | | | | | | Ticket #66 and #68. Add ability to archive and recover symmetric keys and passphrases using rest interface. Enhanced test client to test out new functionality. Provided support to return recovered data either wrapped by symmetric key or wrapped in PBE password based encryption blob. DRM symmetric key support cleanup changes. Consists of suggested cleanup measures based on review comments.
* Added needed jar for ClientResponse annotaions to cmake buildAde Lee2012-02-081-1/+8
|
* Fix test client errorsAde Lee2012-02-085-4/+11
| | | | | | | Added ClientResponse annotation to SystemCertificateResource. Added Consumes annotation to KeyResource, KeyRequestResource Added checks for empty search results to test client, as well as stripping header, trailer from transport cert.
* Change RecoveryRequest fieldsAde Lee2012-02-081-9/+9
| | | | | | | | | | | When sending a passphrase in the recovery request, we need to wrap it in a session key and store it in sessionWrappedPassphrase. We also then wrap the session key in transWrappedSessionKey. The server needs to do PBE if the sessionWrappedPassphrase is present, and symkey based encryption otherwise. Also changed the DRM test to reflect these changes, and fixed some errors.
* New DRM proxy client and testsAde Lee2012-02-0812-503/+594
| | | | Added new interfaces for each Resource, and renamed old Resource service classes.
* Added generics (part 3).Endi Sukma Dewata2012-02-0653-358/+363
| | | | | | This patch brings down the warnings from 3992 to 3500. Ticket #2
* Change to admin servlet to allow passwords with colons.Ade Lee2012-02-051-2/+2
| | | | Contributed by Josh Roys.
* File signing hash fix.Andrew Wnuk2012-01-191-1/+1
| | | | | | This patch resolves issue of "Agent-Authenticated File Signing" enrollment altering some file hashes. Bug: 771768.
* Bug 769739 - CC: self test verifySystemCertByNickname: certain failure will ↵Christina Fu2012-01-191-8/+8
| | | | | | not cause server to shutdown as expected There are two issues: 1. The variable, r, returned by verifySystemCertByTag() gets overwritten by the next return value in a while loop. The problem affects both java subsystems and TPS. 2. In the TPS system, within a while loop that calls verifySystemCertByNickname(), one condition does a "continue" without advancing to the next token, causing an infinite loop under that condition. Adding a PL_strtok_r(NULL, ",", &lasts); call resolves the issue.
* Added generics (part 2).Endi Sukma Dewata2012-01-1897-548/+583
| | | | | | This patch brings down the warnings from 4648 to 3992. Ticket #2
* Added generics (part 1).Endi Sukma Dewata2012-01-18136-987/+1138
| | | | | | | This patch is based on Adam's patch. It brings down the warnings from 6139 to 4648. Ticket #2
* Added new REST interface files to cmake buildAde Lee2012-01-161-1/+25
|
* Enhanced new REST search interface for keys and key requestsAde Lee2012-01-167-47/+506
| | | | | | | | | | | | Defined parameters that can be searched for in key and keyrequest searches. Searches for KeyRequests and Keys will perform VLV searches if those searches are defined. The results will include links to next and previous pages in the results. Also added maxTime and maxResults parameters for regular searches. These will be operational unless they exceed server defined limits - which are enforced at the repo level. Modified link URL from "link" to "Link"
* Big numbers fix for CA and DRM.Jack Magne2012-01-1315-98/+98
| | | | | | | | | This patch resolves multiple issues related to use of big numbers on CA and DRM It also provides a fix for incomplete recovery requests causing null pointer exception. Bugs: 756133, 758505. Complete formatting changes for QueryRec.java.
* Added initial code for retrieving transport cert.Ade Lee2012-01-137-6/+221
| | | | | | | | | Resources now extend CMSResource. Addressed following review comments: * check for null pointers in SystemCertificateResource * move logic from CertificatData constructor to CMSServlet builder method * remove unused field uriInfo and replace hard-coded cache constant * fixed some formatting issues
* Initial skeleton code for drm resteasy interfaceAde Lee2012-01-1312-0/+1163
| | | | | | | Integrated files into current servlet structure. Allowed exceptions to bubble up to top level. Move bean initialization logic into DAO objects. Fixed "keyRequest" path to "keyrequest" in KeyRequestDAO
* Formatting - fix bad wrapsAde Lee2012-01-1117-225/+98
|
* Formatting (line wrap > 120 in commentsAde Lee2012-01-1199-240/+534
|
* Formatting - line wrap > 120 in codeAde Lee2012-01-11161-555/+1271
|
* Formatting (no line wrap in comments or code)Ade Lee2012-01-11935-42034/+40244
|
* typesafety ACL Impls Random type safety cleanups.Adam Young2012-01-046-25/+26
|
* typesafe returns on IDBSession for VirtualListAdam Young2012-01-043-43/+45
|
* type safety certserv cms and cmscoreAdam Young2012-01-0440-248/+269
| | | | Re-added files IPublshRuleSet and ILdapCertMapper
* Typesafety for certsrv.kraAdam Young2012-01-043-9/+9
|
* typesafety db and loggingAdam Young2012-01-0413-99/+102
|
* typesafety cron and jobschedulerAdam Young2012-01-044-23/+23
|
* typesafety certserv and cmscoreAdam Young2012-01-0415-40/+40
| | | | Using interface instead of implementing class
* type safety for certserv.baseAdam Young2011-12-2222-140/+139
| | | | more type safety
* type safety for certserv.authorizationAdam Young2011-12-227-56/+53
|