@twin.org/api-auth-entity-storage-models 0.0.3-next.4 → 0.0.3-next.41

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.
Files changed (101) hide show
  1. package/README.md +2 -2
  2. package/dist/es/index.js +17 -0
  3. package/dist/es/index.js.map +1 -1
  4. package/dist/es/models/IAuthenticationAdminComponent.js.map +1 -1
  5. package/dist/es/models/IAuthenticationAuditComponent.js +2 -0
  6. package/dist/es/models/IAuthenticationAuditComponent.js.map +1 -0
  7. package/dist/es/models/IAuthenticationAuditEntry.js +2 -0
  8. package/dist/es/models/IAuthenticationAuditEntry.js.map +1 -0
  9. package/dist/es/models/IAuthenticationComponent.js.map +1 -1
  10. package/dist/es/models/IAuthenticationRateActionConfig.js +4 -0
  11. package/dist/es/models/IAuthenticationRateActionConfig.js.map +1 -0
  12. package/dist/es/models/IAuthenticationRateComponent.js +2 -0
  13. package/dist/es/models/IAuthenticationRateComponent.js.map +1 -0
  14. package/dist/es/models/IAuthenticationUser.js +4 -0
  15. package/dist/es/models/IAuthenticationUser.js.map +1 -0
  16. package/dist/es/models/IAuthenticationUserSecure.js +2 -0
  17. package/dist/es/models/IAuthenticationUserSecure.js.map +1 -0
  18. package/dist/es/models/api/IAdminUserCreateRequest.js +2 -0
  19. package/dist/es/models/api/IAdminUserCreateRequest.js.map +1 -0
  20. package/dist/es/models/api/IAdminUserGetByIdentityRequest.js +4 -0
  21. package/dist/es/models/api/IAdminUserGetByIdentityRequest.js.map +1 -0
  22. package/dist/es/models/api/IAdminUserGetRequest.js +4 -0
  23. package/dist/es/models/api/IAdminUserGetRequest.js.map +1 -0
  24. package/dist/es/models/api/IAdminUserGetResponse.js +2 -0
  25. package/dist/es/models/api/IAdminUserGetResponse.js.map +1 -0
  26. package/dist/es/models/api/IAdminUserRemoveRequest.js +4 -0
  27. package/dist/es/models/api/IAdminUserRemoveRequest.js.map +1 -0
  28. package/dist/es/models/api/IAdminUserUpdatePasswordRequest.js +4 -0
  29. package/dist/es/models/api/IAdminUserUpdatePasswordRequest.js.map +1 -0
  30. package/dist/es/models/api/IAdminUserUpdateRequest.js +2 -0
  31. package/dist/es/models/api/IAdminUserUpdateRequest.js.map +1 -0
  32. package/dist/es/models/api/IAuditCreateRequest.js +2 -0
  33. package/dist/es/models/api/IAuditCreateRequest.js.map +1 -0
  34. package/dist/es/models/api/IAuditQueryRequest.js +2 -0
  35. package/dist/es/models/api/IAuditQueryRequest.js.map +1 -0
  36. package/dist/es/models/api/IAuditQueryResponse.js +2 -0
  37. package/dist/es/models/api/IAuditQueryResponse.js.map +1 -0
  38. package/dist/es/models/api/ILoginResponse.js +0 -2
  39. package/dist/es/models/api/ILoginResponse.js.map +1 -1
  40. package/dist/es/models/api/ILogoutRequest.js.map +1 -1
  41. package/dist/es/models/api/IRefreshTokenRequest.js.map +1 -1
  42. package/dist/es/models/api/IRefreshTokenResponse.js +0 -2
  43. package/dist/es/models/api/IRefreshTokenResponse.js.map +1 -1
  44. package/dist/es/models/api/IUpdatePasswordRequest.js.map +1 -1
  45. package/dist/es/models/authAuditEvent.js +49 -0
  46. package/dist/es/models/authAuditEvent.js.map +1 -0
  47. package/dist/types/index.d.ts +17 -0
  48. package/dist/types/models/IAuthenticationAdminComponent.d.ts +24 -6
  49. package/dist/types/models/IAuthenticationAuditComponent.d.ts +40 -0
  50. package/dist/types/models/IAuthenticationAuditEntry.d.ts +50 -0
  51. package/dist/types/models/IAuthenticationComponent.d.ts +1 -2
  52. package/dist/types/models/IAuthenticationRateActionConfig.d.ts +13 -0
  53. package/dist/types/models/IAuthenticationRateComponent.d.ts +46 -0
  54. package/dist/types/models/IAuthenticationUser.d.ts +21 -0
  55. package/dist/types/models/IAuthenticationUserSecure.d.ts +18 -0
  56. package/dist/types/models/api/IAdminUserCreateRequest.d.ts +12 -0
  57. package/dist/types/models/api/IAdminUserGetByIdentityRequest.d.ts +14 -0
  58. package/dist/types/models/api/IAdminUserGetRequest.d.ts +14 -0
  59. package/dist/types/models/api/IAdminUserGetResponse.d.ts +10 -0
  60. package/dist/types/models/api/IAdminUserRemoveRequest.d.ts +14 -0
  61. package/dist/types/models/api/IAdminUserUpdatePasswordRequest.d.ts +27 -0
  62. package/dist/types/models/api/IAdminUserUpdateRequest.d.ts +19 -0
  63. package/dist/types/models/api/IAuditCreateRequest.d.ts +10 -0
  64. package/dist/types/models/api/IAuditQueryRequest.d.ts +47 -0
  65. package/dist/types/models/api/IAuditQueryResponse.d.ts +19 -0
  66. package/dist/types/models/api/ILoginResponse.d.ts +10 -4
  67. package/dist/types/models/api/ILogoutRequest.d.ts +1 -1
  68. package/dist/types/models/api/IRefreshTokenRequest.d.ts +1 -1
  69. package/dist/types/models/api/IRefreshTokenResponse.d.ts +10 -4
  70. package/dist/types/models/api/IUpdatePasswordRequest.d.ts +1 -10
  71. package/dist/types/models/authAuditEvent.d.ts +49 -0
  72. package/docs/changelog.md +335 -65
  73. package/docs/examples.md +80 -1
  74. package/docs/reference/index.md +24 -0
  75. package/docs/reference/interfaces/IAdminUserCreateRequest.md +17 -0
  76. package/docs/reference/interfaces/IAdminUserGetByIdentityRequest.md +17 -0
  77. package/docs/reference/interfaces/IAdminUserGetRequest.md +17 -0
  78. package/docs/reference/interfaces/IAdminUserGetResponse.md +11 -0
  79. package/docs/reference/interfaces/IAdminUserRemoveRequest.md +17 -0
  80. package/docs/reference/interfaces/IAdminUserUpdatePasswordRequest.md +37 -0
  81. package/docs/reference/interfaces/IAdminUserUpdateRequest.md +25 -0
  82. package/docs/reference/interfaces/IAuditCreateRequest.md +11 -0
  83. package/docs/reference/interfaces/IAuditQueryRequest.md +65 -0
  84. package/docs/reference/interfaces/IAuditQueryResponse.md +23 -0
  85. package/docs/reference/interfaces/IAuthenticationAdminComponent.md +64 -16
  86. package/docs/reference/interfaces/IAuthenticationAuditComponent.md +103 -0
  87. package/docs/reference/interfaces/IAuthenticationAuditEntry.md +91 -0
  88. package/docs/reference/interfaces/IAuthenticationComponent.md +5 -11
  89. package/docs/reference/interfaces/IAuthenticationRateActionConfig.md +19 -0
  90. package/docs/reference/interfaces/IAuthenticationRateComponent.md +165 -0
  91. package/docs/reference/interfaces/IAuthenticationUser.md +39 -0
  92. package/docs/reference/interfaces/IAuthenticationUserSecure.md +79 -0
  93. package/docs/reference/interfaces/ILoginRequest.md +1 -1
  94. package/docs/reference/interfaces/ILoginResponse.md +14 -6
  95. package/docs/reference/interfaces/ILogoutRequest.md +3 -3
  96. package/docs/reference/interfaces/IRefreshTokenRequest.md +3 -3
  97. package/docs/reference/interfaces/IRefreshTokenResponse.md +14 -6
  98. package/docs/reference/interfaces/IUpdatePasswordRequest.md +2 -16
  99. package/docs/reference/type-aliases/AuthAuditEvent.md +5 -0
  100. package/docs/reference/variables/AuthAuditEvent.md +67 -0
  101. package/package.json +4 -4
