ark-sdk-python 2.0.9__py3-none-any.whl → 2.0.13__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
ark_sdk_python/ark.py CHANGED
@@ -17,7 +17,7 @@ from ark_sdk_python.actions import ArkAction, ArkCacheAction, ArkConfigureAction
17
17
 
18
18
  urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
19
19
 
20
- __version__ = '2.0.9'
20
+ __version__ = '2.0.13'
21
21
 
22
22
 
23
23
  def main():
ark_sdk_python/ark_api.py CHANGED
@@ -152,6 +152,18 @@ class ArkAPI:
152
152
 
153
153
  return cast(ArkSIAAccessService, self.service(ArkSIAAccessService))
154
154
 
155
+ @property
156
+ def sia_ssh_ca(self) -> "ArkSIASSHCAService":
157
+ """
158
+ Returns the SIA SSH CA service if the appropriate authenticators were given
159
+
160
+ Returns:
161
+ ArkSIASSHCAService: _description_
162
+ """
163
+ from ark_sdk_python.services.sia.ssh_ca import ArkSIASSHCAService
164
+
165
+ return cast(ArkSIASSHCAService, self.service(ArkSIASSHCAService))
166
+
155
167
  @property
156
168
  def sia_workspaces_db(self) -> "ArkSIADBWorkspaceService":
