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

การรับรองความถูกต้องเป็นกระบวนการของการตรวจสอบตัวตน

6
วิธีตั้งค่าผู้ใช้ที่พิสูจน์ตัวตนด้วยตนเองใน Spring Security / SpringMVC
หลังจากผู้ใช้ใหม่ส่งแบบฟอร์ม 'บัญชีใหม่' ฉันต้องการล็อกอินผู้ใช้นั้นด้วยตนเองเพื่อที่พวกเขาจะได้ไม่ต้องเข้าสู่ระบบในหน้าถัดไป หน้าล็อกอินแบบฟอร์มปกติที่ผ่านตัวสกัดกั้นการรักษาความปลอดภัยแบบสปริงทำงานได้ดี ในตัวควบคุมรูปแบบบัญชีใหม่ฉันกำลังสร้าง UsernamePasswordAuthenticationToken และตั้งค่าใน SecurityContext ด้วยตนเอง: SecurityContextHolder.getContext().setAuthentication(authentication); ในหน้าเดียวกันนั้นฉันตรวจสอบในภายหลังว่าผู้ใช้เข้าสู่ระบบด้วย: SecurityContextHolder.getContext().getAuthentication().getAuthorities(); สิ่งนี้ส่งคืนหน่วยงานที่ฉันตั้งไว้ก่อนหน้านี้ในการตรวจสอบสิทธิ์ ทั้งหมดเป็นอย่างดี. แต่เมื่อมีการเรียกรหัสเดียวกันนี้ในหน้าถัดไปที่ฉันโหลดโทเค็นการตรวจสอบความถูกต้องจะเป็นเพียง UserAnonymous ฉันไม่ชัดเจนว่าเหตุใดจึงไม่เก็บการรับรองความถูกต้องที่ฉันตั้งไว้ในคำขอก่อนหน้านี้ ความคิดใด ๆ ? เป็นไปได้ไหมว่ารหัสเซสชันไม่ได้รับการตั้งค่าอย่างถูกต้อง? มีบางอย่างที่อาจเขียนทับการรับรองความถูกต้องของฉันหรือไม่? บางทีฉันอาจต้องการขั้นตอนอื่นเพื่อบันทึกการรับรองความถูกต้อง? หรือมีบางอย่างที่ฉันต้องทำเพื่อประกาศการรับรองความถูกต้องทั่วทั้งเซสชันแทนที่จะร้องขอเพียงครั้งเดียว แค่มองหาความคิดบางอย่างที่อาจช่วยให้ฉันเห็นว่าเกิดอะไรขึ้นที่นี่

2
จะทำการตรวจสอบสิทธิ์แบบไม่ระบุสถานะ (ไม่มีเซสชัน) และไม่ใช้คุกกี้ได้อย่างไร
Bob ใช้เว็บแอปพลิเคชันเพื่อบรรลุบางสิ่งบางอย่าง และ: เบราว์เซอร์ของเขาคือในอาหารจึงไม่สนับสนุนคุกกี้ เว็บแอปพลิเคชันเป็นที่นิยมซึ่งเกี่ยวข้องกับผู้ใช้จำนวนมากในช่วงเวลาหนึ่ง - ต้องปรับขนาดให้ดี ตราบใดที่การเก็บรักษาเซสชันจะจำกัด จำนวนการเชื่อมต่อพร้อมกันและแน่นอนว่าจะนำมาซึ่งการลงโทษด้านประสิทธิภาพที่ไม่สำคัญเราอาจต้องการให้มีระบบที่ไม่ใช้เซสชัน :) หมายเหตุสำคัญบางประการ: เรามีความปลอดภัยในการขนส่ง ( HTTPSและเพื่อนที่ดีที่สุด) หลังม่านที่ได้รับมอบหมายโปรแกรมประยุกต์บนเว็บจำนวนมากของการดำเนินงานเพื่อให้บริการภายนอกในปัจจุบันนามของผู้ใช้ (ระบบเหล่านั้นทำรู้จักบ๊อบเป็นหนึ่งของผู้ใช้) - ที่นี้หมายถึงว่าเราจะต้องส่งต่อให้ข้อมูลประจำตัวของบ๊อบ ตอนนี้เราจะตรวจสอบความถูกต้องของ Bob (ในแต่ละคำขอ) ได้อย่างไร? วิธีใดเป็นวิธีที่เหมาะสมในการนำสิ่งดังกล่าวไปปฏิบัติ การเล่นเทนนิสด้วยข้อมูลประจำตัวผ่านช่องที่ซ่อนอยู่ในรูปแบบ HTML ... ลูกบอลมีข้อมูลประจำตัว ( ชื่อผู้ใช้และรหัสผ่าน ) และไม้ทั้งสองคือเบราว์เซอร์และเว็บแอปพลิเคชันตามลำดับ กล่าวอีกนัยหนึ่งเราอาจขนส่งข้อมูลไปมาผ่านช่องแบบฟอร์มแทนที่จะใช้คุกกี้ ตามคำขอของเว็บแต่ละครั้งเบราว์เซอร์จะโพสต์ข้อมูลรับรอง แม้ว่าในกรณีของแอปพลิเคชันหน้าเดียวอาจดูเหมือนการเล่นสควอชกับกำแพงยางแทนที่จะเล่นเทนนิสเนื่องจากเว็บฟอร์มที่มีข้อมูลรับรองอาจคงอยู่ตลอดอายุการใช้งานของหน้าเว็บ (และเซิร์ฟเวอร์จะได้รับการกำหนดค่าไม่ให้เสนอข้อมูลรับรองกลับ) การจัดเก็บชื่อผู้ใช้และรหัสผ่านในบริบทของหน้า - ตัวแปร JavaScript เป็นต้นต้องมีหน้าเดียวที่นี่ IMHO การตรวจสอบความถูกต้องโดยใช้โทเค็นเข้ารหัส ในกรณีนี้การดำเนินการเข้าสู่ระบบจะส่งผลให้มีการสร้างโทเค็นความปลอดภัยที่เข้ารหัส (ชื่อผู้ใช้ + รหัสผ่าน + อย่างอื่น) โทเค็นนี้จะถูกส่งกลับไปยังไคลเอนต์และคำขอที่จะเกิดขึ้นจะมาพร้อมกับโทเค็น สิ่งนี้สมเหตุสมผลไหม …

