strongdm 1.0.23 → 1.0.28

Sign up to get free protection for your applications and to get access to all the features.
Files changed (241) hide show
  1. checksums.yaml +4 -4
  2. data/.git/FETCH_HEAD +2 -0
  3. data/.git/HEAD +1 -0
  4. data/.git/ORIG_HEAD +1 -0
  5. data/.git/config +14 -0
  6. data/.git/description +1 -0
  7. data/.git/hooks/applypatch-msg.sample +15 -0
  8. data/.git/hooks/commit-msg.sample +24 -0
  9. data/.git/hooks/fsmonitor-watchman.sample +114 -0
  10. data/.git/hooks/post-update.sample +8 -0
  11. data/.git/hooks/pre-applypatch.sample +14 -0
  12. data/.git/hooks/pre-commit.sample +49 -0
  13. data/.git/hooks/pre-push.sample +53 -0
  14. data/.git/hooks/pre-rebase.sample +169 -0
  15. data/.git/hooks/pre-receive.sample +24 -0
  16. data/.git/hooks/prepare-commit-msg.sample +42 -0
  17. data/.git/hooks/update.sample +128 -0
  18. data/.git/index +0 -0
  19. data/.git/info/exclude +6 -0
  20. data/.git/logs/HEAD +4 -0
  21. data/.git/logs/refs/heads/development +1 -0
  22. data/.git/logs/refs/heads/master +2 -0
  23. data/.git/logs/refs/remotes/origin/HEAD +1 -0
  24. data/.git/objects/pack/pack-c145f7f05d162f9c48a04d57dee32a2d1473598c.idx +0 -0
  25. data/.git/objects/pack/pack-c145f7f05d162f9c48a04d57dee32a2d1473598c.pack +0 -0
  26. data/.git/packed-refs +28 -0
  27. data/.git/refs/heads/development +1 -0
  28. data/.git/refs/heads/master +1 -0
  29. data/.git/refs/remotes/origin/HEAD +1 -0
  30. data/doc/LICENSE.html +3 -9
  31. data/doc/Object.html +8 -24
  32. data/doc/README_md.html +7 -10
  33. data/doc/SDM/AKS.html +9 -84
  34. data/doc/SDM/AKSBasicAuth.html +9 -81
  35. data/doc/SDM/AKSServiceAccount.html +9 -78
  36. data/doc/SDM/AKSServiceAccountUserImpersonation.html +9 -78
  37. data/doc/SDM/AKSUserImpersonation.html +9 -84
  38. data/doc/SDM/AWS.html +8 -80
  39. data/doc/SDM/AWSStore.html +10 -61
  40. data/doc/SDM/AccountAttachment.html +8 -56
  41. data/doc/SDM/AccountAttachmentCreateResponse.html +8 -56
  42. data/doc/SDM/AccountAttachmentDeleteResponse.html +8 -53
  43. data/doc/SDM/AccountAttachmentGetResponse.html +8 -56
  44. data/doc/SDM/AccountAttachments.html +8 -84
  45. data/doc/SDM/AccountCreateResponse.html +8 -59
  46. data/doc/SDM/AccountDeleteResponse.html +8 -53
  47. data/doc/SDM/AccountGetResponse.html +8 -56
  48. data/doc/SDM/AccountGrant.html +8 -62
  49. data/doc/SDM/AccountGrantCreateResponse.html +8 -56
  50. data/doc/SDM/AccountGrantDeleteResponse.html +8 -53
  51. data/doc/SDM/AccountGrantGetResponse.html +8 -56
  52. data/doc/SDM/AccountGrants.html +8 -84
  53. data/doc/SDM/AccountUpdateResponse.html +8 -56
  54. data/doc/SDM/Accounts.html +9 -98
  55. data/doc/SDM/AlreadyExistsError.html +7 -31
  56. data/doc/SDM/AmazonEKS.html +9 -93
  57. data/doc/SDM/AmazonEKSUserImpersonation.html +9 -93
  58. data/doc/SDM/AmazonES.html +8 -86
  59. data/doc/SDM/AmazonMQAMQP091.html +8 -83
  60. data/doc/SDM/Athena.html +8 -86
  61. data/doc/SDM/AuroraMysql.html +8 -83
  62. data/doc/SDM/AuroraPostgres.html +10 -88
  63. data/doc/SDM/AuthenticationError.html +7 -31
  64. data/doc/SDM/BadRequestError.html +7 -31
  65. data/doc/SDM/BigQuery.html +8 -80
  66. data/doc/SDM/Cassandra.html +8 -83
  67. data/doc/SDM/Citus.html +10 -88
  68. data/doc/SDM/Client.html +22 -140
  69. data/doc/SDM/Clustrix.html +8 -83
  70. data/doc/SDM/Cockroach.html +10 -88
  71. data/doc/SDM/ControlPanel.html +8 -58
  72. data/doc/SDM/ControlPanelGetSSHCAPublicKeyResponse.html +8 -56
  73. data/doc/SDM/ControlPanelVerifyJWTResponse.html +8 -56
  74. data/doc/SDM/CreateResponseMetadata.html +8 -45
  75. data/doc/SDM/DB2LUW.html +8 -83
  76. data/doc/SDM/DB2i.html +8 -83
  77. data/doc/SDM/DeadlineExceededError.html +7 -31
  78. data/doc/SDM/DeleteResponseMetadata.html +8 -45
  79. data/doc/SDM/Druid.html +8 -80
  80. data/doc/SDM/DynamoDB.html +8 -86
  81. data/doc/SDM/Elastic.html +8 -83
  82. data/doc/SDM/ElasticacheRedis.html +10 -82
  83. data/doc/SDM/Gateway.html +10 -70
  84. data/doc/SDM/GetResponseMetadata.html +8 -45
  85. data/doc/SDM/GoogleGKE.html +9 -78
  86. data/doc/SDM/GoogleGKEUserImpersonation.html +9 -78
  87. data/doc/SDM/Greenplum.html +10 -88
  88. data/doc/SDM/HTTPAuth.html +8 -83
  89. data/doc/SDM/HTTPBasicAuth.html +8 -86
  90. data/doc/SDM/HTTPNoAuth.html +8 -80
  91. data/doc/SDM/InternalError.html +7 -31
  92. data/doc/SDM/Kubernetes.html +9 -84
  93. data/doc/SDM/KubernetesBasicAuth.html +9 -81
  94. data/doc/SDM/KubernetesServiceAccount.html +9 -78
  95. data/doc/SDM/KubernetesServiceAccountUserImpersonation.html +9 -78
  96. data/doc/SDM/KubernetesUserImpersonation.html +9 -84
  97. data/doc/SDM/Maria.html +8 -83
  98. data/doc/SDM/Memcached.html +8 -74
  99. data/doc/SDM/Memsql.html +8 -83
  100. data/doc/SDM/MongoHost.html +8 -86
  101. data/doc/SDM/MongoLegacyHost.html +8 -89
  102. data/doc/SDM/MongoLegacyReplicaset.html +8 -92
  103. data/doc/SDM/MongoReplicaSet.html +8 -92
  104. data/doc/SDM/Mysql.html +8 -83
  105. data/doc/SDM/NodeCreateResponse.html +10 -61
  106. data/doc/SDM/NodeDeleteResponse.html +10 -55
  107. data/doc/SDM/NodeGetResponse.html +10 -58
  108. data/doc/SDM/NodeUpdateResponse.html +10 -58
  109. data/doc/SDM/Nodes.html +10 -99
  110. data/doc/SDM/NotFoundError.html +7 -31
  111. data/doc/SDM/Oracle.html +10 -88
  112. data/doc/SDM/PermissionError.html +7 -31
  113. data/doc/SDM/Plumbing.html +641 -6393
  114. data/doc/SDM/Postgres.html +10 -88
  115. data/doc/SDM/Presto.html +10 -88
  116. data/doc/SDM/RDP.html +10 -82
  117. data/doc/SDM/RPCError.html +7 -36
  118. data/doc/SDM/RabbitMQAMQP091.html +8 -83
  119. data/doc/SDM/RateLimitError.html +7 -36
  120. data/doc/SDM/RateLimitMetadata.html +8 -59
  121. data/doc/SDM/{SecretStore.html → RawTCP.html} +90 -86
  122. data/doc/SDM/Redis.html +10 -79
  123. data/doc/SDM/Redshift.html +10 -88
  124. data/doc/SDM/Relay.html +10 -64
  125. data/doc/SDM/ResourceCreateResponse.html +10 -58
  126. data/doc/SDM/ResourceDeleteResponse.html +10 -55
  127. data/doc/SDM/ResourceGetResponse.html +10 -58
  128. data/doc/SDM/ResourceUpdateResponse.html +10 -58
  129. data/doc/SDM/Resources.html +8 -110
  130. data/doc/SDM/Role.html +26 -62
  131. data/doc/SDM/RoleAttachment.html +10 -58
  132. data/doc/SDM/RoleAttachmentCreateResponse.html +10 -58
  133. data/doc/SDM/RoleAttachmentDeleteResponse.html +10 -55
  134. data/doc/SDM/RoleAttachmentGetResponse.html +10 -58
  135. data/doc/SDM/RoleAttachments.html +8 -84
  136. data/doc/SDM/RoleCreateResponse.html +10 -58
  137. data/doc/SDM/RoleDeleteResponse.html +10 -55
  138. data/doc/SDM/RoleGetResponse.html +10 -58
  139. data/doc/SDM/RoleGrant.html +10 -58
  140. data/doc/SDM/RoleGrantCreateResponse.html +10 -58
  141. data/doc/SDM/RoleGrantDeleteResponse.html +10 -55
  142. data/doc/SDM/RoleGrantGetResponse.html +10 -58
  143. data/doc/SDM/RoleGrants.html +8 -84
  144. data/doc/SDM/RoleUpdateResponse.html +10 -58
  145. data/doc/SDM/Roles.html +8 -97
  146. data/doc/SDM/SQLServer.html +10 -91
  147. data/doc/SDM/SSH.html +10 -85
  148. data/doc/SDM/SSHCert.html +10 -82
  149. data/doc/SDM/SSHCustomerKey.html +10 -85
  150. data/doc/SDM/SecretStoreCreateResponse.html +10 -58
  151. data/doc/SDM/SecretStoreDeleteResponse.html +10 -55
  152. data/doc/SDM/SecretStoreGetResponse.html +10 -58
  153. data/doc/SDM/SecretStoreUpdateResponse.html +10 -58
  154. data/doc/SDM/SecretStores.html +8 -97
  155. data/doc/SDM/Service.html +8 -59
  156. data/doc/SDM/{AmazonMQRabbitMQAMQP091.html → SingleStore.html} +38 -113
  157. data/doc/SDM/Snowflake.html +10 -85
  158. data/doc/SDM/Sybase.html +10 -82
  159. data/doc/SDM/SybaseIQ.html +10 -82
  160. data/doc/SDM/Tag.html +8 -53
  161. data/doc/SDM/Teradata.html +10 -82
  162. data/doc/SDM/UpdateResponseMetadata.html +8 -45
  163. data/doc/SDM/User.html +8 -65
  164. data/doc/SDM/VaultTLSStore.html +10 -70
  165. data/doc/SDM/VaultTokenStore.html +10 -61
  166. data/doc/SDM.html +2 -15
  167. data/doc/V1/AccountAttachments/Service.html +7 -19
  168. data/doc/V1/AccountAttachments.html +2 -15
  169. data/doc/V1/AccountGrants/Service.html +7 -19
  170. data/doc/V1/AccountGrants.html +2 -15
  171. data/doc/V1/Accounts/Service.html +8 -20
  172. data/doc/V1/Accounts.html +2 -15
  173. data/doc/V1/ControlPanel/Service.html +7 -19
  174. data/doc/V1/ControlPanel.html +2 -15
  175. data/doc/V1/Nodes/Service.html +9 -21
  176. data/doc/V1/Nodes.html +2 -15
  177. data/doc/V1/Resources/Service.html +7 -19
  178. data/doc/V1/Resources.html +2 -15
  179. data/doc/V1/RoleAttachments/Service.html +7 -19
  180. data/doc/V1/RoleAttachments.html +2 -15
  181. data/doc/V1/RoleGrants/Service.html +7 -19
  182. data/doc/V1/RoleGrants.html +2 -15
  183. data/doc/V1/Roles/Service.html +7 -19
  184. data/doc/V1/Roles.html +2 -15
  185. data/doc/V1/SecretStores/Service.html +7 -19
  186. data/doc/V1/SecretStores.html +2 -15
  187. data/doc/V1/Tags.html +2 -15
  188. data/doc/V1.html +10 -802
  189. data/doc/created.rid +37 -56
  190. data/doc/css/rdoc.css +21 -1
  191. data/doc/examples/Gemfile.html +3 -9
  192. data/doc/index.html +5 -188
  193. data/doc/js/navigation.js.gz +0 -0
  194. data/doc/js/search_index.js +1 -1
  195. data/doc/js/search_index.js.gz +0 -0
  196. data/doc/js/searcher.js.gz +0 -0
  197. data/doc/lib/version.html +4 -10
  198. data/doc/table_of_contents.html +398 -716
  199. data/lib/grpc/account_attachments_services_pb.rb +1 -1
  200. data/lib/grpc/account_grants_services_pb.rb +1 -1
  201. data/lib/grpc/accounts_services_pb.rb +1 -1
  202. data/lib/grpc/control_panel_services_pb.rb +1 -1
  203. data/lib/grpc/drivers_pb.rb +29 -0
  204. data/lib/grpc/nodes_services_pb.rb +1 -1
  205. data/lib/grpc/options_pb.rb +10 -14
  206. data/lib/grpc/plumbing.rb +120 -0
  207. data/lib/grpc/resources_services_pb.rb +1 -1
  208. data/lib/grpc/role_attachments_services_pb.rb +1 -1
  209. data/lib/grpc/role_grants_services_pb.rb +1 -1
  210. data/lib/grpc/roles_pb.rb +1 -0
  211. data/lib/grpc/roles_services_pb.rb +1 -1
  212. data/lib/grpc/secret_stores_services_pb.rb +1 -1
  213. data/lib/models/porcelain.rb +176 -14
  214. data/lib/strongdm.rb +8 -1
  215. data/lib/version +1 -1
  216. data/lib/version.rb +1 -1
  217. data/strongdm.gemspec +5 -5
  218. metadata +279 -291
  219. data/doc/Google/Protobuf.html +0 -95
  220. data/doc/Google.html +0 -95
  221. data/doc/SDM/AccessRuleCreateResponse.html +0 -267
  222. data/doc/SDM/AccessRuleDeleteResponse.html +0 -249
  223. data/doc/SDM/AccessRuleUpdateResponse.html +0 -267
  224. data/doc/SDM/AccountAttachmentCreateOptions.html +0 -231
  225. data/doc/V1/AccessRules/Service.html +0 -119
  226. data/doc/V1/AccessRules.html +0 -113
  227. data/doc/V1/Audits/Service.html +0 -119
  228. data/doc/V1/Audits.html +0 -113
  229. data/doc/V1/BuildsPrivate/Service.html +0 -119
  230. data/doc/V1/BuildsPrivate.html +0 -113
  231. data/doc/V1/DemoProvisioningRequests/Service.html +0 -119
  232. data/doc/V1/DemoProvisioningRequests.html +0 -113
  233. data/doc/V1/Permissions/Service.html +0 -119
  234. data/doc/V1/SecretStoreHealths/Service.html +0 -119
  235. data/doc/V1/SecretStoreHealths.html +0 -113
  236. data/doc/examples/Gemfile_lock.html +0 -122
  237. data/doc/examples/README_md.html +0 -105
  238. data/doc/examples/okta-sync/Gemfile.html +0 -105
  239. data/doc/examples/okta-sync/Gemfile_lock.html +0 -146
  240. data/doc/js/jquery.js +0 -4
  241. data/doc/strongdm_gemspec.html +0 -119
