Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PolicyRule does not allow a null Priority to be specified. #719

Closed
rcollette opened this issue May 28, 2024 · 1 comment · Fixed by #739
Closed

PolicyRule does not allow a null Priority to be specified. #719

rcollette opened this issue May 28, 2024 · 1 comment · Fixed by #739

Comments

@rcollette
Copy link

rcollette commented May 28, 2024

Describe the bug?

When creating an IdpDiscoveryPolicy, the API allows a null value to be specified for the rule, in which case the rule will be added just prior to the default rule. The SDK declares the PolicyRule.Priority property as type int rather than as type int? which prevents passing a null value when creating an IdpDiscoveryPolicyRule.

The value is specifically documented as not being required:
https://developer.okta.com/docs/reference/api/policy/#policy-object

What is expected to happen?

I should be able to not specify a value for Priority and have it send a null value.

What is the actual behavior?

A priority of zero is sent when I don't specify a Priority, and an error results since 1 is the minimum allowed value.

Reproduction Steps?

This is pretty straight forward to identify.

Additional Information?

No response

.NET Version

8.0.300

SDK Version

7.0.6

OS version

Darwin MacBook-Pro-3.local 23.4.0 Darwin Kernel Version 23.4.0: Fri Mar 15 00:10:42 PDT 2024; root:xnu-10063.101.17~1/RELEASE_ARM64_T6000 arm64

@rcollette rcollette added the bug label May 28, 2024
@bryanapellanes-okta
Copy link
Contributor

@rcollette Thanks for reporting this. I've added an internal issue for tracking.

OKTA-735157

bryanapellanes-okta added a commit that referenced this issue Oct 3, 2024
### Fixed

- Factors Api doesn't return factors setup on users (#650)
- AppAndInstanceConditionEvaluatorAppOrInstance ID property setter is private (#718)
- PolicyRule does not allow a null Priority to be specified. (#719)

### Changed

- ApiTokenApi
  - ListApiTokens
    - parameters removed.
- ApplicationTokensApi
  - ListOAuth2TokensForApplication
    - return type OAuth2Token changed to OAuth2RefreshToken.
  - GetOAuth2TokenForApplication
    - return type OAuth2Token changed to OAuth2RefreshToken.
- ApplicationUsersApi
  - AssignUserToApplication
    - parameter of type AppUser changed to AppUserAssignRequest.
  - UpdateApplicationUser
    - parameter of type AppUser changed to AppUserUpdateRequest.
- AuthenticatorApi
  - ListAuthenticators
    - return type Authenticator changed to AuthenticatorBase
- AuthorizationServerKeysApi
  - ListAuthorizationServerKeys
    - return type collection of JsonWebKey changed to collection of AuthorizationServerJsonWebKey.
  - RotateAuthorizationServerKeys
    - return type collection of JsonWebKey changed to collection of AuthorizationServerJsonWebKey.
- CustomTemplatesApi
  - ListEmailTemplates
    - return type EmailTemplate changed to EmailTemplateResponse.
  - GetEmailTemplate
    - return type EmailTemplate changed to EmailTemplateResponse.
  - GetEmailSettings
    - return type EmailSettings changed to EmailSettingsResponse.
- ThemesApi
  - ReplaceBrandTheme
    - parameter of type Theme changed to UpdateThemeRequest
- DeviceApi
  - ListDevices
    - return type collection of Device changed to collection of DeviceList.
- ApplicationConnectionsApi
  - GetDefaultProvisioningConnectionForApplication
    - return type ProvisioningConnection changed to ProvisioningConnectionResponse
  - UpdateDefaultProvisioningConnectionForApplication
    - return type ProvisioningConnection changed to ProvisioningConnectionResponse
- AuthenticatorApi methods that previously returned Authenticator now return AuthenticatorBase.
- GroupApi
  - ListGroupUsers
    - return type collection of User changed to collectio of GroupMember.
- RealmApi
  - CreateRealm
    - parameter of type Realm changed to CreateRealmRequest.
- UserFacorApi
  - ResendEnrollFactor 
    - parameter of type UserFactor changed to ResendUserFactor.
    - return type UserFactor changed to ResendUserFactor.
  - GetFactorTransactionStatus
    - return type VerifyUserFactorResponse changed to UserFactorPushTransaction 
  - VerifyFactor
    - parameter of type VerifyFactorRequest changed to UserFactorVerifyRequest
    - return type VerifyUserFactorResponse changed to UserFactorVerifyResponse 

### Moved

- AuthorizationServerApi functionality is now broken out into more specific API classes.
- GroupOwnerApi contains functionality previously in GroupsApi.

### Replaced

- CustomizationApi is replaced by CustomTemplatesApi, CusomPagesApi and BrandsApi.
- RealmApi.UpdateRealm is replaced by RealmApi.ReplaceRealm.
- ProvisioningConnection is replaced by ProvisioningConnectionRequest & ProvisioningConnectionResponse.
- VerifyFactorRequest is replaced by UserFactorVerifyRequest
- VerifyUserFactorResponse is replaced by UserFactorVerifyResponse 

### Removed
- SchemaApi methods removed:
  - GetAppUISchemaLinksAsync
- UserApi methods removed:
  - SetLinkedObjectForUser

### Added

- ApiTokenApi methods added:
  - UpsertApiToken
- ApplicationConnectionsApi methods added:
  - VerifyProvisioningConnectionForApplication
- AuthorizationAssocApi is a new API to maange authorization server associations.
- AuthorizationServerClaimsApi is a new API to manage authorization server claims.
- AuthroziationServerClientsApi is a new API to manage authorization server clients.
- AuthorizationServerKeysApi is a new API to manage authorization server keys.
- AuthorizationServerPoliciesApi is a new API to manage authorization server policies.
- AuthorizationServerRulesApi is a new API to manage authorization server rules.
- AuthorizationServerScopesApi is a new API to manage authorization server scopes.
- ApplicationGroupsApi methods added:
  - UpdateGroupAssignmentToApplication overload accepting a list of JsonPathOperation objects.
- BrandsApi is a new API to manage brands.
- CustomTemplatesApi is new API to manage custom templates.
- CustotmPagesApi is new API to manage custom pages.
- DirectoriesIntegrationApi is a new API to manage AD integrations.
- GroupOwnerApi is a new API to manage group owners.
- InlineHookApi methods added:
  - UpdateInlineHook
- OktaApplicationSettingsApi is a new API to manage Okta application settings.
- ThemesApi is a new API to manage themes.
- OrgSettingApi methods added:
  - GetThirdPartyAdminSetting
  - UpdateThirdPartyAdminSetting
  - GetClientPrivilegesSetting
  - AssignClientPrivilegesSetting
- RealAssignmentApi is a new API to manage realm assignments.
- SSFReceiverApi is a new API to manage the consumption of security events.
- SSFSecurityEventTokenApi is a new API to manage security event tokens.
- SSFTransmitterApi is a new API to manage security event transmitters.
- SessionApi methods added:
  - GetCurrentSession
  - CloseCurrentSession
  - RefreshCurrentSession
- UserApi methods added:
  - ReplaceLinkedObjectForUser
  - ListLinkedObjectsForUser
  - DeleteLinkedObjectForUser
- AttackProtectionApi methods added:
  - GetAuthenticatorSettings
  - ReplaceAuthenticatorSettings
- RoleAssignmentApi methods added:
  - ListRolesForClient
  - AssignRoleToClient
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants