AAD 是否支持 oauth 断言流程(rfc 6749 扩展授权)?找不到任何示例,所以我假设这不是在 ADAL 中实现的,也不是 AAD 支持的.....但是还是?
欢呼艾伦
AAD 支持断言授权类型和 client_assertion 授权类型。
在断言授权类型中,支持以下断言类型:
还有一个 urn:ietf:params:oauth:grant-type:jwt-bearer 断言类型。但是,此断言类型仅用于从本地客户端提供的访问令牌中获取下游服务的访问令牌。(见这里的例子:https ://github.com/AzureADSamples/WebAPI-OnBehalfOf-DotNet )
ADAL.NET 通过采用 UserAssertion 对象的 AcquireToken 方法公开断言授权类型。
client_assertion 流用于对服务器进行身份验证,可以通过采用 ClientAssertion 对象的 AcquireToken 方法访问它。
有关使用客户端断言流程的示例,请参见此示例:
https://github.com/AzureADSamples/Daemon-CertificateCredential-DotNet
当然,ADAL .NET 实现代码位于此处:
https://github.com/AzureAD/azure-activedirectory-library-for-dotnet