data/doc/SDM/Client.html CHANGED
@@ -21,8 +21,6 @@
21
21
  <link href="../css/rdoc.css" rel="stylesheet">
22
22
 
23
23
 
24
-
25
-
26
24
  <body id="top" role="document" class="class">
27
25
  <nav role="navigation">
28
26
  <div id="project-navigation">
@@ -59,32 +57,26 @@
59
57
 
60
58
  <div id="class-metadata">
61
59
 
62
- <div id="parent-class-section" class="nav-section">
60
+
61
+ <div id="parent-class-section" class="nav-section">
63
62
  <h3>Parent</h3>
64
63
 
65
-
66
64
  <p class="link"><a href="../Object.html">Object</a>
67
-
68
65
  </div>
69
66
 
70
67
 
71
68
 
72
- <!-- Method Quickref -->
69
+
70
+ <!-- Method Quickref -->
73
71
  <div id="method-list-section" class="nav-section">
74
72
  <h3>Methods</h3>
75
73
 
76
74
  <ul class="link-list" role="directory">
77
-
78
75
  <li ><a href="#method-c-new">::new</a>
79
-
80
76
  <li ><a href="#method-i-get_metadata">#get_metadata</a>
81
-
82
77
  <li ><a href="#method-i-jitterSleep">#jitterSleep</a>