157
169
  """
@@ -126,13 +126,16 @@ class ArkISPAuth(ArkAuth):
126
126
  found_env = list(filter(lambda e: ROOT_DOMAIN[e] in identity.identity_url, ROOT_DOMAIN.keys()))
127
127
  if found_env:
128
128
  env = found_env[0]
129
+ expires_in = identity.session_exp
130
+ if not expires_in:
131
+ expires_in = datetime.now() + timedelta(hours=4)
129
132
  return ArkToken(
130
133
  token=identity.session_token,
131
134
  username=auth_profile.username,
132
135
  endpoint=identity.identity_url,
133
136
  token_type=ArkTokenType.JWT,
134
137
  auth_method=ArkAuthMethod.IdentityServiceUser,
135
- expires_in=datetime.now() + timedelta(hours=4),
138
+ expires_in=expires_in,
136
139
  metadata={'env': env, 'cookies': codecs.encode(pickle.dumps(identity.session.cookies), 'base64').decode()},
137
140
  )
138
141
  except Exception as ex:
@@ -11,6 +11,7 @@ from requests.auth import HTTPBasicAuth
11
11
 
12
12
  from ark_sdk_python.auth.identity.ark_identity_fqdn_resolver import ArkIdentityFQDNResolver
13
13
  from ark_sdk_python.common import ArkKeyring, ArkSystemConfig, get_logger
14
+ from ark_sdk_python.common.ark_jwt_utils import ArkJWTUtils
14
15
  from ark_sdk_python.common.env import DEPLOY_ENV, IDENTITY_ENV_URLS, AwsEnv
15
16
  from ark_sdk_python.models import ArkAuthException, ArkProfile
16
17
  from ark_sdk_python.models.auth import ArkAuthMethod, ArkToken, ArkTokenType
@@ -64,7 +65,8 @@ class ArkIdentityServiceUser:
64
65
 
65
66
  def __save_cache(self, profile: Optional[ArkProfile] = None) -> None:
66
67
  if self.__keyring and profile and self.__session_token:
67
- self.__session_exp = datetime.now() + timedelta(hours=4)
68
+ if not self.__session_exp:
69
+ self.__session_exp = datetime.now() + timedelta(hours=4)
68
70
  self.__keyring.save_token(
69
71
  profile,
70
72
  ArkToken(
@@ -142,7 +144,11 @@ class ArkIdentityServiceUser:
142
144
  raise ArkAuthException('Failed to parse id token from location header')
143
145
  self.__session_token = parsed_query['id_token'][0]
144
146
  self.__session.headers.update({'Authorization': f'Bearer {self.__session_token}', **ArkIdentityFQDNResolver.default_headers()})
145
- self.__session_exp = datetime.now() + timedelta(hours=4)
147
+ try:
148
+ decoded_token = ArkJWTUtils.get_unverified_claims(self.__session_token)
149
+ self.__session_exp = datetime.fromtimestamp(decoded_token['exp'])
150
+ except Exception:
151
+ self.__session_exp = datetime.now() + timedelta(hours=4)
146
152
  self.__logger.info(
147
153
  f'Created a service user session via endpoint [{self.__identity_url}] ' f'with user [{self.__username}] to platform'
148
154
  )
@@ -153,6 +159,10 @@ class ArkIdentityServiceUser:
153
159
  def session(self) -> Session:
154
160
  return self.__session
155
161
 
162
+ @property
163
+ def session_exp(self) -> Optional[datetime]:
164
+ return self.__session_exp
165
+
156
166
  @property
157
167
  def session_token(self) -> Optional[str]:
158
168
  return self.__session_token
@@ -48,6 +48,7 @@ from ark_sdk_python.models.services.sia.secrets.vm import (
48
48
  ArkSIAVMGetSecret,
49
49
  ArkSIAVMSecretsFilter,
50
50
  )
51
+ from ark_sdk_python.models.services.sia.ssh_ca.ark_sia_get_ssh_public_key import ArkSIAGetSSHPublicKey
51
52
  from ark_sdk_python.models.services.sia.sso import (
52
53
  ArkSIASSOGetShortLivedClientCertificate,
53
54
  ArkSIASSOGetShortLivedOracleWallet,
@@ -232,6 +233,17 @@ ACCESS_ACTION: Final[ArkServiceActionDefinition] = ArkServiceActionDefinition(
232
233
  action_name='access',
233
234
  schemas=ACCESS_ACTION_TO_SCHEMA_MAP,
234
235
  )
236
+ SSH_CA_ACTION_TO_SCHEMA_MAP: Final[Dict[str, Optional[Type[ArkModel]]]] = {
237
+ 'generate-new-ca': None,
238
+ 'deactivate-previous-ca': None,
239
+ 'reactivate-previous-ca': None,
240
+ 'public-key': ArkSIAGetSSHPublicKey,
241
+ 'public-key-script': ArkSIAGetSSHPublicKey,
242
+ }
243
+ SSH_CA_ACTION: Final[ArkServiceActionDefinition] = ArkServiceActionDefinition(
244
+ action_name='ssh-ca',
245
+ schemas=SSH_CA_ACTION_TO_SCHEMA_MAP,
246
+ )
235
247
  SIA_ACTIONS: Final[ArkServiceActionDefinition] = ArkServiceActionDefinition(
236
248
  action_name='sia',
237
249
  subactions=[
@@ -243,5 +255,6 @@ SIA_ACTIONS: Final[ArkServiceActionDefinition] = ArkServiceActionDefinition(
243
255
  CERTIFICATES_ACTION,
244
256
  K8S_ACTION,
245
257
  ACCESS_ACTION,
258
+ SSH_CA_ACTION,
246
259
  ],
247
260
  )
@@ -14,7 +14,7 @@ class ArkPCloudBaseSafe(ArkCamelizedModel):
14
14
  safe_name: Optional[str] = Field(description='Name of the safe', default=None)
15
15
  description: Optional[str] = Field(description='Description about the safe', default=None)
16
16
  location: Optional[str] = Field(description='Location of the safe in the vault', default="\\")
17
- number_of_days_retention: Optional[str] = Field(description='Number of retention days on the safe objects', default=0)
17
+ number_of_days_retention: Optional[int] = Field(description='Number of retention days on the safe objects', default=0)
18
18
  number_of_versions_retention: Optional[int] = Field(description='Number of retention versions on the safe objects', default=None)
19
19
  auto_purge_enabled: Optional[bool] = Field(description='Whether auto purge is enabled on the safe', default=False)
20
20
  olac_enabled: Optional[bool] = Field(description='Whether object level access control is enabled', default=False)
@@ -56,7 +56,7 @@ class ArkPCloudSafeMember(ArkCamelizedModel):
56
56
  member_name: str = Field(description='Name of the member of the safe')
57
57
  member_type: ArkPCloudSafeMemberType = Field(description='Type of the member of the safe')
58
58
  membership_expiration_date: Optional[int] = Field(description='Expiration date of the member on the safe')
59
- is_expired_membership_enabled: Optional[bool] = Field(description='Whether expired membership is enabled or not')
59
+ is_expired_membership_enable: Optional[bool] = Field(description='Whether expired membership is enabled or not')
60
60
  is_predefined_user: bool = Field(description='Whether this is a predefined user or not')
61
61
  is_read_only: bool = Field(description='Whether this member is read only')
62
62
  permissions: ArkPCloudSafeMemberPermissions = Field(description='Permissions of the safe member')
@@ -0,0 +1,5 @@
1
+ from ark_sdk_python.models.services.sia.ssh_ca.ark_sia_get_ssh_public_key import ArkSIAGetSSHPublicKey
2
+
3
+ __all__ = [
4
+ 'ArkSIAGetSSHPublicKey',
5
+ ]
@@ -0,0 +1,9 @@
1
+ from typing import Optional
2
+
3
+ from pydantic import Field
4
+
5
+ from ark_sdk_python.models import ArkModel
6
+
7
+
8
+ class ArkSIAGetSSHPublicKey(ArkModel):
9
+ output_file: Optional[str] = Field(default=None, description='Save output to file')
@@ -1,3 +1,5 @@
1
+ from typing import Literal
2
+
1
3
  from pydantic import Field
2
4
 
3
5
  from ark_sdk_python.models import ArkModel
@@ -5,3 +7,4 @@ from ark_sdk_python.models import ArkModel
5
7
 
6
8
  class ArkSIASSOGetShortLivedPassword(ArkModel):
7
9
  allow_caching: bool = Field(description='Allow short lived token caching', default=False)
10
+ service: Literal['DPA-DB', 'DPA-RDP'] = Field(description='Which service to get the token info for', default='DPA-DB')
@@ -7,6 +7,7 @@ from ark_sdk_python.services.sia.policies.db import ArkSIADBPoliciesService
7
7
  from ark_sdk_python.services.sia.policies.vm import ArkSIAVMPoliciesService
8
8
  from ark_sdk_python.services.sia.secrets.db import ArkSIADBSecretsService
9
9
  from ark_sdk_python.services.sia.secrets.vm import ArkSIAVMSecretsService
10
+ from ark_sdk_python.services.sia.ssh_ca import ArkSIASSHCAService
10
11
  from ark_sdk_python.services.sia.sso import ArkSIASSOService
11
12
  from ark_sdk_python.services.sia.workspaces.db import ArkSIADBWorkspaceService
12
13
  from ark_sdk_python.services.sia.workspaces.targetsets import ArkSIATargetSetsWorkspaceService
@@ -25,6 +26,7 @@ class ArkSIAAPI:
25
26
  self.__certificates_service = ArkSIACertificatesService(isp_auth)
26
27
  self.__k8s_service = ArkSIAK8SService(isp_auth)
27
28
  self.__access_service = ArkSIAAccessService(isp_auth)
29
+ self.__ssh_ca_service = ArkSIASSHCAService(isp_auth)
28
30
 
29
31
  @property
30
32
  def workspace_db(self) -> ArkSIADBWorkspaceService:
@@ -135,3 +137,13 @@ class ArkSIAAPI:
135
137
  ArkSIAK8SService: _description_
136
138
  """
137
139
  return self.__k8s_service
140
+
141
+ @property
142
+ def ssh_ca(self) -> ArkSIASSHCAService:
143
+ """
144
+ Getter for the SSH CA service
145
+
146
+ Returns:
147
+ ArkDPASSHCAService: _description_
148
+ """
149
+ return self.__ssh_ca_service
@@ -0,0 +1,3 @@
1
+ from ark_sdk_python.services.sia.ssh_ca.ark_sia_ssh_ca_service import ArkSIASSHCAService
2
+
3
+ __all__ = ['ArkSIASSHCAService']
@@ -0,0 +1,131 @@
1
+ import os
2
+ from http import HTTPStatus
3
+ from typing import Final
4
+
5
+ from overrides import overrides
6
+ from requests import Response
7
+
8
+ from ark_sdk_python.auth.ark_isp_auth import ArkISPAuth
9
+ from ark_sdk_python.common.isp import ArkISPServiceClient
10
+ from ark_sdk_python.models import ArkServiceException
11
+ from ark_sdk_python.models.services import ArkServiceConfig
12
+ from ark_sdk_python.models.services.sia.ssh_ca import ArkSIAGetSSHPublicKey
13
+ from ark_sdk_python.services.ark_service import ArkService
14
+
15
+ SERVICE_CONFIG: Final[ArkServiceConfig] = ArkServiceConfig(
16
+ service_name='sia-ssh-ca', required_authenticator_names=['isp'], optional_authenticator_names=[]
17
+ )
18
+
19
+ # SSH CA Key Rotation
20
+ GENERATE_NEW_CA_KEY_API: Final[str] = 'api/public-keys/rotation/generate-new'
21
+ DEACTIVATE_PREVIOUS_CA_KEY_API: Final[str] = 'api/public-keys/rotation/deactivate-previous'
22
+ REACTIVATE_PREVIOUS_CA_KEY_API: Final[str] = 'api/public-keys/rotation/reactivate-previous'
23
+
24
+ PUBLIC_KEYS_API: Final[str] = 'api/public-keys'
25
+ PUBLIC_KEYS_SCRIPT_API: Final[str] = 'api/public-keys/scripts'
26
+
27
+
28
+ class ArkSIASSHCAService(ArkService):
29
+ def __init__(self, isp_auth: ArkISPAuth) -> None:
30
+ super().__init__(isp_auth)
31
+ self.__isp_auth = isp_auth
32
+ self.__client: ArkISPServiceClient = ArkISPServiceClient.from_isp_auth(
33
+ isp_auth=self.__isp_auth,
34
+ service_name='dpa',
35
+ refresh_connection_callback=self.__refresh_sia_auth,
36
+ )
37
+
38
+ def __refresh_sia_auth(self, client: ArkISPServiceClient) -> None:
39
+ ArkISPServiceClient.refresh_client(client, self.__isp_auth)
40
+
41
+ def generate_new_ca(self) -> None:
42
+ """
43
+ Generate new SSH CA key version
44
+
45
+ Raises:
46
+ ArkServiceException: _description_
47
+ """
48
+ self._logger.info('Generate new CA key version')
49
+ resp: Response = self.__client.post(GENERATE_NEW_CA_KEY_API)
50
+ if resp.status_code != HTTPStatus.CREATED:
51
+ raise ArkServiceException(f'Failed to generate new CA key [{resp.text}] - [{resp.status_code}]')
52
+
53
+ def deactivate_previous_ca(self) -> None:
54
+ """
55
+ Deactivate previous SSH CA key version
56
+
57
+ Raises:
58
+ ArkServiceException: _description_
59
+ """
60
+ self._logger.info('Deactivate previous CA key version')
61
+ resp: Response = self.__client.post(DEACTIVATE_PREVIOUS_CA_KEY_API)
62
+ if resp.status_code != HTTPStatus.OK:
63
+ raise ArkServiceException(f'Failed to deactivate previous CA key [{resp.text}] - [{resp.status_code}]')
64
+
65
+ def reactivate_previous_ca(self) -> None:
66
+ """
67
+ Reactivate previous SSH CA key version
68
+
69
+ Raises:
70
+ ArkServiceException: _description_
71
+ """
72
+ self._logger.info('Reactivate previous CA key version')
73
+ resp: Response = self.__client.post(REACTIVATE_PREVIOUS_CA_KEY_API)
74
+ if resp.status_code != HTTPStatus.OK:
75
+ raise ArkServiceException(f'Failed to reactivate previous CA key [{resp.text}] - [{resp.status_code}]')
76
+
77
+ def public_key(self, get_public_key: ArkSIAGetSSHPublicKey) -> str:
78
+ """
79
+ Retrieves the public key used for SIA SSH connections trust with customer env
80
+
81
+ Args:
82
+ get_public_key (ArkSIAGetSSHPublicKey): _description_
83
+
84
+ Raises:
85
+ ArkNotSupportedException: _description_
86
+ ArkServiceException: _description_
87
+
88
+ Returns:
89
+ str
90
+ """
91
+ self._logger.info('Getting public key')
92
+ resp: Response = self.__client.get(PUBLIC_KEYS_API)
93
+ if resp.status_code == HTTPStatus.OK:
94
+ if get_public_key.output_file:
95
+ os.makedirs(os.path.dirname(get_public_key.output_file), exist_ok=True)
96
+ with open(get_public_key.output_file, 'w', encoding='utf-8') as f:
97
+ f.write(resp.text)
98
+ return resp.text
99
+ raise ArkServiceException(f'Failed to get public key [{resp.text}] - [{resp.status_code}]')
100
+
101
+ def public_key_script(self, get_public_key: ArkSIAGetSSHPublicKey) -> str:
102
+ """
103
+ Retrieves the public key script used for SIA SSH connections trust with customer env
104
+ The script can be run to install the public key in needed ssh configuration files
105
+
106
+ Args:
107
+ get_public_key (ArkSIAGetSSHPublicKey): _description_
108
+
109
+ Raises:
110
+ ArkNotSupportedException: _description_
111
+ ArkServiceException: _description_
112
+
113
+ Returns:
114
+ str
115
+ """
116
+ self._logger.info('Getting public key script')
117
+ resp: Response = self.__client.get(
118
+ PUBLIC_KEYS_SCRIPT_API,
119
+ )
120
+ if resp.status_code == HTTPStatus.OK:
121
+ if get_public_key.output_file:
122
+ os.makedirs(os.path.dirname(get_public_key.output_file), exist_ok=True)
123
+ with open(get_public_key.output_file, 'w', encoding='utf-8') as f:
124
+ f.write(resp.text)
125
+ return resp.text
126
+ raise ArkServiceException(f'Failed to get public key script [{resp.text}] - [{resp.status_code}]')
127
+
128
+ @staticmethod
129
+ @overrides
130
+ def service_config() -> ArkServiceConfig:
131
+ return SERVICE_CONFIG
@@ -187,7 +187,7 @@ class ArkSIASSOService(ArkService):
187
187
  ACQUIRE_SSO_TOKEN_URL,
