diff --git a/api.md b/api.md index e04b35b40b3..55c4cdaf33a 100644 --- a/api.md +++ b/api.md @@ -4422,7 +4422,6 @@ Methods: Params Types: - zero_trust.AccessRuleUnionParam -- zero_trust.AuthenticationMethodRuleParam - zero_trust.AzureGroupRuleParam - zero_trust.CertificateRuleParam - zero_trust.CountryRuleParam @@ -4443,7 +4442,6 @@ Params Types: Response Types: - zero_trust.AccessRule -- zero_trust.AuthenticationMethodRule - zero_trust.AzureGroupRule - zero_trust.CertificateRule - zero_trust.CountryRule diff --git a/zero_trust/access.go b/zero_trust/access.go index a1d1b91ed27..86e8d5926dc 100644 --- a/zero_trust/access.go +++ b/zero_trust/access.go @@ -124,7 +124,7 @@ func (r AccessRule) AsUnion() AccessRuleUnion { // [zero_trust.SAMLGroupRule], [zero_trust.ServiceTokenRule], // [zero_trust.AccessRuleAccessAnyValidServiceTokenRule], // [zero_trust.ExternalEvaluationRule], [zero_trust.CountryRule], -// [zero_trust.AuthenticationMethodRule] or +// [zero_trust.AccessRuleAccessAuthenticationMethodRule] or // [zero_trust.AccessRuleAccessDevicePostureRule]. type AccessRuleUnion interface { implementsZeroTrustAccessRule() @@ -204,7 +204,7 @@ func init() { }, apijson.UnionVariant{ TypeFilter: gjson.JSON, - Type: reflect.TypeOf(AuthenticationMethodRule{}), + Type: reflect.TypeOf(AccessRuleAccessAuthenticationMethodRule{}), }, apijson.UnionVariant{ TypeFilter: gjson.JSON, @@ -238,6 +238,52 @@ func (r accessRuleAccessAnyValidServiceTokenRuleJSON) RawJSON() string { func (r AccessRuleAccessAnyValidServiceTokenRule) implementsZeroTrustAccessRule() {} +// Enforce different MFA options +type AccessRuleAccessAuthenticationMethodRule struct { + AuthMethod AccessRuleAccessAuthenticationMethodRuleAuthMethod `json:"auth_method,required"` + JSON accessRuleAccessAuthenticationMethodRuleJSON `json:"-"` +} + +// accessRuleAccessAuthenticationMethodRuleJSON contains the JSON metadata for the +// struct [AccessRuleAccessAuthenticationMethodRule] +type accessRuleAccessAuthenticationMethodRuleJSON struct { + AuthMethod apijson.Field + raw string + ExtraFields map[string]apijson.Field +} + +func (r *AccessRuleAccessAuthenticationMethodRule) UnmarshalJSON(data []byte) (err error) { + return apijson.UnmarshalRoot(data, r) +} + +func (r accessRuleAccessAuthenticationMethodRuleJSON) RawJSON() string { + return r.raw +} + +func (r AccessRuleAccessAuthenticationMethodRule) implementsZeroTrustAccessRule() {} + +type AccessRuleAccessAuthenticationMethodRuleAuthMethod struct { + // The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176. + AuthMethod string `json:"auth_method,required"` + JSON accessRuleAccessAuthenticationMethodRuleAuthMethodJSON `json:"-"` +} + +// accessRuleAccessAuthenticationMethodRuleAuthMethodJSON contains the JSON +// metadata for the struct [AccessRuleAccessAuthenticationMethodRuleAuthMethod] +type accessRuleAccessAuthenticationMethodRuleAuthMethodJSON struct { + AuthMethod apijson.Field + raw string + ExtraFields map[string]apijson.Field +} + +func (r *AccessRuleAccessAuthenticationMethodRuleAuthMethod) UnmarshalJSON(data []byte) (err error) { + return apijson.UnmarshalRoot(data, r) +} + +func (r accessRuleAccessAuthenticationMethodRuleAuthMethodJSON) RawJSON() string { + return r.raw +} + // Enforces a device posture rule has run successfully type AccessRuleAccessDevicePostureRule struct { DevicePosture AccessRuleAccessDevicePostureRuleDevicePosture `json:"device_posture,required"` @@ -324,7 +370,7 @@ func (r AccessRuleParam) implementsZeroTrustAccessRuleUnionParam() {} // [zero_trust.SAMLGroupRuleParam], [zero_trust.ServiceTokenRuleParam], // [zero_trust.AccessRuleAccessAnyValidServiceTokenRuleParam], // [zero_trust.ExternalEvaluationRuleParam], [zero_trust.CountryRuleParam], -// [zero_trust.AuthenticationMethodRuleParam], +// [zero_trust.AccessRuleAccessAuthenticationMethodRuleParam], // [zero_trust.AccessRuleAccessDevicePostureRuleParam], [AccessRuleParam]. type AccessRuleUnionParam interface { implementsZeroTrustAccessRuleUnionParam() @@ -342,183 +388,43 @@ func (r AccessRuleAccessAnyValidServiceTokenRuleParam) MarshalJSON() (data []byt func (r AccessRuleAccessAnyValidServiceTokenRuleParam) implementsZeroTrustAccessRuleUnionParam() {} -// Enforces a device posture rule has run successfully -type AccessRuleAccessDevicePostureRuleParam struct { - DevicePosture param.Field[AccessRuleAccessDevicePostureRuleDevicePostureParam] `json:"device_posture,required"` -} - -func (r AccessRuleAccessDevicePostureRuleParam) MarshalJSON() (data []byte, err error) { - return apijson.MarshalRoot(r) -} - -func (r AccessRuleAccessDevicePostureRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -type AccessRuleAccessDevicePostureRuleDevicePostureParam struct { - // The ID of a device posture integration. - IntegrationUid param.Field[string] `json:"integration_uid,required"` -} - -func (r AccessRuleAccessDevicePostureRuleDevicePostureParam) MarshalJSON() (data []byte, err error) { - return apijson.MarshalRoot(r) -} - // Enforce different MFA options -type AuthenticationMethodRule struct { - AuthMethod AuthenticationMethodRuleAuthMethod `json:"auth_method,required"` - JSON authenticationMethodRuleJSON `json:"-"` +type AccessRuleAccessAuthenticationMethodRuleParam struct { + AuthMethod param.Field[AccessRuleAccessAuthenticationMethodRuleAuthMethodParam] `json:"auth_method,required"` } -// authenticationMethodRuleJSON contains the JSON metadata for the struct -// [AuthenticationMethodRule] -type authenticationMethodRuleJSON struct { - AuthMethod apijson.Field - raw string - ExtraFields map[string]apijson.Field -} - -func (r *AuthenticationMethodRule) UnmarshalJSON(data []byte) (err error) { - return apijson.UnmarshalRoot(data, r) -} - -func (r authenticationMethodRuleJSON) RawJSON() string { - return r.raw +func (r AccessRuleAccessAuthenticationMethodRuleParam) MarshalJSON() (data []byte, err error) { + return apijson.MarshalRoot(r) } -func (r AuthenticationMethodRule) implementsZeroTrustAccessRule() {} +func (r AccessRuleAccessAuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} -type AuthenticationMethodRuleAuthMethod struct { +type AccessRuleAccessAuthenticationMethodRuleAuthMethodParam struct { // The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176. - AuthMethod string `json:"auth_method,required"` - JSON authenticationMethodRuleAuthMethodJSON `json:"-"` -} - -// authenticationMethodRuleAuthMethodJSON contains the JSON metadata for the struct -// [AuthenticationMethodRuleAuthMethod] -type authenticationMethodRuleAuthMethodJSON struct { - AuthMethod apijson.Field - raw string - ExtraFields map[string]apijson.Field -} - -func (r *AuthenticationMethodRuleAuthMethod) UnmarshalJSON(data []byte) (err error) { - return apijson.UnmarshalRoot(data, r) + AuthMethod param.Field[string] `json:"auth_method,required"` } -func (r authenticationMethodRuleAuthMethodJSON) RawJSON() string { - return r.raw +func (r AccessRuleAccessAuthenticationMethodRuleAuthMethodParam) MarshalJSON() (data []byte, err error) { + return apijson.MarshalRoot(r) } -// Enforce different MFA options -type AuthenticationMethodRuleParam struct { - AuthMethod param.Field[AuthenticationMethodRuleAuthMethodParam] `json:"auth_method,required"` +// Enforces a device posture rule has run successfully +type AccessRuleAccessDevicePostureRuleParam struct { + DevicePosture param.Field[AccessRuleAccessDevicePostureRuleDevicePostureParam] `json:"device_posture,required"` } -func (r AuthenticationMethodRuleParam) MarshalJSON() (data []byte, err error) { +func (r AccessRuleAccessDevicePostureRuleParam) MarshalJSON() (data []byte, err error) { return apijson.MarshalRoot(r) } -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} - -func (r AuthenticationMethodRuleParam) implementsZeroTrustAccessRuleUnionParam() {} +func (r AccessRuleAccessDevicePostureRuleParam) implementsZeroTrustAccessRuleUnionParam() {} -type AuthenticationMethodRuleAuthMethodParam struct { - // The type of authentication method https://datatracker.ietf.org/doc/html/rfc8176. - AuthMethod param.Field[string] `json:"auth_method,required"` +type AccessRuleAccessDevicePostureRuleDevicePostureParam struct { + // The ID of a device posture integration. + IntegrationUid param.Field[string] `json:"integration_uid,required"` } -func (r AuthenticationMethodRuleAuthMethodParam) MarshalJSON() (data []byte, err error) { +func (r AccessRuleAccessDevicePostureRuleDevicePostureParam) MarshalJSON() (data []byte, err error) { return apijson.MarshalRoot(r) }