83
-
84
78
  <li ><a href="#method-i-shouldRetry">#shouldRetry</a>
85
-
86
79
  <li ><a href="#method-i-sign">#sign</a>
87
-
88
80
  </ul>
89
81
  </div>
90
82
 
@@ -102,21 +94,15 @@
102
94
 
103
95
  </section>
104
96
 
105
-
106
97
  <section id="5Buntitled-5D" class="documentation-section">
107
-
108
98
 
109
-
110
99
 
111
-
112
100
 
113
-
114
101
  <section class="attribute-method-details" class="method-section">
115
102
  <header>
116
103
  <h3>Attributes</h3>
117
104
  </header>
118
105
 
119
-
120
106
  <div id="attribute-i-_test_options" class="method-detail">
121
107
  <div class="method-heading attribute-method-heading">
122
108
  <span class="method-name">_test_options</span><span
@@ -125,11 +111,8 @@
125
111
 
126
112
  <div class="method-description">
127
113
 
128
-
129
-
130
114
  </div>
131
115
  </div>
132
-
133
116
  <div id="attribute-i-account_attachments" class="method-detail">
134
117
  <div class="method-heading attribute-method-heading">
135
118
  <span class="method-name">account_attachments</span><span
@@ -137,12 +120,9 @@
137
120
  </div>
