Xamarin:在没有 azure 的情况下创建 ADFS (Oauth2) 客户端
Xamarin: Creating ADFS (Oauth2) client without azure
我正在尝试使用 ADFS 和 oauth2 对我的应用程序进行身份验证。我找到了很多文档来使用 azure 服务(使用 ADAL)来执行此操作。但是没有关于如何使用本地服务器执行此操作的信息。
我使用 angular 应用程序测试了以下所有信息,并且身份验证有效!
public class AuthenticationService
{
public static string clientId = "uri:tst-amdm-website.mycompany.be";
private static string commonAuthority = "https://claim.mycompany.be/";
public static Uri returnUri = new Uri("http://www.google.be");
const string graphResourceUri = "uri:tst-amdm-api.mycompany.be";
public async void GetAccessToken(IPlatformParameters platformParameters)
{
AuthenticationResult authResult = null;
JObject jResult = null;
//List<User> results = new List<User>();
try
{
AuthenticationContext authContext = new AuthenticationContext(commonAuthority);
if (authContext.TokenCache.ReadItems().Any())
authContext = new AuthenticationContext(authContext.TokenCache.ReadItems().First().Authority);
authResult = await authContext.AcquireTokenAsync(graphResourceUri, clientId, returnUri, platformParameters);
var test = authResult.AccessToken;
}
catch (Exception ee)
{
//results.Add(new User { error = ee.Message });
//return results;
}
}
}
这是我得到的错误,但在 angular 中,这个 url: https://claim.mycompany.be/
工作得很好。
'authority' Uri should have at least one segment in the path (i.e. https://<host>/<path>/...)
我正在尝试使用 ADFS 和 oauth2 对我的应用程序进行身份验证。我找到了很多文档来使用 azure 服务(使用 ADAL)来执行此操作。但是没有关于如何使用本地服务器执行此操作的信息。
我使用 angular 应用程序测试了以下所有信息,并且身份验证有效!
public class AuthenticationService
{
public static string clientId = "uri:tst-amdm-website.mycompany.be";
private static string commonAuthority = "https://claim.mycompany.be/";
public static Uri returnUri = new Uri("http://www.google.be");
const string graphResourceUri = "uri:tst-amdm-api.mycompany.be";
public async void GetAccessToken(IPlatformParameters platformParameters)
{
AuthenticationResult authResult = null;
JObject jResult = null;
//List<User> results = new List<User>();
try
{
AuthenticationContext authContext = new AuthenticationContext(commonAuthority);
if (authContext.TokenCache.ReadItems().Any())
authContext = new AuthenticationContext(authContext.TokenCache.ReadItems().First().Authority);
authResult = await authContext.AcquireTokenAsync(graphResourceUri, clientId, returnUri, platformParameters);
var test = authResult.AccessToken;
}
catch (Exception ee)
{
//results.Add(new User { error = ee.Message });
//return results;
}
}
}
这是我得到的错误,但在 angular 中,这个 url: https://claim.mycompany.be/
工作得很好。
'authority' Uri should have at least one segment in the path (i.e. https://<host>/<path>/...)