【electron】데스크톱에서 Google로 로그인하려고 할 때 이 브라우저 또는 앱은 안전하지 않을 수 있습니다." 오류

오류 보고

"Browser or app may not be secure. Try using a different browser." error with Flutter Firebase Google Login
또는
This browser or app may not be secure“ error when trying to sign in with Google on desktop

배경

Electron에 구축된 micro-app micro-front 하위 애플리케이션은 google auth2 기능을 구현합니다.우리의 아키텍처는 electron+micro-app(데스크톱 프로젝트) 및 react spa(하위 애플리케이션 프로젝트)입니다.
google auth2의 스파 제한으로 인해 하위 응용 프로그램에서 auth2 인증 인터페이스를 직접 호출할 수 없습니다. Google 보안에 의해 차단되었기 때문입니다. 그래서 전자데스크톱에 새로운 폼을 만들고 이 폼으로 웹뷰를 만들어서 브라우저 환경을 만들어서 스파 인증 페이지에 제공하여 실행을 하게 되는데, 통합동의 화면에서 어플리케이션 등록 및 설정이 필요합니다.

문제 설명

webview에서 실행되는 스파 동의 로그인 페이지에서 Google이 인증 코드 코드를 획득한 로그인 인터페이스를 리디렉션할 때 로그인이 제한됩니다.

문제 분석

구글은 관련 정보를 상담한 후 2020년 5월 이전에 보안을 제한할 예정이며, 등록된 스파 애플리케이션은 로그인이 제한됩니다. 힌트는 전자가 노드 환경에 있고 기본 레이어를 수정할 수 있는 기능이 있기 때문에 브라우저가 안전하지 않다는 것입니다.

参考自[1]:https://support.google.com/accounts/answer/6010255
参考自[2]:https://stackoverflow.com/questions/59480956/browser-or-app-may-not-be -fl과 함께 다른 브라우저 오류를 사용하여 보안 시도

해결책

webview의 useAgent 속성을 수정하여 webview의 user agent 환경에 주입하고 커널을 수정합니다. 다음 코드와 같이:

<webview
                    src={webviewUrl}
                    style={
   
   { flex: 1 }}
                    // useragent={userAgent}
                    useragent={'Chrome'}
                    preload={preloadJs}
                    webpreferences="enableRemoteModule=true,nodeIntegration=true,nativeWindowOpen=yes,contextIsolation=false"
                />

성공하면 아래 그림과 같이 인터페이스가 변경됩니다.
여기에 이미지 설명 삽입
또는
여기에 이미지 설명 삽입

参考自[1]:https://support.google.com/accounts/thread/22873505?msgid=24503570
参考自[2]:https://support.google.com/accounts/thread/22873505/this-browser -or-app-may-not-be-secure-error-when-trying-to-sign-in-with-google-on-desktop-apps?hl=ko

추천

출처blog.csdn.net/hzxOnlineOk/article/details/131412882