138
121
 
139
122
  <div class="method-description">
140
-
141
123
  <p><a href="AccountAttachments.html"><code>AccountAttachments</code></a> assign an account to a role or composite role.</p>
142
-
143
124
  </div>
144
125
  </div>
145
-
146
126
  <div id="attribute-i-account_grants" class="method-detail">
147
127
  <div class="method-heading attribute-method-heading">
148
128
  <span class="method-name">account_grants</span><span
@@ -150,12 +130,9 @@
150
130
  </div>
151
131
 
152
132
  <div class="method-description">
153
-
154
133
  <p><a href="AccountGrants.html"><code>AccountGrants</code></a> assign a resource directly to an account, giving the account the permission to connect to that resource.</p>
155
-
156
134
  </div>
157
135
  </div>
158
-
159
136
  <div id="attribute-i-accounts" class="method-detail">
160
137
  <div class="method-heading attribute-method-heading">
161
138
  <span class="method-name">accounts</span><span
@@ -163,17 +140,14 @@
163
140
  </div>
164
141
 
165
142
  <div class="method-description">
166
-
167
143
  <p><a href="Accounts.html"><code>Accounts</code></a> are users that have access to strongDM. There are two types of accounts:</p>
168
144
  <ol><li>
169
- <p>*<strong>Users:</strong>* humans who are authenticated through username and password or SSO.</p>
145
+ <p><strong>Users:</strong> humans who are authenticated through username and password or SSO.</p>
170
146
  </li><li>
