2
2
3
3
from typing import Union
4
4
5
- from .ip_rule import IPRule
5
+ from pydantic import Field as FieldInfo
6
+
6
7
from ..._models import BaseModel
7
- from .email_rule import EmailRule
8
8
from .group_rule import GroupRule
9
- from .domain_rule import DomainRule
10
- from .country_rule import CountryRule
11
- from .ip_list_rule import IPListRule
12
- from .everyone_rule import EveryoneRule
13
- from .email_list_rule import EmailListRule
14
- from .okta_group_rule import OktaGroupRule
15
- from .saml_group_rule import SAMLGroupRule
16
- from .azure_group_rule import AzureGroupRule
17
- from .certificate_rule import CertificateRule
18
- from .gsuite_group_rule import GSuiteGroupRule
19
- from .service_token_rule import ServiceTokenRule
20
- from .external_evaluation_rule import ExternalEvaluationRule
21
- from .github_organization_rule import GitHubOrganizationRule
22
9
23
10
__all__ = [
24
11
"AccessRule" ,
12
+ "AccessEmailRule" ,
13
+ "AccessEmailRuleEmail" ,
14
+ "AccessEmailListRule" ,
15
+ "AccessEmailListRuleEmailList" ,
16
+ "AccessDomainRule" ,
17
+ "AccessDomainRuleEmailDomain" ,
18
+ "AccessEveryoneRule" ,
19
+ "AccessIPRule" ,
20
+ "AccessIPRuleIP" ,
21
+ "AccessIPListRule" ,
22
+ "AccessIPListRuleIPList" ,
23
+ "AccessCertificateRule" ,
24
+ "AccessAzureGroupRule" ,
25
+ "AccessAzureGroupRuleAzureAD" ,
26
+ "AccessGitHubOrganizationRule" ,
27
+ "AccessGitHubOrganizationRuleGitHubOrganization" ,
28
+ "AccessGSuiteGroupRule" ,
29
+ "AccessGSuiteGroupRuleGSuite" ,
30
+ "AccessOktaGroupRule" ,
31
+ "AccessOktaGroupRuleOkta" ,
32
+ "AccessSAMLGroupRule" ,
33
+ "AccessSAMLGroupRuleSAML" ,
34
+ "AccessServiceTokenRule" ,
35
+ "AccessServiceTokenRuleServiceToken" ,
25
36
"AccessAnyValidServiceTokenRule" ,
37
+ "AccessExternalEvaluationRule" ,
38
+ "AccessExternalEvaluationRuleExternalEvaluation" ,
39
+ "AccessCountryRule" ,
40
+ "AccessCountryRuleGeo" ,
26
41
"AccessAuthenticationMethodRule" ,
27
42
"AccessAuthenticationMethodRuleAuthMethod" ,
28
43
"AccessDevicePostureRule" ,
29
44
"AccessDevicePostureRuleDevicePosture" ,
30
45
]
31
46
32
47
48
+ class AccessEmailRuleEmail (BaseModel ):
49
+ email : str
50
+ """The email of the user."""
51
+
52
+
53
+ class AccessEmailRule (BaseModel ):
54
+ email : AccessEmailRuleEmail
55
+
56
+
57
+ class AccessEmailListRuleEmailList (BaseModel ):
58
+ id : str
59
+ """The ID of a previously created email list."""
60
+
61
+
62
+ class AccessEmailListRule (BaseModel ):
63
+ email_list : AccessEmailListRuleEmailList
64
+
65
+
66
+ class AccessDomainRuleEmailDomain (BaseModel ):
67
+ domain : str
68
+ """The email domain to match."""
69
+
70
+
71
+ class AccessDomainRule (BaseModel ):
72
+ email_domain : AccessDomainRuleEmailDomain
73
+
74
+
75
+ class AccessEveryoneRule (BaseModel ):
76
+ everyone : object
77
+ """An empty object which matches on all users."""
78
+
79
+
80
+ class AccessIPRuleIP (BaseModel ):
81
+ ip : str
82
+ """An IPv4 or IPv6 CIDR block."""
83
+
84
+
85
+ class AccessIPRule (BaseModel ):
86
+ ip : AccessIPRuleIP
87
+
88
+
89
+ class AccessIPListRuleIPList (BaseModel ):
90
+ id : str
91
+ """The ID of a previously created IP list."""
92
+
93
+
94
+ class AccessIPListRule (BaseModel ):
95
+ ip_list : AccessIPListRuleIPList
96
+
97
+
98
+ class AccessCertificateRule (BaseModel ):
99
+ certificate : object
100
+
101
+
102
+ class AccessAzureGroupRuleAzureAD (BaseModel ):
103
+ id : str
104
+ """The ID of an Azure group."""
105
+
106
+ connection_id : str
107
+ """The ID of your Azure identity provider."""
108
+
109
+
110
+ class AccessAzureGroupRule (BaseModel ):
111
+ azure_ad : AccessAzureGroupRuleAzureAD = FieldInfo (alias = "azureAD" )
112
+
113
+
114
+ class AccessGitHubOrganizationRuleGitHubOrganization (BaseModel ):
115
+ connection_id : str
116
+ """The ID of your Github identity provider."""
117
+
118
+ name : str
119
+ """The name of the organization."""
120
+
121
+
122
+ class AccessGitHubOrganizationRule (BaseModel ):
123
+ github_organization : AccessGitHubOrganizationRuleGitHubOrganization = FieldInfo (alias = "github-organization" )
124
+
125
+
126
+ class AccessGSuiteGroupRuleGSuite (BaseModel ):
127
+ connection_id : str
128
+ """The ID of your Google Workspace identity provider."""
129
+
130
+ email : str
131
+ """The email of the Google Workspace group."""
132
+
133
+
134
+ class AccessGSuiteGroupRule (BaseModel ):
135
+ gsuite : AccessGSuiteGroupRuleGSuite
136
+
137
+
138
+ class AccessOktaGroupRuleOkta (BaseModel ):
139
+ connection_id : str
140
+ """The ID of your Okta identity provider."""
141
+
142
+ email : str
143
+ """The email of the Okta group."""
144
+
145
+
146
+ class AccessOktaGroupRule (BaseModel ):
147
+ okta : AccessOktaGroupRuleOkta
148
+
149
+
150
+ class AccessSAMLGroupRuleSAML (BaseModel ):
151
+ attribute_name : str
152
+ """The name of the SAML attribute."""
153
+
154
+ attribute_value : str
155
+ """The SAML attribute value to look for."""
156
+
157
+
158
+ class AccessSAMLGroupRule (BaseModel ):
159
+ saml : AccessSAMLGroupRuleSAML
160
+
161
+
162
+ class AccessServiceTokenRuleServiceToken (BaseModel ):
163
+ token_id : str
164
+ """The ID of a Service Token."""
165
+
166
+
167
+ class AccessServiceTokenRule (BaseModel ):
168
+ service_token : AccessServiceTokenRuleServiceToken
169
+
170
+
33
171
class AccessAnyValidServiceTokenRule (BaseModel ):
34
172
any_valid_service_token : object
35
173
"""An empty object which matches on all service tokens."""
36
174
37
175
176
+ class AccessExternalEvaluationRuleExternalEvaluation (BaseModel ):
177
+ evaluate_url : str
178
+ """The API endpoint containing your business logic."""
179
+
180
+ keys_url : str
181
+ """
182
+ The API endpoint containing the key that Access uses to verify that the response
183
+ came from your API.
184
+ """
185
+
186
+
187
+ class AccessExternalEvaluationRule (BaseModel ):
188
+ external_evaluation : AccessExternalEvaluationRuleExternalEvaluation
189
+
190
+
191
+ class AccessCountryRuleGeo (BaseModel ):
192
+ country_code : str
193
+ """The country code that should be matched."""
194
+
195
+
196
+ class AccessCountryRule (BaseModel ):
197
+ geo : AccessCountryRuleGeo
198
+
199
+
38
200
class AccessAuthenticationMethodRuleAuthMethod (BaseModel ):
39
201
auth_method : str
40
202
"""
@@ -56,23 +218,23 @@ class AccessDevicePostureRule(BaseModel):
56
218
57
219
58
220
AccessRule = Union [
59
- EmailRule ,
60
- EmailListRule ,
61
- DomainRule ,
62
- EveryoneRule ,
63
- IPRule ,
64
- IPListRule ,
65
- CertificateRule ,
221
+ AccessEmailRule ,
222
+ AccessEmailListRule ,
223
+ AccessDomainRule ,
224
+ AccessEveryoneRule ,
225
+ AccessIPRule ,
226
+ AccessIPListRule ,
227
+ AccessCertificateRule ,
66
228
GroupRule ,
67
- AzureGroupRule ,
68
- GitHubOrganizationRule ,
69
- GSuiteGroupRule ,
70
- OktaGroupRule ,
71
- SAMLGroupRule ,
72
- ServiceTokenRule ,
229
+ AccessAzureGroupRule ,
230
+ AccessGitHubOrganizationRule ,
231
+ AccessGSuiteGroupRule ,
232
+ AccessOktaGroupRule ,
233
+ AccessSAMLGroupRule ,
234
+ AccessServiceTokenRule ,
73
235
AccessAnyValidServiceTokenRule ,
74
- ExternalEvaluationRule ,
75
- CountryRule ,
236
+ AccessExternalEvaluationRule ,
237
+ AccessCountryRule ,
76
238
AccessAuthenticationMethodRule ,
77
239
AccessDevicePostureRule ,
78
240
]
0 commit comments