คำถามติดแท็ก identityserver4

3
ลงทะเบียนชุดรูปแบบการตรวจสอบสิทธิ์ตามผู้เช่าใน asp.net core 3.1
ปัจจุบันฉันได้สร้างเว็บแอพพลิเคชันเซิร์ฟเวอร์ Identity 4 ที่มีผู้ให้บริการเข้าสู่ระบบภายนอกที่มีรหัสลูกค้าและความลับเริ่มต้น แต่เป้าหมายของฉันคือการลงทะเบียนผู้ให้บริการการรับรองความถูกต้องเช่น Azure, Google, Facebook ตามผู้เช่า ฉันใช้SaasKitชุดประกอบหลายผู้เช่าที่นี่ฉันได้ลองมิดเดิลแวร์ app.usepertenant ()แล้ว แต่UseGoogleAuthentication ()วิธีการล้าสมัยดังนั้นฉันไม่สามารถบรรลุการรับรองความถูกต้องของผู้เช่าหลายคนโดยใช้มิดเดิลแวร์ที่ใช้ก่อนหน้านี้ รหัสปัจจุบัน services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme) .AddMicrosoftAccount(option => { option.ClientId = "clientid"; option.ClientSecret = "clientsecret"; option.SaveTokens = true; }); รหัสที่คาดหวังเป็นเหมือนด้านล่าง var authentication = services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme); if (tenant.hasMicrosoft) { authentication.AddMicrosoftAccount(option => { option.ClientId = "clientid"; option.ClientSecret = "clientsecret"; option.SaveTokens = true; }); …

1
ส่วนหัวคำขอไม่ได้ส่งต่อไปยัง IdentityServer4
ฉันใช้ ocelot เป็นเกตเวย์ API สำหรับ microservices ของฉันด้วย IdentityServer4 สำหรับการตรวจสอบสิทธิ์ ในไฟล์กำหนดค่า ocelot ฉันเพิ่ม "AuthenticationOptions" และตั้งค่าคีย์ api ในการเริ่มต้นฉันเพิ่มเซิร์ฟเวอร์ข้อมูลประจำตัว ในเซิร์ฟเวอร์ตัวฉันใช้ค่าจากส่วนหัวเพื่อสร้างสตริงการเชื่อมต่อแบบไดนามิก เมื่อฉันส่งคำขอเพื่อรับโทเค็นส่วนหัวสามารถเข้าถึงได้ในบริการข้อมูลประจำตัว แต่เมื่อฉันส่งคำขอถัดไปด้วยโทเค็นส่วนหัวดั้งเดิมจะไม่สามารถใช้ได้ เฉพาะส่วนหัว "โฮสต์" เท่านั้นที่สามารถเห็นได้ในบริการข้อมูลประจำตัว มีวิธีในการรักษาส่วนหัวดั้งเดิมในขณะที่กำหนดเส้นทางคำขอไปยังเซิร์ฟเวอร์ข้อมูลประจำตัวหรือไม่ Startup.cs (เพิ่มเซิร์ฟเวอร์ข้อมูลประจำตัว) services .AddAuthentication() .AddIdentityServerAuthentication("APIParts", options => { options.Authority = "http://localhost:60168"; options.RequireHttpsMetadata = false; options.ApiName = "Parts"; options.SupportedTokens = SupportedTokens.Both; }); ocelot.json ReRoutes": [ { "DownstreamPathTemplate": "/connect/token", …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.