188
188
  json={
189
189
  'token_type': 'password',
190
- 'service': 'DPA-DB',
190
+ 'service': get_short_lived_password.service,
191
191
  },
192
192
  )
193
193
  if response.status_code != HTTPStatus.CREATED:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: ark-sdk-python
3
- Version: 2.0.9
3
+ Version: 2.0.13
4
4
  Summary: Official Ark SDK / CLI for CyberArk Identity Security Platform
5
5
  License: Apache-2.0
6
6
  Author: CyberArk
@@ -86,6 +86,7 @@ CyberArk's Official SDK and CLI for different services operations
86
86
  - [x] SIA K8S Service
87
87
  - [x] SIA DB Service
88
88
  - [x] SIA Access Service
89
+ - [x] SIA SSH CA Service
89
90
  - [x] Session Monitoring Service
90
91
  - [x] Identity Users Service
91
92
  - [x] Identity Roles Service
@@ -272,8 +273,9 @@ The following services and commands are supported:
272
273
  - <b>certificates</b> - SIA Certificates Management
273
274
  - <b>db</b> - SIA DB Enduser Operations
274
275
  - <b>sso</b> - SIA SSO Enduser Operations
275
- - <b>k8s</b> - SIA kubernetes service
276
- - <b>access</b> - SIA access service
276
+ - <b>k8s</b> - SIA Kubernetes Service
277
+ - <b>access</b> - SIA Access Service
278
+ - <b>ssh-ca</b> - SIA SSH CA Service
277
279
  - <b>sm</b> - Session Monitoring Service
