This question is about what Blazor (IdentityServer) and the ASP.NET Core Identity Library does under the covers with respect to GDPR, CCPA, etc.
First off, if a user is not authenticated by the Identity Library, is Blazor and/or the Identity Library using any tracking cookies or other items that GDPR/CCPA have rules concerning and/or forbidding?
Second, once a user is authenticated, same question. What is it using to authenticate a user back in with no prompts. And if the user wants that deleted, how do I do it? And can I turn that off for a user? Or would turning it off mean Blazor thinks they're not authenticated on each new page?
In short:
Disclaimers:
First off, if a user is not authenticated by the Identity Library, is Blazor and/or the Identity Library using any tracking cookies or other items that GDPR/CCPA have rules concerning and/or forbidding?
Some nuance is needed here:
But my short answer is that an ASP.NET web-application, using ASP.NET Core Identity, set-up with common or sensible defaults, will not be issuing cookies users, even authenticated users, that would require you to seek consent from your users (i.e.: no cookie consent form is needed).
Note that ASP.NET will still be issuing "strictly necessary" cookies, these are functional cookies, which are set as first-party-only by default, generally have a short duration, and are encrypted with a key known only to your server instance (so if the cookies were leaked or exposed and if they contained encrypted PII then that PII would be safe).
If you're curious about those cookies, then the main cases that immediately spring to my mind are:
TempData
Session
state systemSecond, once a user is authenticated, same question.
I assume you are not using any kind of federated authentication or third-party IDP such as "Sign-in with Google" or "Login with Facebook". If you are, then that complicates things and is beyond my ability to answer.
Once a user is authenticated, using a browser-based authX scheme in ASP.NET, then (typically) they'll be issued their authentication-cookies which will typically contain their PII (their "user claims", such as their name, email, phone, profile details, etc): but the entire cookie is encrypted with a private-key that should only known by your web-server(s), so there's no risk of PII disclosure, these cookies are also secure-by-default in modern versions (i.e. no JS access ("HTTP-only"), require TLS/SSL, "first-party", etc).
I am not aware of ASP.NET (Core) Identity issuing any additional cookies of its own beyond what ASP.NET Core's authentication system issues.
What do I need to tell users the system is tracking about them?
I think you're mistaken about the basis of your question here: with respect to cookies, in my opinion, the system isn't "tracking" the user at all: we aren't trying to follow their movements elsewhere on the web nor trying to fingerprint them so that other people could try to identify them elsewhere. The only thing ASP.NET is doing here is essentially giving the user a virtual membership card into your website, and it's up to the user to choose to present that membership-card to your website to gain access and they can choose to throw that membership-card away at any point they like (by closing the browser-window (in the case of session-lifetime'd cookies or Incognito-mode), or by clearing their cookies (in the case of persisted-cookies).
The GDPR's website does offer guidance that websites should be transparent and inform users about what each cookie does. In my opinion, that's something you'd put in the Privacy Policy page linked-to from the footer.
But keep-in-mind that "tracking" and data-collection concerns far more than just ASP.NET (Core) Identity's impact on your system: it concerns each field you have in your registration form, for example - regardless of if those fields interact with ASP.NET (Core) Identity.
What do I have my app restrict itself to if they decline cookies, etc.?
Assuming that we're talking about a stock, common-or-garden vanilla-flavoured plain bagel ASP.NET website using ASP.NET (Core) Identity with no external services, then your question is moot because your website will only be issuing "strictly necessary" cookies that are fundamentally required for the safe and secure operation of your website, so there is nothing for the user to decline consent for.
But, for example, if your customized your ASP.NET website to issue a uniquely identifying and long-life'd cookie to your visitors on the first request (i.e. including unauthenticated visitors) and used that to associate those browsers/sessions with users once they logged-in and/or after they logged-off but still browsing your website, and without any informed consent, even if it was confined to your own website, then that would be a GDPR violation in my opinion. But there are very legitimate reasons for doing something like that (e.g. user-experience monitoring) and there is a way of doing that legally, with explicit consent (e.g. something like a checkbox on the confirm-logout or post-logout page), but because this is murky if you find yourself facing this situation you should speak to your legal team.
Oh, and things get hairier if you're using a third-party analytics service and to what extent these services you're using share/intermingle/anonymize/aggregate the data they're getting from you. So, as a notable example, if you're using Google Analytics at all then you've got a lot more work to do if you want to remain compliant.
What do I need to delete if they delete their account?
I cannot answer this question because this isn't a technical question: it depends on the basis and nature of your organisation's relationship to your website's users and you might even be legally obligated to retain user data instead of being obligated to delete it.
Is anything stored somehow by Blazor and/or the Identity Library.
Provided you configured ASP.NET (Core) Identity to use your own database (e.g. with Entity Framework Core), then the only information stored is the information that you specifically configured ASP.NET to store, and therefore you only need to delete the subset of that information that your legal team has told you that you need to.
The above advice, actually... this entire answer post does not apply if you configured ASP.NET (Core) Identity to use external/federated auth/IDP (as I mentioned earlier). Things may also be materially different if you're using things like on-prem Active Directory or LDAP with ASP.NET (Core) Identity.
I will make some suggestions about things to consider w.r.t. deleting data when a user requests it, for example: