Java Firebase身份验证与Microsoft错误
我正在尝试在我的Android应用程序上为我的组织实施Firebase身份验证。每个员工都有一个Microsoft business帐户,因此我想使用该电子邮件/密码登录我的应用程序 我在Firebase控制台上启用了此选项,并用我创建的Azure AD应用程序的信息填充数据: Azure广告应用程序具有登录用户并读取其配置文件的权限 我设法让它工作到在Firebase控制台上创建用户的程度 但在我的Android应用程序中,在写入凭据后,会出现此错误消息 您登录时遇到问题。 AADSTS900561:终结点仅接受POST请求。收到GET请求 Android代码是Firebase提供的示例代码Java Firebase身份验证与Microsoft错误,java,android,firebase,firebase-authentication,azure-active-directory,Java,Android,Firebase,Firebase Authentication,Azure Active Directory,我正在尝试在我的Android应用程序上为我的组织实施Firebase身份验证。每个员工都有一个Microsoft business帐户,因此我想使用该电子邮件/密码登录我的应用程序 我在Firebase控制台上启用了此选项,并用我创建的Azure AD应用程序的信息填充数据: Azure广告应用程序具有登录用户并读取其配置文件的权限 我设法让它工作到在Firebase控制台上创建用户的程度 但在我的Android应用程序中,在写入凭据后,会出现此错误消息 您登录时遇到问题。 AADSTS
OAuthProvider.Builder provider = OAuthProvider.newBuilder("microsoft.com");
Task < AuthResult > pendingResultTask = mAuth.getPendingAuthResult();
if (pendingResultTask != null) {
pendingResultTask.addOnSuccessListener(new OnSuccessListener < AuthResult >
() {
@Override
public void onSuccess(AuthResult authResult) {
Log.e("PROFILE", authResult.getAdditionalUserInfo()
.getProfile().toString());
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.e("FAIL", "ERROR LOGIN");
}
});
} else {
mAuth.startActivityForSignInWithProvider(Login.this, provider.build())
.addOnSuccessListener(new OnSuccessListener < AuthResult > () {
@Override
public void onSuccess(AuthResult authResult) {
Log.e("PROFILE", authResult.getAdditionalUserInfo()
.getProfile().toString());
Log.w("USERNAME", authResult.getUser()
.getDisplayName());
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.e("FAIL", "ERROR LOGIN: " + e);
}
});
}
我已尝试将
“OAuth2Requiresponse”:false
更改为true
,但也不起作用。您是否按照此处所述配置了内容:?感谢您的回复。是的。我添加了一个额外的图像来显示Azure URI重定向,但是你可以看到,我在其余的图像和代码上都非常关注该站点。我在想,可能是缺少了一个权限,因为这部分没有真正解释。看起来这是为了与v2端点一起工作。确保身份验证刀片服务器的“支持的帐户类型”部分未设置为“仅此组织目录中的帐户(Microsoft)”或“任何组织目录中的帐户”。“任何组织目录中的帐户和个人Microsoft帐户(例如Skype、Xbox、Outlook.com)”用于v2端点。请检查我的编辑。启用了正确的选项,但是清单上有什么可以帮助您的吗?谢谢你抽出时间。你解决了这个问题吗?我也在挣扎。看来他们的文件已经过时了。
{
"id": "******************************",
"acceptMappedClaims": null,
"accessTokenAcceptedVersion": 2,
"allowPublicClient": null,
"appId": "***************************",
"appRoles": [],
"oauth2AllowUrlPathMatching": false,
"createdDateTime": "2019-04-02T09:53:53Z",
"groupMembershipClaims": null,
"identifierUris": ["api://****************************"],
"informationalUrls": {
"termsOfService": null,
"support": null,
"privacy": null,
"marketing": null
},
"keyCredentials": [],
"knownClientApplications": [],
"logoUrl": null,
"logoutUrl": null,
"name": "App name",
"oauth2AllowIdTokenImplicitFlow": true,
"oauth2AllowImplicitFlow": true,
"oauth2Permissions": [],
"oauth2RequirePostResponse": false,
"optionalClaims": null,
"orgRestrictions": [],
"parentalControlSettings": {
"countriesBlockedForMinors": [],
"legalAgeGroupRule": "Allow"
},
"passwordCredentials": [
{
"customKeyIdentifier": null,
"endDate": "2099-12-31T12:00:00Z",
"keyId": "***************************",
"startDate": "2019-04-02T09:55:10.2084897Z",
"value": null,
"createdOn": "2019-04-02T09:55:14.432352Z",
"hint": "gGL",
"displayName": null
}
],
"preAuthorizedApplications": [],
"publisherDomain": "domain.com",
"replyUrlsWithType": [
{
"url": "https://***********.firebaseapp.com/__/auth/handler",
"type": "Web"
},
{
"url": "https://login.live.com/oauth20_desktop.srf",
"type": "InstalledClient"
},
{
"url": "urn:ietf:wg:oauth:2.0:oob",
"type": "InstalledClient"
},
{
"url": "https://login.microsoftonline.com/common/oauth2/nativeclient",
"type": "InstalledClient"
},
{
"url": "msalececeef1-*****************://auth",
"type": "InstalledClient"
}
],
"requiredResourceAccess": [
{
"resourceAppId": "*************************",
"resourceAccess": [
{
"id": "***********************",
"type": "Scope"
}
]
}
],
"samlMetadataUrl": null,
"signInUrl": null,
"signInAudience": "AzureADandPersonalMicrosoftAccount",
"tags": [],
"tokenEncryptionKeyId": null
}