278
280
  - <b>identity</b> - Identity Service
279
281
  - <b>users</b> - Identity Users Management
@@ -358,6 +360,11 @@ Generate a short lived SSO password for databases connection
358
360
  ark exec sia sso short-lived-password
359
361
  ```
360
362
 
363
+ Generate a short lived SSO password for RDP connection
364
+ ```shell
365
+ ark exec sia sso short-lived-password --service DPA-RDP
366
+ ```
367
+
361
368
  Generate a short lived SSO oracle wallet for oracle database connection
362
369
  ```shell
363
370
  ark exec sia sso short-lived-oracle-wallet --folder ~/wallet
@@ -373,6 +380,31 @@ Generate kubectl config file and save on specific path
373
380
  ark exec sia k8s generate-kubeconfig --folder=/Users/My.User/.kube
374
381
  ```
375
382
 
383
+ Generate new SSH CA Key version
384
+ ```shell
385
+ ark exec sia ssh-ca generate-new-ca
386
+ ```
387
+
388
+ Deactivate previous SSH CA Key version
389
+ ```shell
390
+ ark exec sia ssh-ca deactivate-previous-ca
391
+ ```
392
+
393
+ Reactivate previous SSH CA Key version
394
+ ```shell
395
+ ark exec sia ssh-ca reactivate-previous-ca
396
+ ```
397
+
398
+ Get SSH CA public key
399
+ ```shell
400
+ ark exec sia ssh-ca public-key
401
+ ```
402
+
403
+ Get SSH CA public key script
404
+ ```shell
405
+ ark exec sia ssh-ca public-key-script
406
+ ```
407
+
376
408
  Create a PCloud Safe
377
409
  ```shell
378
410
  ark exec pcloud safes add-safe --safe-name=safe
@@ -10,15 +10,15 @@ ark_sdk_python/actions/ark_service_exec_action.py,sha256=IHIm9oISRThOD8WNJe4oJX-
10
10
  ark_sdk_python/args/__init__.py,sha256=mCb4UrIRL4u58QyUbqqH2xAU0VN91pxjK5sa_UwCM_k,279
11
11
  ark_sdk_python/args/ark_args_formatter.py,sha256=-Rs_rGMIr1bprD1SfYlMsLoSOFgr_RFrRdREvbmPU6k,9204
12
12
  ark_sdk_python/args/ark_pydantic_argparse.py,sha256=uupNLnUmO5LrTrRZsBv7qRKgDsx4GaJMwOUh1TCc1-w,40083
13
- ark_sdk_python/ark.py,sha256=u4gcbxkgYaMl2t9dMDUQhg54eQtaF-KXTHNyqlU4Za0,1280
14
- ark_sdk_python/ark_api.py,sha256=qEB2j-xf8kiSdAvTXrvEdqGDQ-l1aoEvktxnq7BYNRI,12486
13
+ ark_sdk_python/ark.py,sha256=QanTa_Jmu1p943LtvRyFs1_H1fTgo2W-ncOtgvD2LRQ,1281
14
+ ark_sdk_python/ark_api.py,sha256=dLq3wS9jVabRqJHuUSLHoFz7MT4qnhlKAB3g2CNW0ZU,12872
15
15
  ark_sdk_python/auth/__init__.py,sha256=1l29Rf3VhwmV8z3YROiQVcgrZYSeeCqVN4zna77tnlk,620
16
16
  ark_sdk_python/auth/ark_auth.py,sha256=2fPlABM3AwWmb1h0lQPQAz93u1ZluYKv7axlfg4lq5Q,12988
17
- ark_sdk_python/auth/ark_isp_auth.py,sha256=Xuf8J7-VgN6a6oJOem5Rf8LzOI5NCNqUeT5Snb4VNK4,9572
17
+ ark_sdk_python/auth/ark_isp_auth.py,sha256=i8GIA5ldsT7loJSG898-XQQyg84M-1CJ0aUZa1zcLSc,9689
18
18
  ark_sdk_python/auth/identity/__init__.py,sha256=2Yyc_Rrx-D4PsSdg-ESl5pFFTpqu6LUPSc4ZW59oOP8,328
19
19
  ark_sdk_python/auth/identity/ark_identity.py,sha256=88_qZrF4JUxUyA6zcaRiGYQuZad9pHER9v8N6VP9rx4,32240
20
20
  ark_sdk_python/auth/identity/ark_identity_fqdn_resolver.py,sha256=utO8mWF7rqfYhcPUthBp7t4M9t-_u3v84CRJeCogoHc,4797
21
- ark_sdk_python/auth/identity/ark_identity_service_user.py,sha256=QlqUHGUh4iqmfqmV_YlXs6xNM_U-xz6VqW5hHZoxwSQ,7495
21
+ ark_sdk_python/auth/identity/ark_identity_service_user.py,sha256=pspgsG3dg5PE0XueVParz3CshTdtQJFLdsoMzrx2wfA,7901
22
22
  ark_sdk_python/cli_services/__init__.py,sha256=e9vdwqNiYqhZmK05Wgpz-Hf9SycK_3X-RS3CK9n2lIs,87
