使用时我尝试访问Graph Service Client时收到错误:
代码:Authorization_RequestDenied
消息:没有足够的权限来完成操作.
在研究此错误后,最常见的解决方案是设置API的权限.这已经完成,并具有读取基本/完整配置文件的权限.
我删除并重新添加了API.
下面是我的AzureAuthenticationProvider
类中的代码,它继承自IAuthenticationProvider
:
public class AzureAuthenticationProvider : IAuthenticationProvider
{
private string _azureDomain = "myDevDom.onmicrosoft.com";
public async Task AuthenticateRequestAsync(HttpRequestMessage request)
{
try
{
string clientId = "2b823c67-1b0d-4a10-a9e1-737142516f5q";
string clientSecret = "xxxxxx";
AuthenticationContext authContext = new AuthenticationContext("https://login.windows.net/" + _azureDomain + "/oauth2/token");
ClientCredential credentials = new ClientCredential(clientId, clientSecret);
AuthenticationResult authResult = await authContext.AcquireTokenAsync("https://graph.microsoft.com/", credentials);
request.Headers.Add("Authorization", "Bearer " + authResult.AccessToken);
}
catch (Exception ex)
{
}
}
}
Run Code Online (Sandbox Code Playgroud)
我已经尝试将客户端密钥更改为无效的ID并且它引发了错误,因此客户端密钥是正确的.我还尝试通过更改访问令牌来验证访问令牌是否有效,这也会返回错误.
上面的代码似乎工作正常.
以下是我尝试访问Azure AD的代码:
public async Task<IGraphServiceUsersCollectionPage> …
Run Code Online (Sandbox Code Playgroud) c# permissions azure azure-active-directory azure-ad-graph-api
使用Spring Security运行应用程序时,我在所有浏览器上都遇到以下错误:
“服务器理解了请求,但拒绝授权”
我尝试通过将“ spring-security.xml”文件中的“角色”从“ ROLE_ADMIN”更改为“ ROLE_USER”。
下面是“ spring-security.xml”
<http auto-config="true">
<intercept-url pattern ="/admin" access = "hasRole('ROLE-USER')"/>
</http>
<authentication-manager>
<authentication-provider>
<user-service>
<user name = "abc" password = "xyz" authorities="hasRole('ROLE-USER')" />
</user-service>
</authentication-provider>
</authentication-manager>
Run Code Online (Sandbox Code Playgroud)
下面是SpringController类:
@Controller
public class SpringController {
@RequestMapping(value = "/")
public String homePage() {
return "HomePage";
}
@RequestMapping(value="/admin", method=RequestMethod.GET)
public String loginPage() {
return "login";
}
Run Code Online (Sandbox Code Playgroud)
已加载HomePage.jsp和login.jsp页面的属性,但是在login.jsp上传递凭据后出现错误:
HTTP状态403 –禁止
类型:状态报告
消息:访问被拒绝
描述:服务器理解了该请求,但拒绝对其进行授权。
Apache Tomcat / 7.0.90
public void Start()
{
ISchedulerFactory schedFact = new StdSchedulerFactory();
IScheduler sched = schedFact.GetScheduler();
sched.Start();
IJobDetail job = JobBuilder.Create<EmailJob>()
.Build();
ITrigger trigger = TriggerBuilder.Create()
.StartNow()
.WithSimpleSchedule(x => x
.WithIntervalInHours(48)
.RepeatForever())
.Build();
sched.ScheduleJob(job, trigger);
}
Run Code Online (Sandbox Code Playgroud)
我出错了 IScheduler sched = schedFact.GetScheduler();
它说
“不能将类型 System.Threading.tasks.task Quartz.Scheduler 隐式转换为 Quartz.IScheduler”
在AWS账户中将消息从一个SQS队列复制到另一个队列的最佳方法是什么?搜索之后,我附加了策略,授予IAM用户(在目标帐户中)对源队列的完全读写访问权限.然后,我为每个人的源队列附加了一个权限,以便在队列上发送和接收消息访问.
我收到以下错误 -
线程"main"中的异常com.amazonaws.AmazonServiceException:请求中包含的安全令牌无效.(服务:AmazonSQS;状态代码:403
可能是IAM用户凭据有问题,但是,我刷新了凭据,但我仍然收到错误