171
147
  <p>**Service Accounts:** machines that are authenticated using a service token.</p>
172
148
  </li></ol>
173
-
174
149
  </div>
175
150
  </div>
176
-
177
151
  <div id="attribute-i-api_access_key" class="method-detail">
178
152
  <div class="method-heading attribute-method-heading">
179
153
  <span class="method-name">api_access_key</span><span
@@ -181,12 +155,9 @@
181
155
  </div>
182
156
 
183
157
  <div class="method-description">
184
-
185
158
  <p>API authentication token (read-only).</p>
186
-
187
159
  </div>
188
160
  </div>
189
-
190
161
  <div id="attribute-i-base_retry_delay" class="method-detail">
191
162
  <div class="method-heading attribute-method-heading">
192
163
  <span class="method-name">base_retry_delay</span><span
@@ -195,11 +166,8 @@
195
166
 
196
167
  <div class="method-description">
197
168
 
198
-
199
-
200
169
  </div>
201
170
  </div>
202
-
203
171
  <div id="attribute-i-control_panel" class="method-detail">
204
172
  <div class="method-heading attribute-method-heading">
205
173
  <span class="method-name">control_panel</span><span
@@ -207,12 +175,9 @@
207
175
  </div>
208
176
 
209
177
  <div class="method-description">
210
-
211
178
  <p><a href="ControlPanel.html"><code>ControlPanel</code></a> contains all administrative controls.</p>
212
-
213
179
  </div>
214
180
  </div>
215
-
216
181
  <div id="attribute-i-max_retries" class="method-detail">
217
182
  <div class="method-heading attribute-method-heading">
218
183
  <span class="method-name">max_retries</span><span
@@ -221,11 +186,8 @@
221
186
 
222
187
  <div class="method-description">
223
188
 
224
-
225
-
226
189
  </div>
227
190
  </div>
228
-
229
191
  <div id="attribute-i-max_retry_delay" class="method-detail">
230
192
  <div class="method-heading attribute-method-heading">
231
193
  <span class="method-name">max_retry_delay</span><span
@@ -234,11 +196,8 @@
234
196
 
235
197
  <div class="method-description">
236
198
 
237
-
238
-
239
199
  </div>
240
200
  </div>
241
-
242
201
  <div id="attribute-i-nodes" class="method-detail">
243
202
  <div class="method-heading attribute-method-heading">
244
203
  <span class="method-name">nodes</span><span
@@ -246,17 +205,14 @@
246
205
  </div>
247
206
 
248
207
  <div class="method-description">
249
-
250
208
  <p><a href="Nodes.html"><code>Nodes</code></a> make up the strongDM network, and allow your users to connect securely to your resources. There are two types of nodes:</p>
251
209
  <ul><li>
