Releases: SSHcom/privx-sdk-go
v2.42.0
PrivX SDK v2.42.0
New Additions
- endpoints added for the new API Proxy feature
- endpoints added to
hoststorefor the new RDS Connections feature - added new and extended existing structs with new fields
Improvements
- fixed token.notAfter bug that prevented access token reuse, forcing re-auth on every API call
- access tokens now refresh correctly
- fixed incorrect cookie handling
v2.41.0
v2.40.1
v2.40.0
PrivX SDK v2.40.0 is now compatible with PrivX 40.
New Additions
No new endpoints have been added to PrivX 40.
Improvements
- Correct the example comments in
oauth/authclient.goandoauth/authcode.go - Add a comment for
UseConfigFile(), it will panic if it fails to read or parse the config file - Add the missing query parameters support for
GetTargetHostCredentials()
v2.39.0
PrivX SDK v2.39.0 is now compatible with PrivX 39.
New Additions
No new endpoints have been added to PrivX 39. Some structs have been updated to accommodate new features (see PrivX 39 release notes).
The following structs have been update:
HostSourceConnectionWorkflowSettings
v2.38.0
SDK Version 2.38.0 Release Notes
Version 2.38.0 marks the first SDK v2 release, introducing significant changes to unify API behavior across all services, simplify API calls, and streamline query parameter handling.
PrivX go SDK v2.38.0 is also now compatible with PrivX v38.
Please note that many of these changes are breaking changes, and backward compatibility is no longer guaranteed, which is why this is a v2 release.
Integrations done with SDK v1 need to be adapted to work correctly with SDK v2. This means you need to update your Go code by appending the major version number (/v2) to the module path in all imported package paths. Additionally, function calls must be updated to reflect changes in function names and signatures.
For more details, see the section "Breaking Changes in SDK v2".
Important Notes regarding the SDK v1 Support
- You can continue using SDK v1, but it will no longer receive updates.
- The last PrivX version fully supported by the SDK v1 is PrivX 37.
- Any new features (API additions or enhancements) will not be included in SDK v1.
- However, we will continue to fix critical bugs and address major API changes that affect v1.
We highly recommend upgrading to SDK v2 to take advantage of the latest features and improvements.
Breaking Changes in SDK v2
The most notable breaking changes have been made in service specific API packages:
Unified Function Naming Convention
- Function names have been changed and standardized across all services for consistency.
Function Signature Changes
- Query parameters have been removed from function signatures and replaced with a variadic opts parameter of type
type Option func(*url.Values). - Unified API response structure:
- Previously, some APIs returned a struct containing a
countfield, while others did not. - Now, all APIs returning multiple entries use the new
ResultSetstruct, which includesCountand the genericItemsfields.
- Previously, some APIs returned a struct containing a
Package Removals and Migrations
- The
configpackage has been removed. The endpoints inconfigwere duplicates and now part of theauthorizerpackage. - The
commonpackage has been replaced by theresponsepackage. TheKeyValueandServiceStatusstructs have been moved to this new package.
New Additions
The filters Package
The new filters package simplifies handling of query parameters by providing helper functions for commonly used parameters.
Example Usage
c.SearchSomething(&searchObject, filters.Paging(0, 5), filters.Sort("id", "ASC"))
c.SearchSomething(&searchObject, filters.Limit(50))You can also set custom query parameters:
c.SearchSomething(&searchObject, filters.SetCustomParams("customKey", "customValue"))We also introduced struct based query parameter handling, allowing you to define parameters using a struct with a url tag.
type ExampleParams struct {
Example bool `url:"example"`
}
q := ExampleParams{
Example: true,
}
c.SearchSomething(&searchObject, filters.SetStructParams(q))Predefined parameter structs are available in the model files of the respective service packages.
v1.37.0
Important Notice: Final Major Release of SDK Version 1
This will be the final major release of Go SDK V1.
Starting with the upcoming Version 2.38.0, the SDK will introduce significant changes, including breaking backward compatibility.
We will continue to provide critical bug fixes for Version 1, there will be no new features or support for PrivX versions greater than 37 in this version.
PrivX SDK v1.37.0
PrivX SDK v1.37.0 is now compatible with PrivX v37.
New API Endpoints
v1.36.0
Adding support for PrivX 36.0. Some models have new fields:
- ManagedAccount model: new SamAccountName and DisableRdpCertAuth properties.
- ManagedAccountCreateData, ManagedAccountChangeSet model: new DisableRdpCertAuth property.
- LocalUser model: new Attributes property and Attribute type.
Note: ensure that the values of these fields are not accidentally overwritten (e.g with zero values) when updating one of the mentioned resources.
Some notable changes in PrivX 36.0 (please refer to PrivX documentations for full details):
- Custom attributes can be assigned to local user.
- ManagedAccount SecurityIdentifier field can be modified (if needed).
- ManagedAccount SamAccountName can be specified.
- RDP certificate authentication can be disabled for a ManagedAccount via DisableRdpCertAuth flag.
The changes above are part of the support for RDP certificate authentication using strong mapping (SID extension). The SecurityIdentifier (SID) is scanned automatically if possible. Otherwise, it can be edited via custom attribute for local user or via SecurityIdentifier property for ManagedUser. Legacy Windows account format DOMAIN\username can be used in a host account configuration together with a target domain.
v1.35.1
Improvements
- The workflow creation/update endpoints in the
workflowpackage have been fixed by adding the missing attribute fields to both theWorkflowandRequeststructs - Missing attribute fields have been added to the
TrustedClientstruct in theuserstorepackage - We have added missing query parameters to the get all role members endpoint. Consequently, the function signature has been updated to accommodate these parameters
v1.35.0
Important Notice:
We want to inform users about upcoming changes that will break the backwards compatibility of the Go SDK. These changes will be introduced with the upcoming SDK version 2.x.x in the near future.
Please note that version 1.35.0 remains backwards compatible, so no immediate action is required. We will provide more detailed information as soon as SDK version 2.x.x is ready for release.
PrivX SDK v1.35.0
PrivX SDK v1.35.0 is now compatible with PrivX v35.
New API Endpoints
API endpoints for the new password management feature for Active Directory and Entra domains have been added to the SDK. For more information, please refer to the Release Notes and our API Documentations for detailed specifications.
Improvements
- We have added query parameters to the list all roles endpoint. Consequently, the function signature has been updated to accommodate these parameters
- Unnecessary third party packages have been removed