有没有办法将此WS-Trust代码移植到.NET Core?

时间:2019-10-18 07:20:47

标签: c# .net-core aws-lambda ws-federation ws-trust

我有一些旧代码(.NET框架),我想移植到.NET Core 2.1。目的是从与WS-Trust兼容的STS中检索令牌,以便调用WCF服务。

该代码将有效地运行在需要适合现有系统中间的新Web服务层中。这些系统可能无法进行广泛的修改,因此,为什么我尝试继承尽可能多的现有系统。

这将在AWS Lambda函数中运行,因此会受到.NET Core约束。

我已经看过网上了,但是找不到任何能清楚说明该怎么做的东西。

这是要移植的代码:

var factory = new WSTrustChannelFactory("stsEndpoint") { TrustVersion = TrustVersion.WSTrust13 };
var channel = factory.CreateChannel();
var rst = new RequestSecurityToken
{
    RequestType = WSTrust13Constants.RequestTypes.Issue,
    AppliesTo = new EndpointAddress("endpoint"),
    Context = "context",
};

rst.Claims.Dialect = "http://docs.oasis-open.org/wsfed/authorization/200706/authclaims";
rst.Claims.Add(new RequestClaim("http://schemas.microsoft.com/ws/2008/06/identity/claims/role", true, "principal"));
rst.Claims.Add(new RequestClaim("request", true, id));
var token = channel.Issue(rst, out RequestSecurityTokenResponse rstr);

0 个答案:

没有答案