Azure Graph Api Integration 활용하여 Asp.Net Core 3.1 Web App 에서 모든 사용자들 정보 가져오기
Azure Graph Api Integration 활용하여 Asp.Net Core 3.1 Web App 에서 모든 사용자들 정보 가져오기
이 비디오에서는 Asp.Net core Web App 을 Azure Graph API 와 통합하는 방법을 보여줍니다. Active Directory에 있는 모든 사용자 정보에 액세스하는 방법을 보여줍니다.
앱이 등록된 곳에서 관리자 동의 및 앱 등록을 받는 방법을 보여줍니다. azure의 ClientId, Client Secret 및 Tenant Id에 대한 정보를 얻을 수 있습니다. Azure Graph API에는 탐색할 것이 많지만 애플리케이션 권한으로 Azure Graph API를 사용하는 간단한 방법을 보여줍니다.
https://www.youtube.com/watch?v=Z2Lu-PzWYLU
step 1. 앱 등록하는 방법
azure active directory 서비스를 들어간다.
어플리케이션을 등록합니다.
등록 완료 후, clientid, talentid 값을 얻을 수 있습니다.
step 2. client secret 발급하기
Certificates & secrets 의 client secrets 에서 new client secret 버튼을 눌러 생성합니다.
생성되 secret 의 value 값을 복사해서 보관해 둡니다.
step 3. graph api 를 위한 api permission 할당하기
add a permission 버튼을 클릭합니다.
application permissions 를 선택합니다.
permissions 중에 user 검색하여 하단에서 찾습니다.
User.Read.All 권한을 체크하고 저장합니다.
step 4. admin consent 를 제공합니다.
api permissions 메뉴에서 grant admin consent for default directory 버튼을 클릭하여 적용시킵니다.
step 5. nuget package 에서 개발을 위해 microsoft.graph 컴포넌트를 nuget 을 통해 다운로드 받습니다.
appsettings.json 파일에 tenantid 와 clientid, clientsecret 값을 등록합니다.
json 값을 읽기 위해 IConfiguration 을 DI 합니다.
json 값을 변수에 담습니다. ClientSecretCredential() 클래스를 통해 GraphServiceClient 를 호출하여 인증 받은 후 Users.Request() 함수를 통해 정보를 가져옵니다.