Migrate from version 4.0.3 to 4.0.4
The SCIM project includes a breaking change in the database. Two columns have been added to the SCIMRepresentationAttribute
table:
ComputedIndexValue
: This column stores a computed value for each attribute. If the attribute is complex, the value is the concatenation of its children's values. This value serves a useful purpose when the SCIM server is checking the uniqueness of the attribute.IsComputed
: his column indicates whether the attribute is automatically computed or not. For example, the attributegroups.type
is always computed by the server and only has two possible values,direct
orindirect
.
Entity Framework
Apply migration script
If you are utilizing Entity Framework
, make sure to reference the appropriate NuGet package for your specific database and apply the migration scripts included within the NuGet package.
Nuget | Database |
---|---|
SimpleIdServer.Scim.PostgreMigrations | Postgre |
SimpleIdServer.Scim.SqlServerMigrations | SQLServer |
If you are not using the NuGet package, you can generate the migration script and apply it by executing the following commands. For more information, please refer to the official documentation.
dotnet ef add migrations add Release404
dotnet ef database update
Two columns, ComputedIndexValue
and IsComputed
, will be added to the table named SCIMRepresentationAttributes
.
Launch migration
Even though it's not ideal, you can use the Startup project and uncomment the code forMigrateFrom403To404EF
.
MongoDB
Due to the size limit of a document, all the FlatAttributes
property of the SCIMRepresentation
collection must be transformed into a list of references to the SCIMRepresentationAttribute
collection.
To accomplish this, you can use the Startup project. Uncomment the line MigrateFrom403To404MongoDB(app);
and set the parameter useVersion403
to true.