252
- <p>*<strong>Gateways</strong>* are the entry points into network. They listen for connection from the strongDM client, and provide access to databases and servers.</p>
210
+ <p><strong>Gateways</strong> are the entry points into network. They listen for connection from the strongDM client, and provide access to databases and servers.</p>
253
211
  </li><li>
254
- <p>*<strong>Relays</strong>* are used to extend the strongDM network into segmented subnets. They provide access to databases and servers but do not listen for incoming connections.</p>
212
+ <p><strong>Relays</strong> are used to extend the strongDM network into segmented subnets. They provide access to databases and servers but do not listen for incoming connections.</p>
255
213
  </li></ul>
256
-
257
214
  </div>
258
215
  </div>
259
-
260
216
  <div id="attribute-i-resources" class="method-detail">
261
217
  <div class="method-heading attribute-method-heading">
262
218
  <span class="method-name">resources</span><span
@@ -265,11 +221,8 @@
265
221
 
266
222
  <div class="method-description">
267
223
 
268
-
269
-
270
224
  </div>
271
225
  </div>
272
-
273
226
  <div id="attribute-i-role_attachments" class="method-detail">
274
227
  <div class="method-heading attribute-method-heading">
275
228
  <span class="method-name">role_attachments</span><span
@@ -277,12 +230,9 @@
277
230
  </div>
278
231
 
279
232
  <div class="method-description">
280
-
281
233
  <p><a href="RoleAttachments.html"><code>RoleAttachments</code></a> represent relationships between composite roles and the roles that make up those composite roles. When a composite role is attached to another role, the permissions granted to members of the composite role are augmented to include the permissions granted to members of the attached role.</p>
282
-
283
234
  </div>
284
235
  </div>
285
-
286
236
  <div id="attribute-i-role_grants" class="method-detail">
287
237
  <div class="method-heading attribute-method-heading">
288
238
  <span class="method-name">role_grants</span><span
@@ -290,12 +240,9 @@
290
240
  </div>
291
241
 
292
242
  <div class="method-description">
293
-
294
243
  <p><a href="RoleGrants.html"><code>RoleGrants</code></a> represent relationships between composite roles and the roles that make up those composite roles. When a composite role is attached to another role, the permissions granted to members of the composite role are augmented to include the permissions granted to members of the attached role.</p>
295
-
296
244
  </div>
297
245
  </div>
298
-
299
246
  <div id="attribute-i-roles" class="method-detail">
300
247
  <div class="method-heading attribute-method-heading">
301
248
  <span class="method-name">roles</span><span
@@ -303,12 +250,9 @@
303
250
  </div>
304
251
 
305
252
  <div class="method-description">
306
-
307
253
  <p><a href="Roles.html"><code>Roles</code></a> are tools for controlling user access to resources. Each <a href="Role.html"><code>Role</code></a> holds a list of resources which they grant access to. Composite roles are a special type of <a href="Role.html"><code>Role</code></a> which have no resource associations of their own, but instead grant access to the combined resources associated with a set of child roles. Each user can be a member of one <a href="Role.html"><code>Role</code></a> or composite role.</p>
308
-
309
254
  </div>
310
255
  </div>
311
-
312
256
  <div id="attribute-i-secret_stores" class="method-detail">
313
257
  <div class="method-heading attribute-method-heading">
314
258
  <span class="method-name">secret_stores</span><span
@@ -316,42 +260,29 @@
316
260
  </div>
317
261
 
318
262
  <div class="method-description">
319
-
320
263
  <p><a href="SecretStores.html"><code>SecretStores</code></a> are servers where resource secrets (passwords, keys) are stored.</p>
321
-
322
264
  </div>
323
265
  </div>
324
-
325
266
  </section>
326
-
327
267
 
328
-
268
+
329
269
  <section id="public-class-5Buntitled-5D-method-details" class="method-section">
330
270
  <header>
331
271
  <h3>Public Class Methods</h3>
332
272
  </header>
333
273
 
334
-
335
274
  <div id="method-c-new" class="method-detail ">
336
-
337
275
  <div class="method-heading">
338
276
  <span class="method-name">new</span><span
339
277
  class="method-args">(api_access_key, api_secret_key, host:&quot;api.strongdm.com:443&quot;, insecure:false)</span>
340
-
341
278
  <span class="method-click-advice">click to toggle source</span>
342
-
343
279
  </div>
344
-
345
280
 
346
281
  <div class="method-description">
347
-
348
282
  <p>Creates a new strongDM API client.</p>
349
-
350
-
351
283
 
352
-
353
284
  <div class="method-source-code" id="new-source">
354
- <pre><span class="ruby-comment"># File lib/strongdm.rb, line 31</span>
285
+ <pre><span class="ruby-comment"># File lib/strongdm.rb, line 33</span>
355
286
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">api_access_key</span>, <span class="ruby-identifier">api_secret_key</span>, <span class="ruby-value">host:</span><span class="ruby-string">&quot;api.strongdm.com:443&quot;</span>, <span class="ruby-value">insecure:</span><span class="ruby-keyword">false</span>)
356
287
  <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-string">&#39;client access key must be a string&#39;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">api_access_key</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">String</span>)
357
288
  <span class="ruby-identifier">raise</span> <span class="ruby-constant">TypeError</span>, <span class="ruby-string">&#39;client secret key must be a string&#39;</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">api_secret_key</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">String</span>)
@@ -374,76 +305,56 @@
374
305
  <span class="ruby-ivar">@_test_options</span> = <span class="ruby-constant">Hash</span>.<span class="ruby-identifier">new</span>
375
306
  <span class="ruby-keyword">end</span></pre>
376
307
  </div>
377
-
378
308
  </div>
379
309
 
380
-
381
310
 
382
-
383
311
  </div>
384
312
 
385
-
386
313
  </section>
387
-
314
+
388
315
  <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
389
316
  <header>
390
317
  <h3>Public Instance Methods</h3>
391
318
  </header>
392
319
 
393
-
394
320
  <div id="method-i-get_metadata" class="method-detail ">
395
-
396
321
  <div class="method-heading">
397
322
  <span class="method-name">get_metadata</span><span
398
323
  class="method-args">(method_name, req)</span>
399
-
400
324
  <span class="method-click-advice">click to toggle source</span>
401
-
402
325
  </div>
403
-
404
326
 
405
327
  <div class="method-description">
406
328
 
407
-
408
-
409
-
410
329
 
411
-
412
330
  <div class="method-source-code" id="get_metadata-source">
413
- <pre><span class="ruby-comment"># File lib/strongdm.rb, line 53</span>
331
+ <pre><span class="ruby-comment"># File lib/strongdm.rb, line 55</span>
414
332
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">get_metadata</span>(<span class="ruby-identifier">method_name</span>, <span class="ruby-identifier">req</span>)
415
- <span class="ruby-keyword">return</span> { <span class="ruby-value">&#39;x-sdm-authentication&#39;:</span> <span class="ruby-ivar">@api_access_key</span>,<span class="ruby-value">&#39;x-sdm-signature&#39;:</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">sign</span>(<span class="ruby-identifier">method_name</span>, <span class="ruby-identifier">req</span>.<span class="ruby-identifier">to_proto</span>)}
333
+ <span class="ruby-keyword">return</span> {
334
+ <span class="ruby-value">&#39;x-sdm-authentication&#39;:</span> <span class="ruby-ivar">@api_access_key</span>,
335
+ <span class="ruby-value">&#39;x-sdm-signature&#39;:</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">sign</span>(<span class="ruby-identifier">method_name</span>, <span class="ruby-identifier">req</span>.<span class="ruby-identifier">to_proto</span>),
336
+ <span class="ruby-value">&#39;x-sdm-api-version&#39;:</span> <span class="ruby-constant">API_VERSION</span>,
337
+ <span class="ruby-value">&#39;x-sdm-user-agent&#39;:</span> <span class="ruby-constant">USER_AGENT</span>,
338
+ }
416
339
  <span class="ruby-keyword">end</span></pre>
417
340
  </div>
418
-
419
341
  </div>
420
342
 
421
-
422
343
 
423
-
424
344
  </div>
425
345
 
426
-
427
346
  <div id="method-i-jitterSleep" class="method-detail ">
428
-
429
347
  <div class="method-heading">
430
348
  <span class="method-name">jitterSleep</span><span
431
349
  class="method-args">(iter)</span>
432
-
433
350
  <span class="method-click-advice">click to toggle source</span>
434
-
435
351
  </div>
436
-
437
352
 
438
353
  <div class="method-description">
439
354
 
440
-
441
-
442
-
443
355
 
444
-
445
356
  <div class="method-source-code" id="jitterSleep-source">
446
- <pre><span class="ruby-comment"># File lib/strongdm.rb, line 73</span>
357
+ <pre><span class="ruby-comment"># File lib/strongdm.rb, line 80</span>
447
358
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">jitterSleep</span>(<span class="ruby-identifier">iter</span>)
448
359
  <span class="ruby-identifier">dur_max</span> = <span class="ruby-ivar">@base_retry_delay</span> <span class="ruby-operator">*</span> <span class="ruby-value">2</span><span class="ruby-operator">**</span><span class="ruby-identifier">iter</span>
449
360
  <span class="ruby-keyword">if</span> (<span class="ruby-identifier">dur_max</span> <span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@max_retry_delay</span>)
@@ -453,35 +364,23 @@
453
364
  <span class="ruby-identifier">sleep</span>(<span class="ruby-identifier">dur</span>)
454
365
  <span class="ruby-keyword">end</span></pre>
455
366
  </div>
456
-
457
367
  </div>
458
368
 
459
-
460
369
 
461
-
462
370
  </div>
463
371
 
464
-
465
372
  <div id="method-i-shouldRetry" class="method-detail ">
466
-
467
373
  <div class="method-heading">
468
374
  <span class="method-name">shouldRetry</span><span
469
375
  class="method-args">(iter, err)</span>
470
-
471
376
  <span class="method-click-advice">click to toggle source</span>
472
-
473
377
  </div>
474
-
475
378
 
476
379
  <div class="method-description">
477
380
 
478
-
479
-
480
-
481
381
 
482
-
483
382
  <div class="method-source-code" id="shouldRetry-source">
484
- <pre><span class="ruby-comment"># File lib/strongdm.rb, line 82</span>
383
+ <pre><span class="ruby-comment"># File lib/strongdm.rb, line 89</span>
485
384
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">shouldRetry</span>(<span class="ruby-identifier">iter</span>, <span class="ruby-identifier">err</span>)
486
385
  <span class="ruby-keyword">if</span> (<span class="ruby-identifier">iter</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-ivar">@max_retries</span><span class="ruby-value">-1</span>)
487
386
  <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span>
@@ -492,35 +391,23 @@
492
391
  <span class="ruby-keyword">return</span> <span class="ruby-identifier">err</span>.<span class="ruby-identifier">code</span>() <span class="ruby-operator">==</span> <span class="ruby-value">13</span>
493
392
  <span class="ruby-keyword">end</span></pre>
494
393
  </div>
495
-
496
394
  </div>
497
395
 
498
-
499
396
 
500
-
501
397
  </div>
502
398
 
503
-
504
399
  <div id="method-i-sign" class="method-detail ">
505
-
506
400
  <div class="method-heading">
507
401
  <span class="method-name">sign</span><span
508
402
  class="method-args">(method_name, msg_bytes)</span>
509
-
510
403
  <span class="method-click-advice">click to toggle source</span>
511
-
512
404
  </div>
513
-
514
405
 
515
406
  <div class="method-description">
516
407
 
517
-
518
-
519
-
520
408
 
521
-
522
409
  <div class="method-source-code" id="sign-source">
523
- <pre><span class="ruby-comment"># File lib/strongdm.rb, line 57</span>
410
+ <pre><span class="ruby-comment"># File lib/strongdm.rb, line 64</span>
524
411
  <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">sign</span>(<span class="ruby-identifier">method_name</span>, <span class="ruby-identifier">msg_bytes</span>)
525
412
  <span class="ruby-identifier">current_utc_date</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>.<span class="ruby-identifier">utc</span>
526
413
  <span class="ruby-identifier">date</span> = <span class="ruby-identifier">sprintf</span>(<span class="ruby-string">&quot;%04d-%02d-%02d&quot;</span>,<span class="ruby-identifier">current_utc_date</span>.<span class="ruby-identifier">year</span>, <span class="ruby-identifier">current_utc_date</span>.<span class="ruby-identifier">month</span>, <span class="ruby-identifier">current_utc_date</span>.<span class="ruby-identifier">day</span>)
@@ -537,25 +424,20 @@
537
424
  <span class="ruby-keyword">return</span> <span class="ruby-constant">Base64</span>.<span class="ruby-identifier">strict_encode64</span>(<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">HMAC</span>.<span class="ruby-identifier">digest</span>(<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">SHA256</span>.<span class="ruby-identifier">new</span>, <span class="ruby-identifier">signing_key</span>, <span class="ruby-identifier">request_hash</span>))
538
425
  <span class="ruby-keyword">end</span></pre>
539
426
  </div>
540
-
541
427
  </div>
542
428
 
543
-
544
429
 
545
-
546
430
  </div>
547
431
 
548
-
549
432
  </section>
550
-
551
- </section>
552
433
 
434
+ </section>
553
435
  </main>
554
436
 
555
437
 
556
438
  <footer id="validator-badges" role="contentinfo">
557
439
  <p><a href="https://validator.w3.org/check/referer">Validate</a>
558
- <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.2.1.
440
+ <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.3.1.
559
441
  <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
560
442
  </footer>
561
443