23
23
  ark_sdk_python/cli_services/ark_cli_api.py,sha256=-EDergicuk3lQc4OeKcqUEjlEIxkZJeS0FpC__WnFMo,912
24
24
  ark_sdk_python/cli_services/sia/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -67,7 +67,7 @@ ark_sdk_python/models/actions/services/__init__.py,sha256=ejK7YfySeAFzyUsIsJwRmv
67
67
  ark_sdk_python/models/actions/services/ark_cmgr_exec_action_consts.py,sha256=bIVlfhR5ulC0IKQl5VOZRSSQ9gk5Ei97MgKqXppRSAc,2029
68
68
  ark_sdk_python/models/actions/services/ark_identity_exec_action_consts.py,sha256=w7dRKTL666NZ1VWDJ02mcZRnBAGMBigTMl-XtCozxWY,4916
69
69
  ark_sdk_python/models/actions/services/ark_pcloud_exec_action_consts.py,sha256=uqgZjgXgmHHXkGm_l5vvRfxNWRAI97r1m0icxi2uMYE,6473
70
- ark_sdk_python/models/actions/services/ark_sia_exec_action_consts.py,sha256=lmPfqyoys-cmsdbI9FAiGjKISS7UDeiFrFsKzQS5JSI,10576
70
+ ark_sdk_python/models/actions/services/ark_sia_exec_action_consts.py,sha256=wYC5O11UwgzPVe5Xc_YLS_SzboRBed6z3O7GPWDLu7s,11118
71
71
  ark_sdk_python/models/actions/services/ark_sm_exec_action_consts.py,sha256=xMfQ79d7XKG5iZ5ItqNRN5lre5FWWN3VWXDGwVegfY4,1161
72
72
  ark_sdk_python/models/ark_exceptions.py,sha256=lW4-kyHvHiKJEThl1j50mffmNGbv-anUixXNLUpjJe4,562
73
73
  ark_sdk_python/models/ark_model.py,sha256=dMY_iOUDMe8-gx5RlHc7Chnuv9ZQI_yG9KwV21IJjQ8,3361
@@ -268,8 +268,8 @@ ark_sdk_python/models/services/pcloud/safes/ark_pcloud_get_safe.py,sha256=k0bgO0
268
268
  ark_sdk_python/models/services/pcloud/safes/ark_pcloud_get_safe_member.py,sha256=1pk5_zfjk1Hz_ADfiV2Yq0xqMFDMWq-k7vDcsoGygYw,258
269
269
  ark_sdk_python/models/services/pcloud/safes/ark_pcloud_get_safe_members_stats.py,sha256=hSoZ6NCs2cgXsp3k4KmbUhlcdV3QhC6kpRLQBir9Lpg,200
270
270
  ark_sdk_python/models/services/pcloud/safes/ark_pcloud_list_safe_members.py,sha256=1DwEnxGUC70IZ4xRa8W4YAa31wA-a7NshmFR9Si0dOQ,192
271
- ark_sdk_python/models/services/pcloud/safes/ark_pcloud_safe.py,sha256=VxzI5FBc93Hrj0pOYMg0yccvTd5TRuvhAmQAjUweQhs,1827
272
- ark_sdk_python/models/services/pcloud/safes/ark_pcloud_safe_member.py,sha256=mippDGYp68kdL1x7EUl8VXGJxp0OWslzRSJpgu7Qryg,4455
271
+ ark_sdk_python/models/services/pcloud/safes/ark_pcloud_safe.py,sha256=faY2mApGfjpGLX_9tzVr9WoS_C_kRyOHkKZA7qXW-4M,1827
272
+ ark_sdk_python/models/services/pcloud/safes/ark_pcloud_safe_member.py,sha256=odqyUe3gU0V-85c07ZnypLDUDRi1TiypuS5FeeQeuBI,4454
273
273
  ark_sdk_python/models/services/pcloud/safes/ark_pcloud_safe_members_filter.py,sha256=Ja_TyNyddajoawFVOURoLVVYa_4SIAstyIxtuVK0psc,788
274
274
  ark_sdk_python/models/services/pcloud/safes/ark_pcloud_safes_filters.py,sha256=rcDRVoyaY8ofwGBEkq2ZtlYoHH7b_C-fatw2wQogV-A,475
275
275
  ark_sdk_python/models/services/pcloud/safes/ark_pcloud_safes_members_stats.py,sha256=b5ejLKiF1JxQZby_X-OkXfWmbraq_RYInp9IJr_qyuA,819
@@ -373,11 +373,13 @@ ark_sdk_python/models/services/sia/secrets/vm/ark_sia_vm_secret_info.py,sha256=b
373
373
  ark_sdk_python/models/services/sia/secrets/vm/ark_sia_vm_secret_type.py,sha256=1AydLjGYmq12nNHDeTR5M-wjXA9ZZ935piRAEWiZlYI,137
374
374
  ark_sdk_python/models/services/sia/secrets/vm/ark_sia_vm_secrets_filter.py,sha256=-gIOi_n3m4uVKqNRKaI5Hr_GBQ7vcjMPtXt-8bNACSc,681
375
375
  ark_sdk_python/models/services/sia/secrets/vm/ark_sia_vm_secrets_stats.py,sha256=2gxl0y6jW2JKnDDO6fXNQobkzNvD9KF09lrteQ6KGrM,574
376
+ ark_sdk_python/models/services/sia/ssh_ca/__init__.py,sha256=NFvvDI0ixlwETVdZOinGKl2KudGocaN5TMEHAnhmhDo,147
377
+ ark_sdk_python/models/services/sia/ssh_ca/ark_sia_get_ssh_public_key.py,sha256=Yc53tX0wR6UfzQd9-yGtPaWwJFGlHvlrEsQqOh-Cook,229
376
378
  ark_sdk_python/models/services/sia/sso/__init__.py,sha256=fdVu0pn9Ie0NQAL8F4wiWASMHJ_VURwbq-b_7b5ppxM,1520
377
379
  ark_sdk_python/models/services/sia/sso/ark_sia_sso_acquire_token_response.py,sha256=tqB-0ABDJfKcRquttomsvWp6o6QKpZYWbY9meXhCmbY,277
378
380
  ark_sdk_python/models/services/sia/sso/ark_sia_sso_get_short_lived_client_certificate.py,sha256=YXZwUfwcWo6DK3zTSxt219T7rcyy_wK-RD8eaePYNxE,956
379
381
  ark_sdk_python/models/services/sia/sso/ark_sia_sso_get_short_lived_oracle_wallet.py,sha256=tXptFWXdKEsjmom1Xy3aLN6P54nnYgkP_SKCs33jyAM,731
380
- ark_sdk_python/models/services/sia/sso/ark_sia_sso_get_short_lived_password.py,sha256=ND5tRzlX8SYzPVW_nF74_3cJUpnmOR5yI2Ai7_c680M,215
382
+ ark_sdk_python/models/services/sia/sso/ark_sia_sso_get_short_lived_password.py,sha256=-g0l27dcotjrSD3UaETwvS2k-_xkKANKaPAA2VZVehY,366
381
383
  ark_sdk_python/models/services/sia/sso/ark_sia_sso_get_short_lived_rdp_file.py,sha256=cqlef9TGR3_PJ-ALla3PwZFUKV3iY8k_KcSyLU2Xs28,745
382
384
  ark_sdk_python/models/services/sia/sso/ark_sia_sso_get_ssh_key.py,sha256=lsYRHfG_kAWsKLxcHFBsxzWKicX1VUJuUiLP2sP3Bgk,234
383
385
  ark_sdk_python/models/services/sia/sso/ark_sia_sso_get_token_info.py,sha256=CrdUUQAXaRseMtG9-v0s-MO3KeN7lh6eR-zDmOblD14,444
@@ -454,7 +456,7 @@ ark_sdk_python/services/pcloud/safes/ark_pcloud_safes_service.py,sha256=fk2JCVuW
454
456
  ark_sdk_python/services/sia/__init__.py,sha256=QxQOlifbM6z_1xd8wagjwbxwQOGQI2yXpo2M93sU6O8,87
455
457
  ark_sdk_python/services/sia/access/__init__.py,sha256=rc_2Ua9Fe4qlmKYrmFLJcK_MOjSIob_atXZ4onhGFiw,125
456
458
  ark_sdk_python/services/sia/access/ark_sia_access_service.py,sha256=YqWIGxzy60wYSFJo-iH354Xj2O9izUt09Ek8zzNuBcs,12487
457
- ark_sdk_python/services/sia/ark_sia_api.py,sha256=7ROUxsDuMeHQE8kr03reSYvf6lMOVg4YPnzvx7x_Sko,4295
459
+ ark_sdk_python/services/sia/ark_sia_api.py,sha256=UZ-WSnRo3e6zPuwcenDUcTJEnpZzShDQjLBtPI5RPrs,4644
458
460
  ark_sdk_python/services/sia/certificates/__init__.py,sha256=GGHlBqeLP7O7jRHNW5iUor1Qct5iiP0bOJG_UTP24as,149
459
461
  ark_sdk_python/services/sia/certificates/ark_sia_certificates_service.py,sha256=ej9ZaIuSl1Cv_xBnAeqzpoNN3wtlmSuniuM1IeWhxnE,8626
460
462
  ark_sdk_python/services/sia/db/__init__.py,sha256=nvJ1X28YNxkpR77b18VeDU2XfixtlI1qgPj8uQhcsWY,116
@@ -471,8 +473,10 @@ ark_sdk_python/services/sia/secrets/db/__init__.py,sha256=ie7E5q22Zn5PlVvu0mmeWz
471
473
  ark_sdk_python/services/sia/secrets/db/ark_sia_db_secrets_service.py,sha256=EdNJI0VfucCJyuttD6ahIil_2pUpr2tUAKSir729RRw,18822
