Ich bin neu in der Zertifikatauthentifizierung von APIs. Mit Hilfe des Internets kann ich den Code erstellen, um das Zertifikat als TLS -Handshake zu akzeptieren, wenn die API aufgerufen wird. Jetzt habe ich meine PEM -Datei in den Postboten (Einstellungen >> Zertifikate) hochgeladen und die API lokal getestet (localhost). Mein Haltepunkt trifft, aber ich finde kein Zertifikat an APIs. Wie kann ich diese Zertifikatauthentifizierung für meine APIs konfigurieren? < /P>
Entschuldigung, wenn meine Frage verwirrend war. Ich habe mein Bestes versucht, es in Worte zu setzen.
Ich bin neu in der Zertifikatauthentifizierung von APIs. Mit Hilfe des Internets kann ich den Code erstellen, um das Zertifikat als TLS -Handshake zu akzeptieren, wenn die API aufgerufen wird. Jetzt habe ich meine PEM -Datei in den Postboten (Einstellungen >> Zertifikate) hochgeladen und die API lokal getestet (localhost). Mein Haltepunkt trifft, aber ich finde kein Zertifikat an APIs. Wie kann ich diese Zertifikatauthentifizierung für meine APIs konfigurieren? < /P> Entschuldigung, wenn meine Frage verwirrend war. Ich habe mein Bestes versucht, es in Worte zu setzen.[code]public static IServiceCollection AddCertificateAuthentication(this IServiceCollection services) { services.AddAuthentication(CertificateAuthenticationDefaults.AuthenticationScheme).AddCertificate(options = >{ options.RevocationMode = X509RevocationMode.NoCheck; options.AllowedCertificateTypes = CertificateTypes.All; options.Events = new CertificateAuthenticationEvents { OnCertificateValidated = context = >{ var cert = context.ClientCertificate; if (cert == null) { return Task.FromResult(AuthenticateResult.Fail("No client certificate provided.")); }
// Extract Common Name (CN) from Subject var cn = cert.Subject.Split(',').FirstOrDefault(part = >part.Trim().StartsWith("CN=")) ? .Split('=')[1];
if (string.IsNullOrEmpty(cn)) { return Task.FromResult(AuthenticateResult.Fail("Invalid certificate: CN not found.")); }
var claims = new[] { new Claim(ClaimTypes.Name, cn), };
var identity = new ClaimsIdentity(claims, CertificateAuthenticationDefaults.AuthenticationScheme); var principal = new ClaimsPrincipal(identity); var ticket = new AuthenticationTicket(principal, CertificateAuthenticationDefaults.AuthenticationScheme);
Ich habe eine @restController -Klasse in meiner Spring -Start -App. Ich habe meine APIs mit Postman auf Localhost getestet und alles scheint in Ordnung zu sein. ? /All-Benutzer
Ich habe eine gemeinsame Anwendungsweite der Singleton-Modellklasse (Projekt) durch Abhängigkeitsinjektion.
funktioniert in der Anwendung hervorragend. Aber wegen der DI habe ich Schwierigkeiten,...
Ich habe eine gemeinsame Anwendungsweite der Singleton-Modellklasse (Projekt) durch Abhängigkeitsinjektion.
funktioniert in der Anwendung hervorragend. Aber wegen der DI habe ich Schwierigkeiten,...
unten ist das Code -Snippet, an dem ich die Objekte von Change_task in den Abfrageparamenten für die Postanforderung übergeben muss. Wie kann ich das erreichen, ohne es in den Körper hinzuzufügen?...