Package com.strongdm.api
Class Client
java.lang.Object
com.strongdm.api.Client
Client communicates with the strongDM API.
-
Field Summary
Modifier and TypeFieldDescriptionprotected final AccessRequestEventsHistory
protected final AccessRequests
protected final AccessRequestsHistory
protected final AccountAttachments
protected final AccountAttachmentsHistory
protected final AccountGrants
protected final AccountGrantsHistory
protected final AccountPermissions
protected final AccountResources
protected final AccountResourcesHistory
protected final Accounts
protected final AccountsHistory
protected final Activities
protected final ApprovalWorkflowApprovers
protected final ApprovalWorkflowApproversHistory
protected final ApprovalWorkflows
protected final ApprovalWorkflowsHistory
protected final ApprovalWorkflowSteps
protected final ApprovalWorkflowStepsHistory
protected final ControlPanel
protected final HealthChecks
protected final IdentityAliases
protected final IdentityAliasesHistory
protected final IdentitySets
protected final IdentitySetsHistory
protected final Nodes
protected final NodesHistory
protected final OrganizationHistory
protected int
protected final PeeringGroupNodes
protected final PeeringGroupPeers
protected final PeeringGroupResources
protected final PeeringGroups
protected final Policies
protected final PoliciesHistory
protected final ProxyClusterKeys
protected final Queries
protected final RemoteIdentities
protected final RemoteIdentitiesHistory
protected final RemoteIdentityGroups
protected final RemoteIdentityGroupsHistory
protected final Replays
protected final Resources
protected final ResourcesHistory
protected final RoleResources
protected final RoleResourcesHistory
protected final Roles
protected final RolesHistory
protected final SecretStoreHealths
protected final SecretStores
protected final SecretStoresHistory
protected Date
protected final WorkflowApprovers
protected final WorkflowApproversHistory
protected final WorkflowAssignments
protected final WorkflowAssignmentsHistory
protected final WorkflowRoles
protected final WorkflowRolesHistory
protected final Workflows
protected final WorkflowsHistory
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionAccessRequestEventsHistory provides records of all changes to the state of an AccessRequest.AccessRequests are requests for access to a resource that may match a Workflow.AccessRequestsHistory provides records of all changes to the state of an AccessRequest.AccountAttachments assign an account to a role.AccountAttachmentsHistory records all changes to the state of an AccountAttachment.AccountGrants assign a resource directly to an account, giving the account the permission to connect to that resource.AccountGrantsHistory records all changes to the state of an AccountGrant.AccountPermissions records the granular permissions accounts have, allowing them to execute relevant commands via StrongDM's APIs.AccountResources enumerates the resources to which accounts have access.AccountResourcesHistory records all changes to the state of a AccountResource.accounts()
Accounts are users that have access to strongDM.AccountsHistory records all changes to the state of an Account.An Activity is a record of an action taken against a strongDM deployment, e.g.ApprovalWorkflowApprovers link approval workflow approvers to an ApprovalWorkflowStepApprovalWorkflowApproversHistory records all changes to the state of an ApprovalWorkflowApprover.ApprovalWorkflows are the mechanism by which requests for access can be viewed by authorized approvers and be approved or denied.ApprovalWorkflowsHistory records all changes to the state of an ApprovalWorkflow.ApprovalWorkflowSteps link approval workflow steps to an ApprovalWorkflowApprovalWorkflowStepsHistory records all changes to the state of an ApprovalWorkflowStep.boolean
close()
Attempts to close the underlying grpc connection and waits for ongoing calls to terminate.boolean
close
(long secs) Attempts to close the underlying grpc connection and waits for ongoing calls to terminate.boolean
Attempts to close the underlying grpc connection and waits for ongoing calls to terminate.ControlPanel contains all administrative controls.protected io.grpc.CallCredentials
getCallCredentials
(String methodName, com.google.protobuf.Message req) HealthChecks lists the last healthcheck between each node and resource.IdentityAliases assign an alias to an account within an IdentitySet.IdentityAliasesHistory records all changes to the state of a IdentityAlias.A IdentitySet is a named grouping of Identity Aliases for Accounts.IdentitySetsHistory records all changes to the state of a IdentitySet.void
jitterSleep
(int iter) nodes()
Nodes make up the strongDM network, and allow your users to connect securely to your resources.NodesHistory records all changes to the state of a Node.OrganizationHistory records all changes to the state of an Organization.PeeringGroupNodes provides the building blocks necessary to obtain attach a node to a peering group.PeeringGroupPeers provides the building blocks necessary to link two peering groups.PeeringGroupResources provides the building blocks necessary to obtain attach a resource to a peering group.PeeringGroups provides the building blocks necessary to obtain explicit network topology and routing.policies()
Policies are the collection of one or more statements that enforce fine-grained access control for the users of an organization.PoliciesHistory records all changes to the state of a Policy.Proxy Cluster Keys are authentication keys for all proxies within a cluster.queries()
A Query is a record of a single client request to a resource, such as a SQL query.Deprecated.Deprecated.Deprecated.Deprecated.replays()
A Replay captures the data transferred over a long-running SSH, RDP, or Kubernetes interactive session (otherwise referred to as a query).Resources are databases, servers, clusters, websites, or clouds that strongDM delegates access to.ResourcesHistory records all changes to the state of a Resource.RoleResources enumerates the resources to which roles have access.RoleResourcesHistory records all changes to the state of a RoleResource.roles()
A Role has a list of access rules which determine which Resources the members of the Role have access to.RolesHistory records all changes to the state of a Role.SecretStoreHealths exposes health states for secret stores.SecretStores are servers where resource secrets (passwords, keys) are stored.SecretStoresHistory records all changes to the state of a SecretStore.boolean
shouldRetry
(int iter, Exception e) snapshotAt
(Date date) WorkflowApprovers is an account or a role with the ability to approve requests bound to a workflow.WorkflowApproversHistory provides records of all changes to the state of a WorkflowApprover.WorkflowAssignments links a Resource to a Workflow.WorkflowAssignmentsHistory provides records of all changes to the state of a WorkflowAssignment.WorkflowRole links a role to a workflow.WorkflowRolesHistory provides records of all changes to the state of a WorkflowRoleWorkflows are the collection of rules that define the resources to which access can be requested, the users that can request that access, and the mechanism for approving those requests which can either be automatic approval or a set of users authorized to approve the requests.WorkflowsHistory provides records of all changes to the state of a Workflow.
-
Field Details
-
pageLimit
protected int pageLimit -
snapshotDate
-
accessRequests
-
accessRequestEventsHistory
-
accessRequestsHistory
-
accountAttachments
-
accountAttachmentsHistory
-
accountGrants
-
accountGrantsHistory
-
accountPermissions
-
accountResources
-
accountResourcesHistory
-
accounts
-
accountsHistory
-
activities
-
approvalWorkflowApprovers
-
approvalWorkflowApproversHistory
-
approvalWorkflowSteps
-
approvalWorkflowStepsHistory
-
approvalWorkflows
-
approvalWorkflowsHistory
-
controlPanel
-
healthChecks
-
identityAliases
-
identityAliasesHistory
-
identitySets
-
identitySetsHistory
-
nodes
-
nodesHistory
-
organizationHistory
-
peeringGroupNodes
-
peeringGroupPeers
-
peeringGroupResources
-
peeringGroups
-
policies
-
policiesHistory
-
proxyClusterKeys
-
queries
-
remoteIdentities
-
remoteIdentitiesHistory
-
remoteIdentityGroups
-
remoteIdentityGroupsHistory
-
replays
-
resources
-
resourcesHistory
-
roleResources
-
roleResourcesHistory
-
roles
-
rolesHistory
-
secretStores
-
secretStoreHealths
-
secretStoresHistory
-
workflowApprovers
-
workflowApproversHistory
-
workflowAssignments
-
workflowAssignmentsHistory
-
workflowRoles
-
workflowRolesHistory
-
workflows
-
workflowsHistory
-
testOptions
-
-
Constructor Details
-
Client
Creates a new strongDM API client.- Throws:
RpcException
-
Client
Creates a new strongDM API client with extra options.- Throws:
RpcException
-
-
Method Details
-
accessRequests
AccessRequests are requests for access to a resource that may match a Workflow. -
accessRequestEventsHistory
AccessRequestEventsHistory provides records of all changes to the state of an AccessRequest. -
accessRequestsHistory
AccessRequestsHistory provides records of all changes to the state of an AccessRequest. -
accountAttachments
AccountAttachments assign an account to a role. -
accountAttachmentsHistory
AccountAttachmentsHistory records all changes to the state of an AccountAttachment. -
accountGrants
AccountGrants assign a resource directly to an account, giving the account the permission to connect to that resource. -
accountGrantsHistory
AccountGrantsHistory records all changes to the state of an AccountGrant. -
accountPermissions
AccountPermissions records the granular permissions accounts have, allowing them to execute relevant commands via StrongDM's APIs. -
accountResources
AccountResources enumerates the resources to which accounts have access. The AccountResources service is read-only. -
accountResourcesHistory
AccountResourcesHistory records all changes to the state of a AccountResource. -
accounts
Accounts are users that have access to strongDM. There are two types of accounts: 1. **Users:** humans who are authenticated through username and password or SSO. 2. **Service Accounts:** machines that are authenticated using a service token. 3. **Tokens** are access keys with permissions that can be used for authentication. -
accountsHistory
AccountsHistory records all changes to the state of an Account. -
activities
An Activity is a record of an action taken against a strongDM deployment, e.g. a user creation, resource deletion, sso configuration change, etc. The Activities service is read-only. -
approvalWorkflowApprovers
ApprovalWorkflowApprovers link approval workflow approvers to an ApprovalWorkflowStep -
approvalWorkflowApproversHistory
ApprovalWorkflowApproversHistory records all changes to the state of an ApprovalWorkflowApprover. -
approvalWorkflowSteps
ApprovalWorkflowSteps link approval workflow steps to an ApprovalWorkflow -
approvalWorkflowStepsHistory
ApprovalWorkflowStepsHistory records all changes to the state of an ApprovalWorkflowStep. -
approvalWorkflows
ApprovalWorkflows are the mechanism by which requests for access can be viewed by authorized approvers and be approved or denied. -
approvalWorkflowsHistory
ApprovalWorkflowsHistory records all changes to the state of an ApprovalWorkflow. -
controlPanel
ControlPanel contains all administrative controls. -
healthChecks
HealthChecks lists the last healthcheck between each node and resource. Note the unconventional capitalization here is to prevent having a collision with GRPC -
identityAliases
IdentityAliases assign an alias to an account within an IdentitySet. The alias is used as the username when connecting to a identity supported resource. -
identityAliasesHistory
IdentityAliasesHistory records all changes to the state of a IdentityAlias. -
identitySets
A IdentitySet is a named grouping of Identity Aliases for Accounts. An Account's relationship to a IdentitySet is defined via IdentityAlias objects. -
identitySetsHistory
IdentitySetsHistory records all changes to the state of a IdentitySet. -
nodes
Nodes make up the strongDM network, and allow your users to connect securely to your resources. There are two types of nodes: - **Gateways** are the entry points into network. They listen for connection from the strongDM client, and provide access to databases and servers. - **Relays** are used to extend the strongDM network into segmented subnets. They provide access to databases and servers but do not listen for incoming connections. -
nodesHistory
NodesHistory records all changes to the state of a Node. -
organizationHistory
OrganizationHistory records all changes to the state of an Organization. -
peeringGroupNodes
PeeringGroupNodes provides the building blocks necessary to obtain attach a node to a peering group. -
peeringGroupPeers
PeeringGroupPeers provides the building blocks necessary to link two peering groups. -
peeringGroupResources
PeeringGroupResources provides the building blocks necessary to obtain attach a resource to a peering group. -
peeringGroups
PeeringGroups provides the building blocks necessary to obtain explicit network topology and routing. -
policies
Policies are the collection of one or more statements that enforce fine-grained access control for the users of an organization. -
policiesHistory
PoliciesHistory records all changes to the state of a Policy. -
proxyClusterKeys
Proxy Cluster Keys are authentication keys for all proxies within a cluster. The proxies within a cluster share the same key. One cluster can have multiple keys in order to facilitate key rotation. -
queries
A Query is a record of a single client request to a resource, such as a SQL query. Long-running SSH, RDP, or Kubernetes interactive sessions also count as queries. The Queries service is read-only. -
remoteIdentities
Deprecated.RemoteIdentities assign a resource directly to an account, giving the account the permission to connect to that resource. -
remoteIdentitiesHistory
Deprecated.RemoteIdentitiesHistory records all changes to the state of a RemoteIdentity. -
remoteIdentityGroups
Deprecated.A RemoteIdentityGroup is a named grouping of Remote Identities for Accounts. An Account's relationship to a RemoteIdentityGroup is defined via RemoteIdentity objects. -
remoteIdentityGroupsHistory
Deprecated.RemoteIdentityGroupsHistory records all changes to the state of a RemoteIdentityGroup. -
replays
A Replay captures the data transferred over a long-running SSH, RDP, or Kubernetes interactive session (otherwise referred to as a query). The Replays service is read-only. -
resources
Resources are databases, servers, clusters, websites, or clouds that strongDM delegates access to. -
resourcesHistory
ResourcesHistory records all changes to the state of a Resource. -
roleResources
RoleResources enumerates the resources to which roles have access. The RoleResources service is read-only. -
roleResourcesHistory
RoleResourcesHistory records all changes to the state of a RoleResource. -
roles
A Role has a list of access rules which determine which Resources the members of the Role have access to. An Account can be a member of multiple Roles via AccountAttachments. -
rolesHistory
RolesHistory records all changes to the state of a Role. -
secretStores
SecretStores are servers where resource secrets (passwords, keys) are stored. -
secretStoreHealths
SecretStoreHealths exposes health states for secret stores. -
secretStoresHistory
SecretStoresHistory records all changes to the state of a SecretStore. -
workflowApprovers
WorkflowApprovers is an account or a role with the ability to approve requests bound to a workflow. -
workflowApproversHistory
WorkflowApproversHistory provides records of all changes to the state of a WorkflowApprover. -
workflowAssignments
WorkflowAssignments links a Resource to a Workflow. The assigned resources are those that a user can request access to via the workflow. -
workflowAssignmentsHistory
WorkflowAssignmentsHistory provides records of all changes to the state of a WorkflowAssignment. -
workflowRoles
WorkflowRole links a role to a workflow. The linked roles indicate which roles a user must be a part of to request access to a resource via the workflow. -
workflowRolesHistory
WorkflowRolesHistory provides records of all changes to the state of a WorkflowRole -
workflows
Workflows are the collection of rules that define the resources to which access can be requested, the users that can request that access, and the mechanism for approving those requests which can either be automatic approval or a set of users authorized to approve the requests. -
workflowsHistory
WorkflowsHistory provides records of all changes to the state of a Workflow. -
snapshotAt
-
getCallCredentials
protected io.grpc.CallCredentials getCallCredentials(String methodName, com.google.protobuf.Message req) -
sign
-
close
Attempts to close the underlying grpc connection and waits for ongoing calls to terminate. It will return whether it succeeded before timing out. Can be called multiple times safely.- Throws:
InterruptedException
-
close
Attempts to close the underlying grpc connection and waits for ongoing calls to terminate. It will return whether it succeeded before timing out. Can be called multiple times safely.- Throws:
InterruptedException
-
close
Attempts to close the underlying grpc connection and waits for ongoing calls to terminate. It will return whether it succeeded before timing out. Can be called multiple times safely.- Throws:
InterruptedException
-
jitterSleep
public void jitterSleep(int iter) -
shouldRetry
-