384 Commits

Author SHA1 Message Date
Peter Hamilton
d1b01b75f9 Merge pull request #223 from OpenKMIP/maint/update-gitignore
Updating .gitignore to ignore build directories
2016-12-02 14:30:58 -05:00
Peter Hamilton
cc3c224f54 Updating .gitignore to ignore build directories 2016-12-02 13:54:21 -05:00
Peter Hamilton
4ac272f3c1 Merge pull request #222 from OpenKMIP/maint/fix-bandit-error
Updating bandit usage with PyKMIP and removing bandit config
2016-12-02 13:51:44 -05:00
Peter Hamilton
dcbddd8b82 Updating bandit usage with PyKMIP and removing bandit config
This change updates how bandit is used with PyKMIP, removing the
need for a bandit configuration file and instead opting for the
default bandit functionality. bandit is applied across the entire
project structure except for the tests directory.
2016-12-02 10:39:38 -05:00
Peter Hamilton
243d5aa9c3 Merge pull request #220 from OpenKMIP/bug/fix-server-failure-on-bad-cert
Fixes premature server shutdown on receiving invalid certificate
2016-12-01 15:02:39 -05:00
Peter Hamilton
94aacc1897 Fixes premature server shutdown on receiving invalid certificate
This change fixes a bug with the server where the server would
prematurely shutdown upon receiving a client connection using an
invalid certificate. The server will now withstand bad client
connections. The impacted server unit tests have been updated to
reflect the bug fix.
2016-12-01 14:40:30 -05:00
Peter Hamilton
cba8757f63 Merge pull request #219 from OpenKMIP/bug/fix-server-config-override
Fixes configuration settings override by default script values
2016-12-01 12:34:36 -05:00
Peter Hamilton
38e7635fc7 Fixes configuration settings override by default script values
This change fixes a bug with parameter handling when invoking
the server's main routine. The default values provided for the
parameters would override any configuration file settings if
the main routine was used to run the server. To fix this, the
default values were removed, requiring the user to explicitly
specify parameter values if they want them to override the
configuration settings. The parameter doc strings have been
updated to match these changes.

Fixes #217
2016-12-01 11:44:43 -05:00
Peter Hamilton
5c50ec73fe Merge pull request #216 from OpenKMIP/feat/update-payload-factories
Updating payload factories to reflect new KMIP operations
2016-11-29 15:49:38 -05:00
Peter Hamilton
181b34b6cb Updating payload factories to reflect new KMIP operations
This change updates the payload factories, adding placeholder
support for operations added in KMIP 1.3. It also updates old
placeholders with now supported payloads. The corresponding
unit test suites have been updated to match the additions.
2016-11-29 15:42:05 -05:00
Peter Hamilton
fa48509c95 Merge pull request #215 from OpenKMIP/bug/fix-conf-policy-path
Updating the server to allow optional policy_path values
2016-11-28 14:03:26 -05:00
Peter Hamilton
381e072bb7 Updating the server to allow optional policy_path values
This change updates the server, updating how it processes config
values and allowing it to handle optional or ommitted policy_path
values. This fixes a bug where users could not leave the
policy_path config file unset, in addition to a bug that forced
users to use '/etc/pykmip/policies' as their policy directory.

Fixes #210
2016-11-28 13:49:19 -05:00
Peter Hamilton
023bb8fd04 Merge pull request #214 from OpenKMIP/feat/add-get-attributes-payloads
Adding payloads for the GetAttributes operation
2016-11-27 21:05:59 -05:00
Peter Hamilton
0b69a0ac17 Adding payloads for the GetAttributes operation
This change adds the request and response payloads needed for the
GetAttributes operation. Test cases included.
2016-11-27 12:33:33 -05:00
Peter Hamilton
ccf5c41e79 Merge pull request #213 from OpenKMIP/feat/update-attribute
Adding string utilites to the Attribute object
2016-11-27 12:30:34 -05:00
Peter Hamilton
b36c730f22 Adding string utilites to the Attribute object
This change adds str and repr utilities to the Attribute object. A
new test suite for Attribute object tests is included, however only
the tests for the string utilities are included with this patch.
The remaining Attribute tests will be implemented in a later patch.
2016-11-27 12:21:11 -05:00
Peter Hamilton
a97c9eb5ed Merge pull request #212 from OpenKMIP/feat/update-app-specific-info
Updating the ApplicationSpecificInformation attribute
2016-11-27 11:32:29 -05:00
Peter Hamilton
a55310368f Updating the ApplicationSpecificInformation attribute
This change adds some utility methods, including equality operators
and string methods, to the ApplicationSpecificInformation attribute.
Unit tests covering the changes are included.
2016-11-27 11:23:11 -05:00
Peter Hamilton
194412a17f Merge pull request #206 from OpenKMIP/maint/add-examples-dir
Adding an examples directory with conf and policy example files
2016-11-17 16:13:06 -05:00
Peter Hamilton
c907826614 Adding an examples directory with conf and policy example files
This change adds configuration and policy example files, to make
the setup and usage of the PyKMIP client and server easier for
users.
2016-11-17 15:56:27 -05:00
Peter Hamilton
8aa8803cf8 Merge pull request #207 from OpenKMIP/bug/fix-pep8-whitespace
Fixing minor pep8 whitespace error in test utilities
2016-11-17 15:55:55 -05:00
Peter Hamilton
23f6a05a54 Fixing minor pep8 whitespace error in test utilities 2016-11-17 15:09:21 -05:00
Peter Hamilton
22de2ef95d Merge pull request #203 from OpenKMIP/maint/add-support-for-python3.5
Adding support for Python 3.5
2016-11-14 09:15:38 -05:00
Peter Hamilton
f595206960 Merge pull request #189 from OpenKMIP/feat/add-activate-to-server
Adding server support for the Activate operation
2016-11-12 16:46:56 -05:00
Peter Hamilton
b7cc542d9a Adding server support for the Activate operation
This change adds support for the Activate operation to the server,
including additional server unit tests, a new IllegalOperation
exception, and updated state attribute support in Pie objects.

Fixes #186
2016-11-12 16:37:20 -05:00
Peter Hamilton
2a7c45e97a Merge pull request #201 from OpenKMIP/bug/fix-client-open-error-handling
Fixing potential undefined variable error in client open
2016-11-11 16:27:36 -05:00
Peter Hamilton
6dc522aa3f Adding support for Python 3.5 2016-11-11 16:12:39 -05:00
Peter Hamilton
fce4be6179 Merge pull request #202 from OpenKMIP/maint/update-gitignore
Updating .gitignore
2016-11-11 15:31:05 -05:00
Peter Hamilton
59ba0a3336 Updating .gitignore 2016-11-11 14:55:01 -05:00
Peter Hamilton
aae1577e3c Fixing potential undefined variable error in client open
This change reorganizes some of the error handling code in the
client open routine, preventing the generation of an undefined
variable error. The net effect of the client open routine is
unchanged.

