我希望我的API应用程序在Logic Apps Designer中将密码参数显示为(*)而不是原始字符串。我向SwaggerConfig.cs添加了一个自定义MapType。
c.MapType<MyModel.Password>(() => new Schema {type = "string", format = "password" });
参数:
public class Parameters
{
// ...
[Metadata("Password", null)]
[Required(AllowEmptyStrings = false)]
public Password Password { get; set; }
}
public class Password
{
public string password {get; set;}
}
它仍然显示设计器中的原始字符串。我错过了什么吗?
答案 0 :(得分:2)
得到答案 - 它目前不受支持。处理安全字符串的唯一方法是通过类似这样的部署模板部署逻辑应用程序:https://github.com/Azure/azure-quickstart-templates/blob/master/101-logic-app-create/azuredeploy.json
并使用属性类型&#34; SecureString&#34;对其进行参数化。这将从视图中删除参数值。然后在逻辑应用程序中,您将使用@parameters(&#39; mypassword&#39;)或其他内容引用该参数。
所以你无法在招摇中做任何事情来让它掩盖设计师的价值。我们正在开发可能实现此目的的设计器更新,但即使在设计器中它掩盖了该值,当您切换到Logic Apps定义代码视图时,您仍然可以看到它。
如果有不同的方法,您可以随时在我们的产品Uservoice中添加商品:https://feedback.azure.com/forums/287593-logic-apps