Running changelog of releases since 3.1.1
- Add support for OAuth 2.0 DPoP (#697)
- Fix "UserSchemaAttributes minLength and maxLength are non-nullable and cause array schema attribute creation to fail." issue (#702)
- Fix "Unable to access Links (_links) in version 7 for an IdentityProvider when using GetIdentityProviderAsync/CreateIdentityProviderAsync" (#700)
- Rollback
PolicyCanBeCreatedOrUpdated
schema changes - Remove obsolete methods for
IdentityProviderPolicy
- Update
AppAndInstanceConditionEvaluatorAppOrInstance.Id
readonly property from true to false (#716)
- Update OAS3 with the latest IdP Discovery policy changes.
IdentityProviderPolicy
will no longer inherit from Policy in the major release. The inheritance has been marked as obsolete.- The following
PolicyApi
methods have been marked as obsolete, and will be removed in the next major version:System.Threading.Tasks.Task<Policy> CreatePolicyAsync(Policy policy, bool? activate = default(bool?), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
System.Threading.Tasks.Task<ApiResponse<Policy>> CreatePolicyWithHttpInfoAsync(Policy policy, bool? activate = default(bool?), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
System.Threading.Tasks.Task<Policy> ReplacePolicyAsync(string policyId, Policy policy, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
System.Threading.Tasks.Task<ApiResponse<Policy>> ReplacePolicyWithHttpInfoAsync(string policyId, Policy policy, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
They will be replaced by the following ones:System.Threading.Tasks.Task<PolicyCanBeCreatedOrReplaced> CreatePolicyAsync( PolicyCanBeCreatedOrReplaced policy , bool? activate = default(bool?) , System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
System.Threading.Tasks.Task<ApiResponse<PolicyCanBeCreatedOrReplaced>> CreatePolicyWithHttpInfoAsync( PolicyCanBeCreatedOrReplaced policy , bool? activate = default(bool?) , System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
System.Threading.Tasks.Task<Policy> ReplacePolicyAsync(string policyId, Policy policy, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
System.Threading.Tasks.Task<ApiResponse<Policy>> ReplacePolicyWithHttpInfoAsync(string policyId, Policy policy, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
- Fix "API Gap - IdP Discovery Policy Rule does not exist" issue (#687)
- Downgrade
System.IdentityModel.Tokens*
dependencies from 7.2.0 to 6.35.0 to avoid breaking changes (#692)
- Update vulnerable
System.IdentityModel.Tokens.Jwt
dependency (OKTA-683207) - Fix "Missing application settings when fetching SamlApplication" (#644)
- Fix "Missing data in verifyFactorRequest prevents verifying webauthn" (OKTA-656179)
- Fix "JTI Claim as a string instead of guid" (#682)
- Fix "Incosistent Exception Handling" issue (#658)
- Fix "Update UserType.Id to be editable" issue (#660)
- Fix "Nuget package missing license information" issue (#667)
- Fix "VerifyUserFactorResponse doesn't correspond with the server's response" (#665)
- Upgraded the RestSharp dependency from
106.13.0
to110.2.0
(#606) - Upgraded the Okta management OpenAPI specification to be aligned with the Okta release v2023.07.0.
- New API clients added:
ApiServiceIntegrationsApi
ApplicationSSOApi
AttackProtectionApi
EmailServerApi
IdentitySourceApi
RealmApi
UISchemaApi
- Check out the MIGRATING guide for more details about migrating to 7.0.0
- Fix "Create/Update Account returns NULL when okta tenant hits rate limits" issue (#638)
- Fix "DeleteFactorAsync not removing phone with removeEnrollmentRecovery" issue (#630)
- Fix "ChangePasswordRequest.revokeSessions does not exist" issue (#624)
- Fix "Retrieving Group no Longer Retrieves Additional Profile Data" issue (#634)
- Fix "API Calls Trap Request Timeout Exceptions" issue (#632)
- Fix "Resend SMS as part of enrollment" issue (#633)
- Update
IamRoles.Permissions
object type fromObject
toHrefObject
. - Add
IamRoles.Self
property.
- Fix "UpdateProfileMappingAsync doesn't update properties" issue (#618)
- Fix "UpdateUserAsync should allow updating the user type" issue (#615)
- Fix ResourceSet API and keep previous interface marked as obsolete for backwards compatibility.
- Fix "SDK calls with private key authorization mode start returning empty results after inner access token expired" issue (#616)
- Fix "PartialUpdateUserAsync behaves differently in Okta.Sdk v6" issue (#614)
- Ignore null values during JSON serialization.
- Fix "Listing IAM roles doesn't work" (#617)
- Fix "Pagination not working when using PrivateKey Authorization Mode" issue (#613)
- Make
AppUser.PasswordChanged
property nullable (#599) - Fix "invalid audience" issue (#600)
- Add support for StringEnum
- Update OpenAPI spec
- Add support for OAuth for Okta
- Add support for Proxy configuration
- Add support for dynamic properties
- Update Open API spec to 3.0.0
- Migrate from Okta-custom generator to openapi-generator.tech/
- Check out the MIGRATING guide for more details about migrating to 6.0.0
- Add
search
parameter toGroupsClient.ListGroups
to align with documentation
- Pass
HttpClient
toDefaultOAuthTokenProvider
(#571)
- Update Open API spec to 2.12.0
- Add
Application.UpdateApplicationPolicyAsync
method - Add
APPLE
as aLogCredentialProvider
option - Add support for
AllowedOktaApps
in Scopes - Add
IframeEmbed
as aScopeType
option
- Add support for Email template operations.
- Fix the issue "SDK doesn't retry a call to the server when the token has expired" (PrivateKey mode) (#535)
- Add support for Application provisioning connection operations
- Add suport for Application features operations
- Add support for Org2Org applications.
- Fix Unable to create OktaClient on linux build server after 5.2.1 upgrade. (#526)
- Add
VerifyUserFactorResponse.GetTransactionId
method to simplify access to the transaction ID of theVerifyUserFactorResponse
where appropriate. The transaction ID is further used with theGetFactorTransactionStatusAsync
operation. See Issue a Push Factor challenge for details. (#507)
- Add ability to use pre-requested access tokens for authentication (#508)
- Regenerate code using the open API spec v2.9.2
- Add new models and operations to support Brands API's endpoints
- Add new models and operations to support OIE policies
Group.AssignRoleAsync(IAssignRoleRequest assignRoleRequest, string disableNotifications, CancellationToken cancellationToken = default(CancellationToken));
is not marked as obsolete. UseGroup.AssignRoleAsync(IAssignRoleRequest assignRoleRequest, bool? disableNotifications = null, CancellationToken cancellationToken = default(CancellationToken));
instead.UsersClient. AssignRoleToUserAsync(IAssignRoleRequest assignRoleRequest, string userId, string disableNotifications, CancellationToken cancellationToken = default(CancellationToken));
is not marked as obsolete. UseUsersClient. AssignRoleToUserAsync(IAssignRoleRequest assignRoleRequest, string userId, bool? disableNotifications = null, CancellationToken cancellationToken = default(CancellationToken));
instead.
- Remove FlexibleConfiguration dependency and use .NET Configuration Providers instead.
- Regenerate code using the open API spec v2.6.0
- Add new models and operations to support the following:
- Domains API's endpoints
- Zones API's endpoints
- Mappings API's endpoints
- ThreatInsight configuration API's endpoints
- Authenticators API's endpoints
- Org API's endpoints
- GroupSchema API's endpoints
- Add an overload for
GroupsClient.DeleteGroupRuleAsync
method. Now you can specifyremoveUsers
parameter indicating whether to keep or remove users from groups assigned by this rule.
- Fix GroupsClient.ListGroups
filter
parameter doesn't work. Replaced withsearch
parameter. - Fix AuthorizationServerPolicyRule.ActivateAsync doesn't work.
- Change JWT Expiration time - 50 minutes will be used in order to have a 10 minutes leeway in case of clock skew.
- Update dependencies
FlexibleConfiguration 1.2.2 -> 2.0.0
Microsoft.Extensions.Logging 3.1.1 -> 5.0.0
System.IdentityModel.Tokens.Jwt 5.6.0 -> 6.11.1
Newtonsoft.Json 12.0.3 -> 13.0.1
System.Interactive.Async 4.0.0 -> 5.0.0
- Regenerate code using the open API spec v2.3.0.
- Add new models and operations to support all the UserSchema API's endpoints.
New models:
- UserSchema
- UserSchemaAttribute
- UserSchemaAttributeMaster
- UserSchemaAttributePermission
- UserSchemaBase
- UserSchemaBaseProperties
- UserSchemaDefinitions
- UserSchemaPublic
- UserSchemasClient
- Change in default behavior when serializing resources (JSON objects). Previously, null resource properties would result in a resource object with all its properties set to
null
. Now, null resource properties would result innull
property value.
Before:
{ deserializedResource.Prop1.Should().Be("Hello World!");
prop1 : "Hello World!", => deserializedResource.NestedObject.Should().NotBeNull();
nestedObject: null deserializedResource.NestedObject.Prop1.Should().BeNull();
}
Now:
{ deserializedResource.Prop1.Should().Be("Hello World!");
prop1 : "Hello World!", => deserializedResource.NestedObject.Should().BeNull();
nestedObject: null
}
- Add new models for Authorization Server Policies and Policy Rules
- Fix AuthorizationServer.Policy.ListPolicyRules 404 error (#415). This fix requires a breaking change.
- Fix "New IApplication.Profile doesn't save when empty" issue (#319).
- Regenerate code using openapi 2.1.6
- Add
RefreshToken
property toOpenIdConnectApplicationSettingsClient
- Add
Jwks
property toOpenIdConnectApplicationSettingsClient
- New models:
OpenIdConnectRefreshTokenRotationType
andOpenIdConnectApplicationSettingsRefreshToken
- Add
expand
property back toGroupsClient.ListGroups
method (#447)
- Add helper method to create users with imported hashed password (#402)
- Add helper methods to create policy rules (#287)
- Add
TryGetHomePath
method to avoid throwing an exception if HOME environment variable is missing (#316)
- Fix code samples in the README file.
- Expose
TrustedOrigins
client in theOktaClient
(#413)