[mirotalksfu] - #160 fetch peer_name from OIDC profile

هذا الالتزام موجود في:
Miroslav Pejic
2024-11-08 23:42:10 +01:00
الأصل d307c2b41f
التزام 3e9db53ff8
4 ملفات معدلة مع 58 إضافات و6 حذوفات

عرض الملف

@@ -55,7 +55,7 @@ dev dependencies: {
* @license For commercial or closed source, contact us at license.mirotalk@gmail.com or purchase directly via CodeCanyon
* @license CodeCanyon: https://codecanyon.net/item/mirotalk-sfu-webrtc-realtime-video-conferences/40769970
* @author Miroslav Pejic - miroslav.pejic.85@gmail.com
* @version 1.6.27
* @version 1.6.28
*
*/
@@ -395,9 +395,22 @@ function startServer() {
// Route to display user information
app.get('/profile', OIDCAuth, (req, res) => {
if (OIDC.enabled) {
return res.json(req.oidc.user); // Send user information as JSON
const user = { ...req.oidc.user };
user.peer_name = {
force: OIDC.peer_name?.force || false,
email: OIDC.peer_name?.email || false,
name: OIDC.peer_name?.name || false,
};
log.debug('OIDC get Profile', user);
return res.json(user);
}
res.sendFile(views.notFound);
// OIDC disabled
res.status(201).json({
email: false,
name: false,
peer_name: false,
message: 'Profile not found because OIDC is disabled',
});
});
// Authentication Callback Route

عرض الملف

@@ -144,6 +144,11 @@ module.exports = {
For those seeking an open-source solution, check out: https://github.com/panva/node-oidc-provider
*/
enabled: false,
peer_name: {
force: true, // Enforce using profile data for peer_name
email: true, // Use email as peer_name
name: false, // Don't use full name (family_name + given_name)
},
config: {
issuerBaseURL: 'https://server.example.com',
baseURL: `http://localhost:${process.env.PORT ? process.env.PORT : 3010}`, // https://sfu.mirotalk.com