B2B 게스트 사용자에 대한 ID 공급자로 Google 추가
적용 대상: 인력 테넌트 외부 테넌트(자세한 정보)
팁
이 문서에서는 직원 테넌트에서 B2B 협업을 위한 ID 공급자로 Google을 추가하는 방법에 대해 설명합니다. 외부 테넌트에 대한 지침은 ID 공급자로 Google 추가를 참조하세요.
Google을 사용하여 페더레이션을 설정하면 초대된 사용자가 Microsoft 계정을 만들지 않고도 자신의 Gmail 계정을 사용하여 공유 앱 및 리소스에 로그인하도록 허용할 수 있습니다. Google을 애플리케이션의 로그인 옵션 중 하나로 추가한 다음 로그인 페이지에서 사용자는 Google에 로그인하는 데 사용하는 Gmail 주소를 입력합니다.
참고 항목
Google 페더레이션은 Gmail 사용자를 위해 특별히 설계되었습니다. Google Workspace 도메인과 페더레이션하려면 SAML/WS-Fed ID 공급자 페더레이션을 사용합니다.
Important
- 2021년 7월 12일부터, Domain Services B2B 고객이 셀프 서비스 등록에 사용하거나 사용자 지정 또는 LOB(기간 업무) 애플리케이션에 외부 사용자를 초대하기 위해 새 Google 통합을 설정하는 경우 Gmail 사용자에 대한 인증이 차단될 수 있습니다(예상 결과에 오류 화면이 표시됨). 이 문제는 2021년 7월 12일 이후 셀프 서비스 가입 사용자 흐름 또는 초대에 대한 Google 통합을 만들고 사용자 지정 또는 기간 업무 애플리케이션의 Gmail 인증이 시스템 웹 보기로 전환되지 않은 경우에만 발생합니다. 시스템 웹 보기는 기본적으로 사용하도록 설정되어 있으므로 대부분의 앱은 영향을 받지 않습니다. 이 문제를 방지하려면 셀프 서비스 가입을 위한 새로운 Google 통합을 만들기 전에 Gmail 인증을 시스템 브라우저로 전환하는 것이 좋습니다. 포함된 웹 보기에 필요한 작업을 참조하세요.
- 2021년 9월 30일부터 Google은 웹 보기 로그인 지원을 중단합니다. 앱이 포함된 웹 보기로 사용자를 인증하고 외부 사용자 초대 또는 셀프 서비스 등록을 위해 Azure AD B2C 또는 Microsoft Entra B2B와 함께 Google 페더레이션을 사용하는 경우 Google Gmail 사용자는 인증할 수 없습니다. 자세히 알아보기.
Google 사용자를 위한 환경이란?
다양한 방법으로 Google 사용자를 B2B 협업에 초대할 수 있습니다. 예를 들어 Microsoft Entra 관리 센터를 통해 디렉터리에 추가할 수 있습니다. 초대를 교환할 때 해당 환경은 Google에 이미 로그인했는지 여부에 따라 달라집니다.
- Google에 로그인하지 않은 게스트 사용자에게 로그인하라는 메시지가 표시됩니다.
- Google에 이미 로그인한 게스트 사용자에게 사용하려는 계정을 선택하라는 메시지가 표시됩니다. 게스트 사용자는 초대에 사용된 계정을 선택해야 합니다.
“헤더가 너무 깁니다” 오류가 표시되는 게스트 사용자는 쿠키를 지우거나 개인 또는 incognito 창을 열고 다시 로그인을 시도할 수 있습니다.
로그인 엔드포인트
Google 게스트 사용자는 이제 공통 엔드포인트(즉, 테넌트 컨텍스트를 포함하지 않는 일반 앱 URL)를 사용하여 다중 테넌트 또는 Microsoft 자사 앱에 로그인할 수 있습니다. 로그인 프로세스 중에 게스트 사용자는 로그인 옵션을 선택한 다음, 조직에 로그인을 선택합니다. 그런 다음, 사용자는 조직의 이름을 입력하고 Google 자격 증명을 사용하여 계속 로그인합니다.
Google 게스트 사용자는 테넌트 정보가 포함된 애플리케이션 엔드포인트를 사용할 수도 있습니다. 예를 들면 다음과 같습니다.
https://myapps.microsoft.com/?tenantid=<your tenant ID>
https://myapps.microsoft.com/<your verified domain>.onmicrosoft.com
https://portal.azure.com/<your tenant ID>
테넌트 정보(예: https://myapps.microsoft.com/signin/X/<application ID?tenantId=<your tenant ID>
)를 포함하여 Google 게스트 사용자에게 애플리케이션 또는 리소스에 대한 직접 링크를 제공할 수도 있습니다.
웹 보기 로그인 지원 중단
2021년 9월 30부터 Google은 포함된 웹 보기 로그인 지원을 중단합니다. 앱이 포함된 웹 보기로 사용자를 인증하고 외부 사용자 초대 또는 셀프 서비스 등록을 위해 Azure AD B2C 또는 Microsoft Entra B2B와 함께 Google 페더레이션을 사용하는 경우 Google Gmail 사용자는 인증할 수 없습니다.
Gmail 사용자에게 영향을 주는 알려진 시나리오는 다음과 같습니다.
- Windows의 Microsoft 앱(예: Teams 및 Power Apps)
- 인증에 WebView 컨트롤, WebView2 또는 이전 WebBrowser 컨트롤을 사용하는 Windows 앱. 해당 앱은 WAM(웹 계정 관리자) 흐름을 사용하여 마이그레이션해야 합니다.
- WebView UI 요소를 사용하는 Android 애플리케이션
- UIWebView/WKWebview를 사용하는 iOS 애플리케이션
- ADAL을 사용하는 앱
이 변경 내용은 다음에 적용되지 않습니다.
- 웹앱
- 웹 사이트를 통해 액세스되는 Microsoft 365 서비스(예: SharePoint Online, Office 웹앱 및 Teams 웹앱)
- 인증에 시스템 웹 보기를 사용하는 모바일 앱(iOS의 경우 SFSafariViewController, Android의 경우 Custom Tabs).
- Google Workspace ID(예: Google Workspace에서 SAML 기반 페더레이션을 사용하는 경우)
- WAM(웹 계정 관리자) 또는 WAB(웹 인증 브로커)를 사용하는 Windows 앱.
포함된 웹 보기에 필요한 작업
로그인에 시스템 브라우저를 사용하도록 앱을 수정합니다. 자세한 내용은 MSAL.NET 설명서에서 Embedded 웹 보기와 시스템 브라우저를 참조하세요. 모든 MSAL SDK는 기본적으로 시스템 브라우저를 사용합니다.
필요한 항목
9월 30일부터 Microsoft는 인증이 차단되지 않도록 포함된 웹 보기를 사용하는 앱에 대한 해결 방법으로 사용되는 디바이스 로그인 흐름을 전 세계적으로 출시할 예정입니다.
디바이스 로그인 흐름을 사용하여 로그인하는 방법
디바이스 로그인 흐름은 포함된 웹 보기에서 Gmail 계정으로 로그인하는 사용자에게 로그인을 완료하기 전에 별도의 브라우저에 코드를 입력하라는 메시지를 표시합니다. 사용자가 브라우저에서 활성 세션 없이 처음으로 Gmail 계정을 사용하여 로그인하는 경우 다음과 같은 화면 시퀀스가 표시됩니다. 기존 Gmail 계정이 이미 로그인되어 있는 경우 이러한 단계 중 일부를 제거할 수 있습니다.
로그인 화면에서 사용자는 해당 Gmail 주소를 입력하고 다음을 선택합니다.
다음 화면이 나타나 사용자에게 새 창을 열고 https://microsoft.com/devicelogin(으)로 이동하여 9자리 영숫자 코드를 입력하라는 메시지를 표시합니다.
사용자가 코드를 입력할 수 있는 디바이스 로그인 페이지가 열립니다.
코드가 일치하면 보안을 위해 사용자에게 이메일을 다시 입력하여 앱과 로그인 위치를 확인하라는 메시지가 표시됩니다.
사용자는 해당 이메일 및 암호를 사용하여 Google에 로그인합니다.
다시 한 번 로그인하는 앱을 확인하라는 메시지가 표시됩니다.
사용자는 계속을 선택합니다. 로그인했음을 확인하는 메시지가 표시됩니다. 사용자가 탭 또는 창을 닫으면 현재 앱에 로그인된 첫 번째 화면으로 돌아갑니다.
또는 기존 및 신규 Gmail 사용자가 이메일 일회용 암호로 로그인하도록 할 수 있습니다. Gmail 사용자가 이메일 일회용 암호를 사용하도록 하려면 다음을 수행합니다.
- 이메일 일회용 암호를 사용하도록 설정.
- Google 페더레이션 제거.
- 앞으로 이메일 1회용 암호를 사용할 수 있도록 Gmail 사용자의 사용 상태를 재설정합니다.
확장을 요청하려는 경우 영향을 받는 OAuth 클라이언트 ID를 사용하는 영향을 받는 고객은 2022년 1월 31일에 완료되어야 하는 일회용 정책 적용 확장에 관한 다음 정보를 포함하는 Google 개발자로부터 이메일을 받습니다.
- "필요한 경우 2022년 1월 31일까지 나열된 각 OAuth 클라이언트 ID에 대해 포함된 웹 보기에 대한 정책 적용 확장(일회성)을 요청할 수 있습니다. 명확하게 하기 위해 포함된 웹 보기에 대한 정책은 예외 또는 연장 없이 2022년 2월 1일에 적용됩니다."
인증 가능한 웹 보기로 마이그레이션되는 애플리케이션은 영향을 받지 않으며, 사용자는 평소처럼 Google을 통해 인증할 수 있습니다.
애플리케이션이 인증 가능한 웹 보기로 마이그레이션되지 않은 경우 영향을 받는 Gmail 사용자에게는 다음 화면이 표시됩니다.
CEF/Electron과 포함된 웹 보기 구분
포함된 웹 보기 및 프레임워크 로그인 지원 중단 외에도 Google은 CEF(Chromium Embedded Framework) 기반 Gmail 인증도 중단할 예정입니다. Electron 앱과 같이 CEF를 기반으로 하는 애플리케이션의 경우 Google은 2021년 6월 30일부터 인증을 지원하지 않습니다. 영향을 받는 애플리케이션은 Google로부터 직접 알림을 받았으므로 이 설명서에서는 다루지 않습니다. 이 문서는 전에 설명한 포함된 웹 보기와 관련이 있으며, 이에 대해 Google은 2021년 9월 30일, 별도의 일정을 두고 제한할 예정입니다.
포함된 프레임워크에 필요한 작업
Google의 지침에 따라 앱이 영향을 받는지 확인합니다.
1단계: Google 개발자 프로젝트 구성
먼저 Google 개발자 콘솔에서 새 프로젝트를 만들어 나중에 Microsoft Entra 외부 ID에 추가할 수 있는 클라이언트 ID 및 클라이언트 비밀을 가져옵니다.
https://console.developers.google.com 에서 Google API로 이동하고, Google 계정으로 로그인합니다. 공유 팀 Google 계정을 사용하는 것이 좋습니다.
해당 계정을 사용하라는 메시지가 표시되면 서비스 약관에 동의합니다.
새 프로젝트 만들기: 페이지 위쪽에서 프로젝트 메뉴를 선택하여 프로젝트 선택 페이지를 엽니다. 새 프로젝트를 선택합니다.
새 프로젝트 페이지에서 프로젝트에 이름(예:
MyB2BApp
)을 지정한 다음, 만들기를 선택합니다.알림 메시지 상자에서 링크를 선택하거나 페이지 맨 위에 있는 프로젝트 메뉴를 사용하여 새 프로젝트를 엽니다.
왼쪽 메뉴에서 API 및 서비스를 선택한 다음, OAuth 동의 화면을 선택합니다.
사용자 유형에서 외부를 선택한 다음, 만들기를 선택합니다.
OAuth 동의 화면의 앱 정보에서 앱 이름을 입력합니다.
사용자 지원 이메일에서 이메일 주소를 선택합니다.
권한 있는 도메인에서 도메인 추가를 선택한 다음,
microsoftonline.com
도메인을 추가합니다.개발자 연락처 정보 아래에 이메일 주소를 입력합니다.
저장하고 계속을 선택합니다.
왼쪽 메뉴에서 자격 증명을 선택합니다.
자격 증명 만들기를 선택한 다음, OAuth 클라이언트 ID를 선택합니다.
애플리케이션 유형 메뉴에서 웹 애플리케이션을 선택합니다. 애플리케이션에
Microsoft Entra B2B
와 같은 적절한 이름을 지정합니다. 권한 있는 리디렉션 URI에서 다음 URI를 추가합니다.https://login.microsoftonline.com
https://login.microsoftonline.com/te/<tenant ID>/oauth2/authresp
(여기서<tenant ID>
는 테넌트 ID임)https://login.microsoftonline.com/te/<tenant name>.onmicrosoft.com/oauth2/authresp
(여기서<tenant name>
은 테넌트 이름임)
참고 항목
테넌트 ID를 찾으려면 Microsoft Entra 관리 센터에 로그인합니다. ID에서 개요를 선택하고 테넌트 ID를 복사합니다.
만들기를 실행합니다. 클라이언트 ID와 클라이언트 비밀을 복사합니다. Microsoft Entra 관리 센터에서 ID 공급자를 추가할 때 복사한 정보를 사용합니다.
프로젝트 게시 상태를 테스트 중으로 두고 OAuth 동의 화면에 테스트 사용자를 추가할 수 있습니다. 또는 OAuth 동의 화면에서 앱 게시 단추를 선택하여 Google 계정이 있는 모든 사용자가 앱을 사용할 수 있도록 할 수 있습니다.
참고 항목
경우에 따라 앱에서 Google의 확인이 필요할 수 있습니다(예: 애플리케이션 로고를 업데이트하는 경우). 자세한 내용은 Google의 확인 상태 도움말을 참조하세요.
2단계: Microsoft Entra 외부 ID로 Google 페더레이션 구성
이제 Google 클라이언트 ID와 클라이언트 암호를 설정합니다. Microsoft Entra 관리 센터 또는 PowerShell을 사용하여 이를 수행할 수 있습니다. 자신을 초대하여 Google 페더레이션 구성을 테스트해야 합니다. Gmail 주소를 사용하고 초대된 Google 계정으로 초대를 사용해 보세요.
Microsoft Entra 관리 센터에서 Google 페더레이션을 구성하려면
최소한 외부 ID 공급자 관리자로 Microsoft Entra 관리 센터에 로그인합니다.
ID>외부 ID>모든 ID 공급자로 이동하고 Google 줄에서 구성을 선택합니다.
이전에 확보한 클라이언트 ID와 클라이언트 암호를 입력합니다. 저장을 선택합니다.
PowerShell을 사용하여 Google 페더레이션을 구성하려면
최신 버전의 Microsoft Graph PowerShell 모듈을 설치합니다.
Connect-MgGraph 명령을 사용하여 테넌트에 연결합니다.
로그인 프롬프트에서 적어도 외부 ID 공급자 관리자로 로그인합니다.
다음 명령을 실행합니다.
$params = @{ "@odata.type" = "microsoft.graph.socialIdentityProvider" displayName = "Login with Google" identityProviderType = "Google" clientId = "<client ID>" clientSecret = "<client secret>" } New-MgIdentityProvider -BodyParameter $params
참고 항목
“1단계: Google 개발자 프로젝트 구성”에서 만든 앱의 클라이언트 ID 및 클라이언트 암호를 사용합니다. 자세한 내용은 New-MgIdentityProvider를 참조하세요.
사용자 흐름에 Google ID 공급자 추가
이 시점에서 Google ID 공급자는 Microsoft Entra 테넌트에 설정됩니다. 여러분의 초대를 사용하는 사용자는 Google을 사용하여 로그인할 수 있습니다. 그러나 셀프 서비스 등록 사용자 흐름을 만든 경우 사용자 흐름 로그인 페이지에 Google을 추가해야 합니다. 사용자 흐름에 Google ID 공급자를 추가하려면 다음을 수행합니다.
ID>외부 ID>사용자 흐름으로 이동합니다.
Google ID 공급자를 추가하려는 사용자 흐름을 선택합니다.
설정에서 ID 공급자를 선택합니다.
ID 공급자 목록에서 Google을 선택합니다.
저장을 선택합니다.
Google 페더레이션은 어떻게 제거하나요?
Google 페더레이션 설치 프로그램을 삭제할 수 있습니다. 이렇게 하면 초대를 이미 사용한 Google 게스트 사용자는 로그인할 수 없습니다. 하지만 해당 상환 상태를 재설정하여 리소스에 대한 액세스 권한을 다시 부여할 수 있습니다.
Microsoft Entra 관리 센터에서 Google 페더레이션을 삭제하려면
최소한 외부 ID 공급자 관리자로 Microsoft Entra 관리 센터에 로그인합니다.
ID>외부 ID>모든 ID 공급자로 이동합니다.
Google 줄에서 (구성됨)을 선택한 다음, 삭제를 선택합니다.
예를 선택하여 삭제를 확인합니다.
PowerShell을 사용하여 Google 페더레이션을 삭제하려면 다음을 수행합니다.
최신 버전의 Microsoft Graph PowerShell 모듈을 설치합니다.
Connect-MgGraph 명령을 사용하여 테넌트에 연결합니다.
로그인 프롬프트에서 적어도 외부 ID 공급자 관리자로 로그인합니다.
다음 명령을 입력합니다.
Remove-MgIdentityProvider -IdentityProviderBaseId Google-OAUTH
참고 항목
자세한 내용은 Remove-MgIdentityProvider를 참조하세요.