472
474
  ark_sdk_python/services/sia/secrets/vm/__init__.py,sha256=JPSVlPqMSeLzKq1SRcMA4QKx7KEzl3scbIeL5z0YGuU,139
473
475
  ark_sdk_python/services/sia/secrets/vm/ark_sia_vm_secrets_service.py,sha256=WQYn8Y4OL51ypr09Eb3ZF4lUFJAIfsEWL-QOJ-l7Rdo,10972
476
+ ark_sdk_python/services/sia/ssh_ca/__init__.py,sha256=ZkR033Y3sfVAtNWFk3jbxCArDVABo2sQ208NSzrX4so,123
477
+ ark_sdk_python/services/sia/ssh_ca/ark_sia_ssh_ca_service.py,sha256=OdX7byjTijDginLLqjinjrzaunBVqZVzXqIDDuZNGB8,5160
474
478
  ark_sdk_python/services/sia/sso/__init__.py,sha256=32pGT_H9wzKaqaimCWmPrJkCx3jdsJOHubTKNMQJrnw,120
475
- ark_sdk_python/services/sia/sso/ark_sia_sso_service.py,sha256=obl1NU9UsrBs1akfQZm7cyyC3f2mjCRmK5vQ2DIxwn0,19514
479
+ ark_sdk_python/services/sia/sso/ark_sia_sso_service.py,sha256=g0jmtQKOkSmF5DtvZdVdtQACnIDNbIBWB17CnGbGJso,19538
476
480
  ark_sdk_python/services/sia/workspaces/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
477
481
  ark_sdk_python/services/sia/workspaces/db/__init__.py,sha256=7QYqbdDGn1TFywk7cbBJkkVvx32hSTgs9T6oiVK3-e8,148
478
482
  ark_sdk_python/services/sia/workspaces/db/ark_sia_db_workspace_service.py,sha256=I5jYj1aBY6SlUpIsziQv0NmSISdY5FKWGLhcMm_XSBc,12938
@@ -480,9 +484,9 @@ ark_sdk_python/services/sia/workspaces/targetsets/__init__.py,sha256=UjHr81LMcMl
480
484
  ark_sdk_python/services/sia/workspaces/targetsets/ark_sia_target_sets_workspace_service.py,sha256=o9_DzskTV94kkfc4m0Qk8lj5FV8rexRa5RzRwfe9Tbo,11254
481
485
  ark_sdk_python/services/sm/__init__.py,sha256=jzKxEkZYOCW9y_byLfd_odae9m2sh1UfjaaKBVySWY0,95
482
486
  ark_sdk_python/services/sm/ark_sm_service.py,sha256=Rh2dFjNz7VMJUnl43hxL07HEZ8_33KrU_lqfUrqUDn4,11517
483
- ark_sdk_python-2.0.9.dist-info/LICENSE.txt,sha256=d4EzYx2apA3-GqrFY23wLtc6UmQNXG05gyLfZ3oWVRs,11358
484
- ark_sdk_python-2.0.9.dist-info/METADATA,sha256=g6zZmrb3KPBtNkGRVd8bmFyV9b--4-ocPAwIiTA8D3E,20178
485
- ark_sdk_python-2.0.9.dist-info/NOTICES.md,sha256=vRzFZEsfBw5q3H1_cgZV50AVhNTqF8Smz9fSvn49Y1E,125803
486
- ark_sdk_python-2.0.9.dist-info/WHEEL,sha256=0IJoS5KyK2sZuSvGyrwXyRwSVwTkTkpEcRzz5xcYUMQ,110
487
- ark_sdk_python-2.0.9.dist-info/entry_points.txt,sha256=v5bcuRn8w42ZKQspfvX3AliKmLVO6f7Zb_bma77p3vQ,47
488
- ark_sdk_python-2.0.9.dist-info/RECORD,,
487
+ ark_sdk_python-2.0.13.dist-info/LICENSE.txt,sha256=d4EzYx2apA3-GqrFY23wLtc6UmQNXG05gyLfZ3oWVRs,11358
488
+ ark_sdk_python-2.0.13.dist-info/METADATA,sha256=0OanCimTLUoO0x0tebGM__ZMMejVN0TeLIo0GD0fIPg,20796
489
+ ark_sdk_python-2.0.13.dist-info/NOTICES.md,sha256=vRzFZEsfBw5q3H1_cgZV50AVhNTqF8Smz9fSvn49Y1E,125803
490
+ ark_sdk_python-2.0.13.dist-info/WHEEL,sha256=0IJoS5KyK2sZuSvGyrwXyRwSVwTkTkpEcRzz5xcYUMQ,110
491
+ ark_sdk_python-2.0.13.dist-info/entry_points.txt,sha256=v5bcuRn8w42ZKQspfvX3AliKmLVO6f7Zb_bma77p3vQ,47
492
+ ark_sdk_python-2.0.13.dist-info/RECORD,,