6
การพิสูจน์ตัวตนใน PHP โดยใช้ LDAP ผ่าน Active Directory
ฉันกำลังมองหาวิธีตรวจสอบสิทธิ์ผู้ใช้ผ่าน LDAP ด้วย PHP (โดยมี Active Directory เป็นผู้ให้บริการ) ตามหลักการแล้วควรจะสามารถทำงานบน IIS 7 ได้ ( adLDAP ทำงานบน Apache) ใครเคยทำอะไรที่คล้ายกันประสบความสำเร็จ? แก้ไข: ฉันต้องการห้องสมุด / ชั้นเรียนที่มีรหัสที่พร้อมใช้งาน ... มันคงโง่ที่จะประดิษฐ์วงล้อเมื่อมีคนทำไปแล้ว

2
การใช้งาน Google Authenticator ใน Python
ฉันพยายามที่จะใช้รหัสผ่านครั้งเดียวที่สามารถสร้างขึ้นโดยใช้แอพลิเคชัน Google Authenticator สิ่งที่ Google Authenticator ทำ โดยทั่วไป Google Authenticator จะใช้รหัสผ่านสองประเภท: HOTP - รหัสผ่านครั้งเดียวที่ใช้ HMAC ซึ่งหมายความว่ารหัสผ่านจะเปลี่ยนไปในแต่ละครั้งที่โทรตามRFC4226และ TOTP - รหัสผ่านแบบใช้ครั้งเดียวตามเวลาซึ่งจะเปลี่ยนทุกๆ 30 วินาที (เท่าที่ฉันรู้) Google Authenticator มีให้บริการในรูปแบบโอเพ่นซอร์สที่นี่: code.google.com/p/google-authenticator รหัสปัจจุบัน ฉันกำลังมองหาโซลูชันที่มีอยู่เพื่อสร้างรหัสผ่าน HOTP และ TOTP แต่ก็ไม่พบอะไรมาก รหัสที่ฉันมีคือตัวอย่างต่อไปนี้ที่รับผิดชอบในการสร้าง HOTP: import hmac, base64, struct, hashlib, time def get_token(secret, digest_mode=hashlib.sha1, intervals_no=None): if intervals_no == None: intervals_no = …

7
เปลี่ยนเส้นทางไปยังหน้าที่แล้วหลังจากการพิสูจน์ตัวตนใน node.js โดยใช้ passport.js
ฉันกำลังพยายามสร้างกลไกการเข้าสู่ระบบโดยใช้ node.js, express และ passport.js การเข้าสู่ระบบใช้งานได้ค่อนข้างดีนอกจากนี้เซสชันจะถูกจัดเก็บไว้อย่างดีด้วยการ redis แต่ฉันมีปัญหาในการเปลี่ยนเส้นทางผู้ใช้ไปยังจุดที่เขาเริ่มต้นก่อนที่จะได้รับแจ้งให้ตรวจสอบสิทธิ์ เช่นผู้ใช้ดังต่อไปนี้การเชื่อมโยงhttp://localhost:3000/hiddenถูกเปลี่ยนเส้นทางไปแล้วแต่แล้วฉันต้องการให้เขาถูกนำกลับมาอีกครั้งเพื่อhttp://localhost:3000/loginhttp://localhost:3000/hidden จุดประสงค์ของสิ่งนี้คือหากผู้ใช้เข้าถึงเพจโดยสุ่มที่เขาต้องเข้าสู่ระบบก่อนเขาจะถูกเปลี่ยนเส้นทางไปยังไซต์ / ล็อกอินโดยให้ข้อมูลประจำตัวของเขาจากนั้นจะถูกเปลี่ยนเส้นทางกลับไปยังไซต์ที่เขาพยายามเข้าถึงก่อนหน้านี้ นี่คือโพสต์ล็อกอินของฉัน app.post('/login', function (req, res, next) { passport.authenticate('local', function (err, user, info) { if (err) { return next(err) } else if (!user) { console.log('message: ' + info.message); return res.redirect('/login') } else { req.logIn(user, function (err) { if (err) …

2
Symfony 2: ฉันจะตรวจสอบได้อย่างไรว่าผู้ใช้ไม่ได้เข้าสู่ระบบภายในเทมเพลต
ในเทมเพลต Symfony 2 (โดยใช้ Twig) ฉันจะตรวจสอบได้อย่างไรว่าผู้ใช้ไม่ได้เข้าสู่ระบบหรือไม่ ฉันไม่ต้องการใช้ROLEเช็ค ฉันต้องการวิธีที่ตรงไปตรงมาในการตรวจสอบว่าผู้ใช้ไม่ได้เข้าสู่ระบบหรือไม่ ฉันรู้ว่าการเปรียบเทียบapp.user.usernameกับanonผลงาน แต่มันไม่เหมาะกับฉัน

7
SAML เทียบกับการเข้าสู่ระบบแบบรวมศูนย์ด้วย OAuth
SAML และการเข้าสู่ระบบแบบรวมกับ OAuth ต่างกันอย่างไร โซลูชันใดที่เหมาะสมกว่าหาก บริษัท ต้องการใช้เว็บแอปของบุคคลที่สามและต้องการการลงชื่อเพียงครั้งเดียวและเป็นผู้มีอำนาจในการตรวจสอบสิทธิ์

6
AngularJS: ตัวอย่างพื้นฐานในการใช้การพิสูจน์ตัวตนใน Single Page Application
ฉันยังใหม่กับAngularJSและได้อ่านบทแนะนำของพวกเขาและรู้สึกได้ถึงมัน ฉันมีแบ็กเอนด์สำหรับโปรเจ็กต์ของฉันพร้อมที่RESTจะต้องตรวจสอบความถูกต้องของอุปกรณ์ปลายทางแต่ละจุด สิ่งที่ฉันต้องการจะทำอย่างไร ได้.) http://myproject.comฉันต้องการจะมีหน้าเดียวสำหรับโครงการของฉัน ข.) เมื่อผู้ใช้ฮิต URL ในเบราว์เซอร์บนพื้นฐานถ้าผู้ใช้เข้าสู่ระบบหรือไม่ได้เขาจะนำเสนอกับหน้าบ้าน / ดูหรือหน้าเข้าสู่ระบบ / มุมมองภายใต้ http://myproject.comURL c.) หากผู้ใช้ไม่ได้เข้าสู่ระบบผู้ใช้จะกรอกแบบฟอร์มและเซิร์ฟเวอร์จะตั้งค่าUSER_TOKENในเซสชันดังนั้นคำขอเพิ่มเติมไปยังปลายทางทั้งหมดจะได้รับการรับรองความถูกต้องตามUSER_TOKEN My Confusions a.) ฉันจะจัดการกับการพิสูจน์ตัวตนฝั่งไคลเอ็นต์โดยใช้ AngularJS ได้อย่างไร? ฉันเห็นที่นี่และที่นี่แต่ไม่เข้าใจวิธีใช้ b.) ฉันจะนำเสนอมุมมองที่แตกต่างกันให้กับผู้ใช้ได้อย่างไรโดยขึ้นอยู่กับว่าผู้ใช้ล็อกอินหรือไม่อยู่ภายใต้ url เดียวกันhttp://myproject.com ฉันใช้ angular.js เป็นครั้งแรกและเริ่มสับสนจริงๆว่าจะเริ่มอย่างไร คำแนะนำและ / หรือแหล่งข้อมูลใด ๆ จะได้รับการชื่นชมอย่างมาก

4
การรับรองความถูกต้องด้วย OpenID ทำงานอย่างไร
ฉันอยากรู้เล็กน้อยเกี่ยวกับการตรวจสอบสิทธิ์ OpenID ทำงานอย่างไร มีความแตกต่างระหว่างการตรวจสอบความถูกต้องด้วย OpenID และการตรวจสอบความถูกต้องที่เว็บไซต์ใช้สำหรับตนเองโดยเฉพาะหรือไม่?

2
การใช้ PassportJS จะส่งผ่านฟิลด์แบบฟอร์มเพิ่มเติมไปยังกลยุทธ์การพิสูจน์ตัวตนภายในได้อย่างไร
ฉันใช้ passportJS และฉันต้องการที่จะจัดหามากกว่าเพียงreq.body.usernameและreq.body.passwordกับกลยุทธ์การตรวจสอบของฉัน (หนังสือเดินทางท้องถิ่น) ฉันมีเขตข้อมูลแบบฟอร์มที่ 3: username, passwordและfoo ฉันจะเข้าถึงได้อย่างไรreq.body.fooจากกลยุทธ์ในพื้นที่ของฉันซึ่งมีลักษณะดังนี้: passport.use(new LocalStrategy( {usernameField: 'email'}, function(email, password, done) { User.findOne({ email: email }, function(err, user) { if (err) { return done(err); } if (!user) { return done(null, false, { message: 'Unknown user' }); } if (password != 1212) { return done(null, false, …

9
ASP.NET Core Web API Authentication
ฉันกำลังดิ้นรนกับวิธีตั้งค่าการรับรองความถูกต้องในบริการเว็บของฉัน บริการนี้สร้างด้วย API เว็บ ASP.NET Core ไคลเอนต์ทั้งหมดของฉัน (แอปพลิเคชัน WPF) ควรใช้ข้อมูลประจำตัวเดียวกันเพื่อเรียกใช้การดำเนินการบริการเว็บ หลังจากการวิจัยบางอย่างฉันได้พบกับการรับรองความถูกต้องขั้นพื้นฐาน - ส่งชื่อผู้ใช้และรหัสผ่านในส่วนหัวของคำขอ HTTP แต่หลังจากการวิจัยหลายชั่วโมงสำหรับฉันดูเหมือนว่าการรับรองความถูกต้องขั้นพื้นฐานไม่ใช่วิธีที่จะไปใน ASP.NET Core ทรัพยากรส่วนใหญ่ที่ฉันพบคือการใช้การตรวจสอบสิทธิ์โดยใช้ OAuth หรือมิดเดิลแวร์อื่น ๆ แต่ดูเหมือนว่าจะมีขนาดใหญ่เกินไปสำหรับสถานการณ์ของฉันเช่นเดียวกับการใช้ส่วน Identity ของ ASP.NET Core วิธีที่ถูกต้องในการบรรลุเป้าหมายของฉันคืออะไร - การตรวจสอบความถูกต้องง่ายๆด้วยชื่อผู้ใช้และรหัสผ่านในบริการเว็บ ASP.NET Core? ขอบคุณล่วงหน้า!

5
ตั้งค่าคุกกี้สำหรับคำขอข้ามแหล่งที่มา
จะแบ่งปันคุกกี้ข้ามแหล่งกำเนิดได้อย่างไร? โดยเฉพาะอย่างยิ่งวิธีใช้Set-Cookieส่วนหัวร่วมกับส่วนหัวAccess-Control-Allow-Origin? นี่คือคำอธิบายเกี่ยวกับสถานการณ์ของฉัน: ฉันกำลังพยายามที่จะตั้งค่าคุกกี้สำหรับ API ที่ทำงานอยู่ในในเว็บแอปที่โฮสต์บนlocalhost:4000localhost:3000 ดูเหมือนว่าฉันจะได้รับส่วนหัวการตอบกลับที่ถูกต้องในเบราว์เซอร์ แต่น่าเสียดายที่ไม่มีผลใด ๆ นี่คือส่วนหัวการตอบกลับ: HTTP / 1.1 200 ตกลง Access-Control-Allow-Origin: http: // localhost: 3000 แตกต่างกันไป: ต้นทางยอมรับการเข้ารหัส ชุดคุกกี้: token = 0d522ba17e130d6d19eb9c25b7ac58387b798639f81ffe75bd449afbc3cc715d6b038e426adeac3316f0511dc7fae3f7; อายุสูงสุด = 86400; โดเมน = localhost: 4000; เส้นทาง = /; Expires = อ. 19 ก.ย. 2560 21:11:36 GMT; HttpOnly ประเภทเนื้อหา: application / json; charset …

4
วิธีเปลี่ยนเส้นทางไปยัง URL ล็อกอินแบบไดนามิกใน ASP.NET MVC
ฉันกำลังสร้างเว็บไซต์สำหรับผู้เช่าหลายรายซึ่งโฮสต์เพจสำหรับลูกค้า ส่วนแรกของ URL จะเป็นสตริงที่ระบุไคลเอ็นต์ซึ่งกำหนดไว้ใน Global.asax โดยใช้โครงร่างการกำหนดเส้นทาง URL ต่อไปนี้: "{client}/{controller}/{action}/{id}" ใช้งานได้ดีกับ URL เช่น / foo / Home / Index อย่างไรก็ตามเมื่อใช้แอตทริบิวต์ [Authorize] ฉันต้องการเปลี่ยนเส้นทางไปยังหน้าการเข้าสู่ระบบซึ่งใช้รูปแบบการแมปเดียวกันด้วย ดังนั้นหากลูกค้าเป็น foo หน้าล็อกอินจะเป็น / foo / Account / Login แทนการเปลี่ยนเส้นทางคงที่ / Account / Login ที่กำหนดไว้ใน web.config MVC ใช้ HttpUnauthorizedResult เพื่อส่งคืนสถานะ 401 ที่ไม่ได้รับอนุญาตซึ่งฉันคิดว่าเป็นสาเหตุให้ ASP.NET เปลี่ยนเส้นทางไปยังหน้าที่กำหนดใน web.config ไม่มีใครรู้วิธีการแทนที่พฤติกรรมการเปลี่ยนเส้นทางการเข้าสู่ระบบ ASP.NET? หรือจะดีกว่าถ้าเปลี่ยนเส้นทางใน MVC …

4
จุดประสงค์ของ“ Refresh Token” คืออะไร?
ฉันมีโปรแกรมที่ทำงานร่วมกับ YouTube Live Streaming API มันทำงานบนตัวจับเวลาดังนั้นมันจึงค่อนข้างง่ายสำหรับฉันที่จะตั้งโปรแกรมเพื่อดึง Access Token ใหม่ทุกๆ 50 นาทีด้วย Refresh Token คำถามของฉันคือทำไม? เมื่อฉันตรวจสอบสิทธิ์กับ YouTube มันให้ Refresh Token แก่ฉัน จากนั้นฉันใช้โทเค็นการรีเฟรชนี้เพื่อรับโทเค็นการเข้าถึงใหม่ประมาณชั่วโมงละครั้ง หากฉันมี Refresh Token ฉันสามารถใช้สิ่งนี้เพื่อรับโทเค็นการเข้าถึงใหม่ได้ตลอดเวลาเนื่องจากไม่มีวันหมดอายุ ดังนั้นฉันจึงไม่เห็นว่าสิ่งนี้ปลอดภัยไปกว่าการให้ Access Token ตั้งแต่เริ่มต้นและไม่ต้องกังวลกับระบบ Refresh Token ทั้งหมด

5
.NET Core Identity Server 4 Authentication VS Identity Authentication
ฉันกำลังพยายามทำความเข้าใจวิธีที่เหมาะสมในการตรวจสอบสิทธิ์ใน ASP.NET Core ฉันได้ดูทรัพยากรหลายอย่าง (ซึ่งส่วนใหญ่ล้าสมัย) Simple-Implementation-Of-Microsoft-Identity บทนำสู่การพิสูจน์ตัวตนด้วย ASP.Core MSDNs Introduction to Identity บางคนนำเสนอโซลูชันที่ปรับเปลี่ยนได้โดยระบุว่าจะใช้โซลูชันบนคลาวด์เช่น Azure AD หรือใช้ IdentityServer4 และโฮสต์ Token Server ของฉันเอง ในเวอร์ชันเก่ากว่าของ. Net หนึ่งในรูปแบบการพิสูจน์ตัวตนที่ง่ายกว่าคือการสร้าง Custom Iprinciple และเก็บข้อมูลผู้ใช้การพิสูจน์ตัวตนเพิ่มเติมไว้ภายใน public interface ICustomPrincipal : System.Security.Principal.IPrincipal { string FirstName { get; set; } string LastName { get; set; } } public class CustomPrincipal : …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.