Xamarin.Forms 프로젝트와 Table API 프로젝트를 만들었습니다. 둘 다 Azure 포털의 QuickStart 메뉴를 통해 생성되었습니다.Azure AD 서버 인증, 디렉토리를 볼 권한이 없습니다.
포털에 Azure AD를 구성 했으므로 내 XForms 응용 프로그램을 통해 AD에서 토큰을 성공적으로 검색 할 수 있습니다. 그러나 MobileServiceClient의 LoginAsync 메서드를 사용하여 Table API에 로그인하려고하면 "사용자가 디렉터리 또는 페이지를 볼 수있는 권한이 없습니다."라는 메시지가 나타납니다.
저는 다음과 같은 가이드를 살펴 보았지만 운이 없었습니다. Add authentication to your Xamarin.Forms app
How to: Work with authentication
나는 또한 다음과 같은 질문을보고했지만 해결책을 찾지 못했습니다
How to configure your App Service application to use Azure Active Directory login.
Cordova AAD server flow authentication hangs on Android and iOS
나는 테이블 API 프로젝트에 대한 몇 가지 특정 인증을 누락 될 수 있다고 생각하는 건가요? Constants.ClientID은 네이티브 클라이언트 응용 프로그램의 클라이언트 ID가 아닌 웹 서버입니다
PCL 프로젝트 XForms를 IN
var ar = await authContext.AcquireTokenAsync(Constants.GraphResourceUri, Constants.ClientId, userCredintials);
JObject payload = new JObject();
payload["access_token"] = ar.AccessToken;
var client = new MobileServiceClient(Constants.ApplicationUrl);
var user = await client.LoginAsync(MobileServiceAuthenticationProvider.WindowsAzureActiveDirectory, payload);
:
여기에 내 코드와 설정입니다. 나는 테이블 API 프로젝트
[Authorize]
public class StatisticController : ApiController
표 API의 StartUp.cs의 구성
public void Configuration(IAppBuilder app)
{
app.UseAppServiceAuthentication(new AppServiceAuthenticationOptions());
ConfigureMobileApp(app);
}
모바일 서비스 AUTH 설정 FROM CONTROLLER의 404
(210)SINGLE SING-ON 광고는 I는 다음 설치와 우편 배달을 통해 오류를 복제 할 수 있습니다
편집
"X-ZUMO-AUTH"헤더에 access_token의 값을 포함 시키려고했으나 같은 결과가 나타납니다. 아직 허가가 없습니다. 또한 POST 요청의 모든 헤더를 변경하지 않고 제외하려고했습니다.내 모바일 앱이나 Postmand의 POST 요청이 허용되지 않는다는 뜻입니까?
수동으로 브라우저에서 mysite.azurewebsites.net/.auth/login/aad를 탐색하면 내 광고의 사용자와 로그인 할 수 있습니다. AD가 서비스와 올바르게 통신하고있는 것과 같습니다.
는 mattchenderson에 IT
큰 감사를 고정! 그는 정상 그래프 API 대신 내 서비스의 클라이언트 ID로 상수 GraphResourceUri를 변경해야한다고 제안했습니다. 클라이언트의 단일 인스턴스를 추가하는 것과 함께 이제는 내 서비스에 성공적으로 로그인 할 수 있습니다.
수정 된 답변은 새로운 결과를 포함합니다. 그래도 같은 결과. –
수취인이 없습니까? 비슷한 문제가있는 사람이 있습니까? –