Fixes #199
2016-11-11 14:49:07 -05:00
Peter Hamilton
fbb456781e Merge pull request #200 from OpenKMIP/bug/fix-client-shutdown-error
Fixing a client socket shutdown bug when unconnected
2016-11-11 13:54:48 -05:00
Peter Hamilton
78f16e208a Fixing a client socket shutdown bug when unconnected
This change fixes a minor bug with the client shutdown routine,
where an error would get thrown when attempting to call shutdown
on an unconnected socket. This error is now caught and suppressed,
since the client is already shutting down. A new client unit test
is included to cover this change.
2016-11-11 12:51:39 -05:00
Peter Hamilton
a9264e612f Merge pull request #198 from OpenKMIP/feat/add-operation-policy-loading
Adding dynamic operation policy loading to the KMIP server
2016-11-10 10:48:59 -05:00
Peter Hamilton
4a3769e113 Adding dynamic operation policy loading to the KMIP server
This change adds support for dynamic operation policy loading.
The server config file now supports a 'policy_path' option that
points to a filesystem directory. Each file in the directory
should contain a JSON policy object. The KMIP server will scan
this directory and attempt to load all valid policies it finds.
The results of this process will be logged.
2016-11-10 10:39:16 -05:00
Peter Hamilton
799891ea6b Merge pull request #197 from OpenKMIP/feat/add-object-ownership
Adding operation policy enforcement to the KMIP server engine
2016-10-20 12:28:27 -04:00
Peter Hamilton
e0b0a5c7bf Adding operation policy enforcement to the KMIP server engine
This change adds enforcement of KMIP operation policies to the
server engine, specifically to the Get and Destroy operations.
Explicit object ownership is enforced as a result, with ownership
now a tracked internal server property of managed objects. Tests
for this new functionality are included.
2016-10-14 12:59:12 -04:00
Peter Hamilton
30e1a6c095 Merge pull request #196 from OpenKMIP/feat/enforce-server-opp-policy
Add server persistence for operation policy names
2016-10-14 11:09:10 -04:00
Peter Hamilton
4d6ba8a964 Add server persistence for operation policy names
This change updates the KMIP engine to process and persist the
value of the operation policy name attribute when creating or
registering new managed objects. Tests are included for these
changes.
2016-10-06 09:36:19 -04:00
Peter Hamilton
843c75d830 Merge pull request #195 from OpenKMIP/feat/add-opp-policy-name-to-client
Adding operation policy name support to the client
2016-10-06 09:35:29 -04:00
Peter Hamilton
894a7ac97d Adding operation policy name support to the client
This change adds operation policy name support to the pie client,
allowing you to optionally specify the policy name when creating
new symmetric keys and asymmetric key pairs. The operation policy
name can also be set on any pie object and will be sent with the
corresponding register request for new objects. Tests for these
additions are included.
2016-10-05 15:33:06 -04:00
Peter Hamilton
bcb5e7d948 Merge pull request #192 from OpenKMIP/feat/add-client-cert-auth
Adding session extraction of client identity from certificates
2016-10-04 14:55:14 -04:00
Peter Hamilton
38daeca59d Merge pull request #194 from OpenKMIP/bug/fix-cred-assumption-in-server
Fixing server failure on missing request credential
2016-10-03 13:50:59 -04:00
Peter Hamilton
91606db711 Fixing server failure on missing request credential
This change fixes a bug in the KMIP server engine where a missing
request credential would cause the session to prematurely
terminate. Credential handling may require session termination
for missing credentials, but that decision should be made by
credential processing not request processing.

Fixes #193
2016-10-03 11:10:42 -04:00
Peter Hamilton
8fd6349152 Adding session extraction of client identity from certificates
This change updates the KmipSession, allowing it to extract client
identity from the client certificate of a TLS connection. The
certificate subject common name is used as the client identity if
the certificate has client authentication set in the extended key
usage extension.

This change breaks backwards compatibility. If a client certificate
does not define a client identity, the session will reject it and
shutdown the connection. Any client certificates used to connect
with the software server in the past will need to be replaced with
certificates that define a suitable client identity.
2016-09-13 15:30:08 -04:00
Peter Hamilton
40919468a6 Merge pull request #191 from OpenKMIP/feat/add-operation-policies
Adding default KMIP operation policies
2016-09-13 15:02:08 -04:00
Peter Hamilton
765df8340a Adding default KMIP operation policies
This change adds enumerations and policy objects to support the
specification and enforcement of KMIP operation policies. A new
module, kmip.core.policy, is added to define the default policy
objects required by the KMIP specification.
2016-09-09 14:45:34 -04:00
Peter Hamilton
00be488134 Merge pull request #190 from OpenKMIP/feat/update-enums-to-1.2
Updating KMIP enumerations to support KMIP 1.2
2016-09-06 13:52:28 -04:00
Peter Hamilton
f122f19621 Updating KMIP enumerations to support KMIP 1.2
This change updates the set of supported enumerations to include
all enumerations included in KMIP 1.2. Existing enumerations are
updated where required.
2016-08-30 14:34:16 -04:00
Peter Hamilton
249fafb89b Merge pull request #188 from OpenKMIP/feat/add-state-attribute
Adding support for the State attribute
2016-08-27 17:50:41 -04:00
Peter Hamilton
65ad4c6111 Adding support for the State attribute
This change adds the State attribute, updating the attribute
factory to support creating it.
2016-08-27 17:13:47 -04:00