在我的DotNetOpenAouth客户端应用程序中,我通过发送
获取授权代码/令牌 AuthorizationEP + "?client_id=" + _appId + "&redirect_uri=" + HttpUtility.UrlEncode(returnUrl.ToString()) + "&scope=http://localhost:4314/api/domains" + "&response_type=code"
。
然后,我正确地收到了http://localhost:4314/api/domains
范围的身份验证令牌。
但是,当我通过http://localhost:4314/api/domains.json
或http://localhost:4314/api/domains.xml
URL调用我的Restful api时,指定的范围不适合我的资源服务器会在resourceServer.GetPrincipal
中抛出异常。
如何在不考虑网址中的“.json”或“.xml”的情况下检查我的范围?
感谢您的帮助。
答案 0 :(得分:1)
我解决了。
我已经实施了
internal class ScopeSatisfiedCheck : IScopeSatisfiedCheck
{
public bool IsScopeSatisfied(HashSet<string> requiredScope, HashSet<string> grantedScope)
{
// Here compare requiredScope with grantedScope by own rules;
}
}
....
resourceServer.ScopeSatisfiedCheck = new ScopeSatisfiedCheck();
我希望有用
甜瓜