Hello
this is the log of the request
`[11:37:14 INF] Request starting HTTP/2 DELETE https://localhost:44384/api/gdpr/requests - null null [11:37:14 INF] CORS policy execution successful. [11:37:14 DBG] Get dynamic claims cache for user: 6b5b0ce7-2743-47b7-aa6e-38c87c0d7966 [11:37:14 INF] Executing endpoint 'Volo.Abp.Gdpr.GdprRequestController.DeleteUserDataAsync (Volo.Abp.Gdpr.HttpApi)' [11:37:14 INF] Route matched with {area = "gdpr", controller = "GdprRequest", action = "DeleteUserData"}. Executing controller action with signature System.Threading.Tasks.Task DeleteUserDataAsync() on controller Volo.Abp.Gdpr.GdprRequestController (Volo.Abp.Gdpr.HttpApi). [11:37:14 DBG] Added 0 entity changes to the current audit log [11:37:14 INF] Executed action Volo.Abp.Gdpr.GdprRequestController.DeleteUserDataAsync (Volo.Abp.Gdpr.HttpApi) in 27.298ms [11:37:14 INF] Executed endpoint 'Volo.Abp.Gdpr.GdprRequestController.DeleteUserDataAsync (Volo.Abp.Gdpr.HttpApi)' [11:37:14 DBG] Added 0 entity changes to the current audit log [11:37:14 DBG] Added 0 entity changes to the current audit log [11:37:14 DBG] Added 0 entity changes to the current audit log [11:37:15 INF] Request finished HTTP/2 DELETE https://localhost:44384/api/gdpr/requests - 204 null null 959.9198ms
[11:37:28 DBG] Get dynamic claims cache for user: 6b5b0ce7-2743-47b7-aa6e-38c87c0d7966 [11:37:28 WRN] The operation was canceled. System.OperationCanceledException: The operation was canceled. at System.Threading.CancellationToken.ThrowOperationCanceledException() at Microsoft.Extensions.Caching.StackExchangeRedis.RedisCache.GetAsync(String key, CancellationToken token) at Volo.Abp.Caching.DistributedCache
2.GetAsync(TCacheKey key, Nullable1 hideErrors, Boolean considerUow, CancellationToken token)`This is the only log there thus the event you re stating I can't access its class or anything. to note in my breakpoints in visual studio there is one on GdprDeleteEventHandler on line 26
Hi, it seems your redis server is not up and running. This might be the reason for your problem. Redis is needed to obtain a distributed lock. By any chance, can you run redis and retry again, and let me know about the status?
Regards.
Hi,
Thank you for refunding my ticket.
How can I be notified when the problem is solved?
I have opened a PR for this problem and it will be included in the next patch release. So, when v9.1.1 is released, you can try it out.
Hi, sorry for the late response. Currently, we are not supporting such an inheritance feature. If you want to make the changes in all of your tenants, then you should do it manually.
Regards.
Hi again, there is an IdentityGdprEventHandler.cs class in the Volo.Abp.Identity.Pro.Domain project, and it's responsible for subscribing to the published deletion event and make the anonymization for the user and soft deleting it. Do you have any logs that indicate and error occurred in that class?
Can you check your logs please? And if you see the related log, please share it so, we can better investigate it.
I have encountered that dialog a few times, but it does not appear when my issue occurs. I'm not sure what specific actions lead to my issue over what triggers the dialog to appear, as they seem to be mutually exclusive scenarios. Could it be that the state where the user appears logged in but lacks permissions is one where the dialog is expected to show but does not? The behavior I see could be explained by an expired token and the blazor server is not handling it correctly.
The surefire way I have now reproduced the issue multiple times is to login, close the blazor server page in the browser, wait an hour, then navigate directly to the blazor server page.
Hi, I will investigate this problem more deeply today and let you know about its status.
Best regards.
Thank you for your support. If there is anything I can help you with, just let me know.
Hi, thanks for your understanding. I have tested just before and indeed the problem is not fixed for the .extended.razor.cs files (but it works for .extended.cs files). I will create an internal issue for that, thanks for reporting.
Btw, your ticket is refunded. Best regards.
I will add this code in Auth server and blazor. Is it OK ?
Configure<AbpSecurityHeadersOptions>(options => { options.UseContentSecurityPolicyHeader = true; options.ContentSecurityPolicyValue = "default-src 'self' https://*.sharepoint.com; object-src 'none'; form-action 'self'; frame-ancestors 'none'"; });
If your cors configuration is correct, then this should fix your problem, yes. Can you try it and let me know if it fixes your problem?
Regards.
Hi, to be honest, it's weird to get a cache issue in your case. But it seems it was a temporary problem. If you reproduce it again we can deeper investigate it but probably it was a transient problem.
is there a way to delete all cached data and let it load data from the db again?
If you clear your cache, then the data will be loaded from db in the subsequent queries.
It looks like you've correctly configured CORS in all necessary projects, but you're still facing the issue. Since you're embedding the Blazor app inside an iframe, the problem might not be just CORS-related—it could be due to X-Frame-Options or Content Security Policy (CSP) settings.
Things to check:
1-) X-Frame-Options Header
If your authentication server or Blazor app is sending X-Frame-Options: DENY or X-Frame-Options: SAMEORIGIN, the browser will block embedding in an iframe.
Solution: Allow your domain by setting X-Frame-Options: ALLOW-FROM https://yourdomain.com or remove this header.
2-) Content Security Policy (CSP)
Your app might have a CSP rule blocking framing. Look for a Content-Security-Policy header with frame-ancestors 'none' or frame-ancestors 'self', which prevents embedding.
Solution: Modify it to allow the required domains:
Content-Security-Policy: frame-ancestors https://yourdomain.com https://*.sharepoint.com;
You can refer to the following docs:
Dear Engincan
I upgraded ABP suite version to v9.1.0. The same problems still exist.
Hi, you mean it still regenerates the .extended.cs file each time? I will check this.