@@ -0,0 +1,165 @@
1
+ # Interface: IAuthenticationRateComponent
2
+
3
+ Contract definition for authentication rate component.
4
+
5
+ ## Extends
6
+
7
+ - `IComponent`
8
+
9
+ ## Methods
10
+
11
+ ### start() {#start}
12
+
13
+ > **start**(`nodeLoggingComponentType?`): `Promise`\<`void`\>
14
+
15
+ The service needs to be started when the application is initialized.
16
+
17
+ #### Parameters
18
+
19
+ ##### nodeLoggingComponentType?
20
+
21
+ `string`
22
+
23
+ The node logging component type.
24
+
25
+ #### Returns
26
+
27
+ `Promise`\<`void`\>
28
+
29
+ Nothing.
30
+
31
+ #### Overrides
32
+
33
+ `IComponent.start`
34
+
35
+ ***
36
+
37
+ ### stop() {#stop}
38
+
39
+ > **stop**(`nodeLoggingComponentType?`): `Promise`\<`void`\>
40
+
41
+ The component needs to be stopped when the node is closed.
42
+
43
+ #### Parameters
44
+
45
+ ##### nodeLoggingComponentType?
46
+
47
+ `string`
48
+
49
+ The node logging component type.
50
+
51
+ #### Returns
52
+
53
+ `Promise`\<`void`\>
54
+
55
+ Nothing.
56
+
57
+ #### Overrides
58
+
59
+ `IComponent.stop`
60
+
61
+ ***
62
+
63
+ ### registerAction() {#registeraction}
64
+
65
+ > **registerAction**(`action`, `config`): `Promise`\<`void`\>
66
+
67
+ Register or update rate-limit configuration for an action.
68
+
69
+ #### Parameters
70
+
71
+ ##### action
72
+
73
+ `string`
74
+
75
+ The action name.
76
+
77
+ ##### config
78
+
79
+ [`IAuthenticationRateActionConfig`](IAuthenticationRateActionConfig.md)
80
+
81
+ The action configuration.
82
+
83
+ #### Returns
84
+
85
+ `Promise`\<`void`\>
86
+
87
+ Nothing.
88
+
89
+ ***
90
+
91
+ ### unregisterAction() {#unregisteraction}
92
+
93
+ > **unregisterAction**(`action`): `Promise`\<`void`\>
94
+
95
+ Unregister rate-limit configuration for an action.
96
+
97
+ #### Parameters
98
+
99
+ ##### action
100
+
101
+ `string`
102
+
103
+ The action name.
104
+
105
+ #### Returns
106
+
107
+ `Promise`\<`void`\>
108
+
109
+ Nothing.
110
+
111
+ ***
112
+
113
+ ### check() {#check}
114
+
115
+ > **check**(`action`, `identifier`): `Promise`\<`string`\>
116
+
117
+ Check the authentication rate for a given action and identifier.
118
+
119
+ #### Parameters
120
+
121
+ ##### action
122
+
123
+ `string`
124
+
125
+ The action to be checked.
126
+
127
+ ##### identifier
128
+
129
+ `string`
130
+
131
+ The identifier to be checked.
132
+
133
+ #### Returns
134
+
135
+ `Promise`\<`string`\>
136
+
137
+ The result of the rate check.
138
+
139
+ ***
140
+
141
+ ### clear() {#clear}
142
+
143
+ > **clear**(`action`, `identifier`): `Promise`\<`void`\>
144
+
145
+ Clear the authentication rate entry for the given action and identifier.
146
+
147
+ #### Parameters
148
+
149
+ ##### action
150
+
151
+ `string`
152
+
153
+ The action to clear.
154
+
155
+ ##### identifier
156
+
157
+ `string`
158
+
159
+ The identifier to clear.
160
+
161
+ #### Returns
162
+
163
+ `Promise`\<`void`\>
164
+
165
+ Nothing.
@@ -0,0 +1,39 @@
1
+ # Interface: IAuthenticationUser
2
+
3
+ Contract definition for authentication user.
4
+
5
+ ## Extended by
6
+
7
+ - [`IAuthenticationUserSecure`](IAuthenticationUserSecure.md)
8
+
9
+ ## Properties
10
+
11
+ ### email {#email}
12
+
13
+ > **email**: `string`
14
+
15
+ The user e-mail address.
16
+
17
+ ***
18
+
19
+ ### userIdentity {#useridentity}
20
+
21
+ > **userIdentity**: `string`
22
+
23
+ The user identity.
24
+
25
+ ***
26
+
27
+ ### organizationIdentity {#organizationidentity}
28
+
29
+ > **organizationIdentity**: `string`
30
+
31
+ The users organization.
32
+
33
+ ***
34
+
35
+ ### scope {#scope}
36
+
37
+ > **scope**: `string`[]
38
+
39
+ The scope assigned to the user, comma separated.
@@ -0,0 +1,79 @@
1
+ # Interface: IAuthenticationUserSecure
2
+
3
+ Contract definition for authentication user.
4
+
5
+ ## Extends
6
+
7
+ - [`IAuthenticationUser`](IAuthenticationUser.md)
8
+
9
+ ## Properties
10
+
11
+ ### email {#email}
12
+
13
+ > **email**: `string`
14
+
15
+ The user e-mail address.
16
+
17
+ #### Inherited from
18
+
19
+ [`IAuthenticationUser`](IAuthenticationUser.md).[`email`](IAuthenticationUser.md#email)
20
+
21
+ ***
22
+
23
+ ### userIdentity {#useridentity}
24
+
25
+ > **userIdentity**: `string`
26
+
27
+ The user identity.
28
+
29
+ #### Inherited from
30
+
31
+ [`IAuthenticationUser`](IAuthenticationUser.md).[`userIdentity`](IAuthenticationUser.md#useridentity)
32
+
33
+ ***
34
+
35
+ ### organizationIdentity {#organizationidentity}
36
+
37
+ > **organizationIdentity**: `string`
38
+
39
+ The users organization.
40
+
41
+ #### Inherited from
42
+
43
+ [`IAuthenticationUser`](IAuthenticationUser.md).[`organizationIdentity`](IAuthenticationUser.md#organizationidentity)
44
+
45
+ ***
46
+
47
+ ### scope {#scope}
48
+
49
+ > **scope**: `string`[]
50
+
51
+ The scope assigned to the user, comma separated.
52
+
53
+ #### Inherited from
54
+
55
+ [`IAuthenticationUser`](IAuthenticationUser.md).[`scope`](IAuthenticationUser.md#scope)
56
+
57
+ ***
58
+
59
+ ### password {#password}
60
+
61
+ > **password**: `string`
62
+
63
+ The encrypted password for the user.
64
+
65
+ ***
66
+
67
+ ### salt {#salt}
68
+
69
+ > **salt**: `string`
70
+
71
+ The salt for the password.
72
+
73
+ ***
74
+
75
+ ### tenantId {#tenantid}
76
+
77
+ > **tenantId**: `string`
78
+
79
+ The tenant ID associated with the user, optional in single tenant contexts.
@@ -4,7 +4,7 @@ Perform a login on the server.
4
4
 
5
5
  ## Properties
6
6
 
7
- ### body
7
+ ### body {#body}
8
8
 
9
9
  > **body**: `object`
10
10
 
@@ -4,17 +4,25 @@ Response from a login on the server.
4
4
 
5
5
  ## Properties
6
6
 
7
- ### body
7
+ ### headers? {#headers}
8
8
 
9
- > **body**: `object`
9
+ > `optional` **headers?**: `object`
10
10
 
11
- The login response details.
11
+ Response headers.
12
+
13
+ #### set-cookie?
14
+
15
+ > `optional` **set-cookie?**: `string`
12
16
 
13
- #### token?
17
+ The cookie containing the auth token.
14
18
 
15
- > `optional` **token**: `string`
19
+ ***
16
20
 
17
- The access token, if it uses a mechanism with public access.
21
+ ### body {#body}
22
+
23
+ > **body**: `object`
24
+
25
+ The login response details.
18
26
 
19
27
  #### expiry
20
28
 
@@ -4,14 +4,14 @@ Perform a logout on the auth token.
4
4
 
5
5
  ## Properties
6
6
 
7
- ### query?
7
+ ### body? {#body}
8
8
 
9
- > `optional` **query**: `object`
9
+ > `optional` **body?**: `object`
10
10
 
11
11
  The logout token details.
12
12
 
13
13
  #### token?
14
14
 
15
- > `optional` **token**: `string`
15
+ > `optional` **token?**: `string`
16
16
 
17
17
  The token to logout, if it uses a mechanism with public access.
@@ -4,14 +4,14 @@ Perform a refresh of the auth token.
4
4
 
5
5
  ## Properties
6
6
 
7
- ### query?
7
+ ### body? {#body}
8
8
 
9
- > `optional` **query**: `object`
9
+ > `optional` **body?**: `object`
10
10
 
11
11
  The refresh token details.
12
12
 
13
13
  #### token?
14
14
 
15
- > `optional` **token**: `string`
15
+ > `optional` **token?**: `string`
16
16
 
17
17
  The token to refresh, if it uses a mechanism with public access.
@@ -4,17 +4,25 @@ Response from a refresh on the auth token.
4
4
 
5
5
  ## Properties
6
6
 
7
- ### body
7
+ ### headers? {#headers}
8
8
 
9
- > **body**: `object`
9
+ > `optional` **headers?**: `object`
10
10
 
11
- The refresh token details.
11
+ Response headers.
12
+
13
+ #### set-cookie?
14
+
15
+ > `optional` **set-cookie?**: `string`
12
16
 
13
- #### token?
17
+ The cookie containing the auth token.
14
18
 
15
- > `optional` **token**: `string`
19
+ ***
16
20
 
17
- The refreshed token, if it uses a mechanism with public access.
21
+ ### body {#body}
22
+
23
+ > **body**: `object`
24
+
25
+ The refresh token details.
18
26
 
19
27
  #### expiry
20
28
 
@@ -1,24 +1,10 @@
1
1
  # Interface: IUpdatePasswordRequest
2
2
 
3
- Update a users password.
3
+ Update the current user's password.
4
4
 
5
5
  ## Properties
6
6
 
7
- ### pathParams
8
-
9
- > **pathParams**: `object`
10
-
11
- The path parameters for the request.
12
-
13
- #### email
14
-
15
- > **email**: `string`
16
-
17
- The user email.
18
-
19
- ***
20
-
21
- ### body
7
+ ### body {#body}
22
8
 
23
9
  > **body**: `object`
24
10
 
@@ -0,0 +1,5 @@
1
+ # Type Alias: AuthAuditEvent
2
+
3
+ > **AuthAuditEvent** = *typeof* [`AuthAuditEvent`](../variables/AuthAuditEvent.md)\[keyof *typeof* [`AuthAuditEvent`](../variables/AuthAuditEvent.md)\]
4
+
5
+ Supported authentication audit event values.
@@ -0,0 +1,67 @@
1
+ # Variable: AuthAuditEvent
2
+
3
+ > `const` **AuthAuditEvent**: `object`
4
+
5
+ Supported authentication audit events.
6
+
7
+ ## Type Declaration
8
+
9
+ ### LoginSuccess {#loginsuccess}
10
+
11
+ > `readonly` **LoginSuccess**: `"login-success"` = `"login-success"`
12
+
13
+ Login success.
14
+
15
+ ### LoginFailure {#loginfailure}
16
+
17
+ > `readonly` **LoginFailure**: `"login-failure"` = `"login-failure"`
18
+
19
+ Login failure.
20
+
21
+ ### Logout {#logout}
22
+
23
+ > `readonly` **Logout**: `"logout"` = `"logout"`
24
+
25
+ Logout.
26
+
27
+ ### TokenRefreshed {#tokenrefreshed}
28
+
29
+ > `readonly` **TokenRefreshed**: `"token-refreshed"` = `"token-refreshed"`
30
+
31
+ Token refreshed.
32
+
33
+ ### AccountCreated {#accountcreated}
34
+
35
+ > `readonly` **AccountCreated**: `"account-created"` = `"account-created"`
36
+
37
+ Account created.
38
+
39
+ ### AccountDeleted {#accountdeleted}
40
+
41
+ > `readonly` **AccountDeleted**: `"account-deleted"` = `"account-deleted"`
42
+
43
+ Account deleted.
44
+
45
+ ### AccountUpdated {#accountupdated}
46
+
47
+ > `readonly` **AccountUpdated**: `"account-updated"` = `"account-updated"`
48
+
49
+ Account updated.
50
+
51
+ ### AccountLocked {#accountlocked}
52
+
53
+ > `readonly` **AccountLocked**: `"account-locked"` = `"account-locked"`
54
+
55
+ Account locked.
56
+
57
+ ### AccountUnlocked {#accountunlocked}
58
+
59
+ > `readonly` **AccountUnlocked**: `"account-unlocked"` = `"account-unlocked"`
60
+
61
+ Account unlocked.
62
+
63
+ ### PasswordChanged {#passwordchanged}
64
+
65
+ > `readonly` **PasswordChanged**: `"password-changed"` = `"password-changed"`
66
+
67
+ Password changed.
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@twin.org/api-auth-entity-storage-models",
3
- "version": "0.0.3-next.4",
4
- "description": "Models which define the structure of the Auth Entity Storage contracts.",
3
+ "version": "0.0.3-next.41",
4
+ "description": "Contracts for authentication flows and admin user management with entity storage.",
5
5
  "repository": {
6
6
  "type": "git",
7
- "url": "git+https://github.com/twinfoundation/api.git",
7
+ "url": "git+https://github.com/iotaledger/twin-api.git",
8
8
  "directory": "packages/api-auth-entity-storage-models"
9
9
  },
10
10
  "author": "martyn.janes@iota.org",
@@ -49,7 +49,7 @@
49
49
  "schemas"
50
50
  ],
51
51
  "bugs": {
52
- "url": "git+https://github.com/twinfoundation/api/issues"
52
+ "url": "git+https://github.com/iotaledger/twin-api/issues"
53
53
  },
54
54
  "homepage": "https://twindev.org"
55
55
  }