Azure AD B2C 字符串格式声明
Azure AD B2C string format claim
我想用一次性密码发送短信,但要求in必须在句子中:
"这是您的一次性密码123456,请确认您的帐号"。
代码生成:
<TechnicalProfile Id="GenerateOtpSms">
<DisplayName>OTP</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.OneTimePasswordProtocolProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="Operation">GenerateCode</Item>
<Item Key="CodeExpirationInSeconds">1200</Item>
<Item Key="CodeLength">6</Item>
<Item Key="CharacterSet">0-9</Item>
<Item Key="ReuseSameCode">false</Item>
<Item Key="MaxNumAttempts">5</Item>
<Item Key="NumCodeGenerationAttempts">5</Item>
</Metadata>
<InputClaims>
<InputClaim ClaimTypeReferenceId="signInNames.phoneNumber" PartnerClaimType="identifier" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="otpSms" PartnerClaimType="otpSmsGenerated" />
</OutputClaims>
我试过这个:
<ClaimsTransformation Id="CreateMessageTransformation" TransformationMethod="FormatStringClaim">
<InputClaims>
<InputClaim ClaimTypeReferenceId="otpSms" TransformationClaimType="inputClaim" />
</InputClaims>
<InputParameters>
<InputParameter Id="stringFormat" DataType="string" Value="Use that code "{0} to..." />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="text" TransformationClaimType="outputClaim" />
</OutputClaims>
还有带有 FormatStringMultipleClaims 的那个,但我一直收到“无法验证所提供的信息”。我添加了 -
我相信你正在寻找的是可能的。
有几件事可能会阐明这个问题:
- 根据 MSDN documentation,我认为
GenerateOtpSms
技术简介的输出 PartnerClaimType
应该是 otpGenerated
,而不是 otpSmsGenerated
- 您可以分享
otpSms
和 text
的声明定义吗?
- 您在 flow/journey 的哪个位置“执行”声明转换?
我想用一次性密码发送短信,但要求in必须在句子中: "这是您的一次性密码123456,请确认您的帐号"。
代码生成:
<TechnicalProfile Id="GenerateOtpSms">
<DisplayName>OTP</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.OneTimePasswordProtocolProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="Operation">GenerateCode</Item>
<Item Key="CodeExpirationInSeconds">1200</Item>
<Item Key="CodeLength">6</Item>
<Item Key="CharacterSet">0-9</Item>
<Item Key="ReuseSameCode">false</Item>
<Item Key="MaxNumAttempts">5</Item>
<Item Key="NumCodeGenerationAttempts">5</Item>
</Metadata>
<InputClaims>
<InputClaim ClaimTypeReferenceId="signInNames.phoneNumber" PartnerClaimType="identifier" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="otpSms" PartnerClaimType="otpSmsGenerated" />
</OutputClaims>
我试过这个:
<ClaimsTransformation Id="CreateMessageTransformation" TransformationMethod="FormatStringClaim">
<InputClaims>
<InputClaim ClaimTypeReferenceId="otpSms" TransformationClaimType="inputClaim" />
</InputClaims>
<InputParameters>
<InputParameter Id="stringFormat" DataType="string" Value="Use that code "{0} to..." />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="text" TransformationClaimType="outputClaim" />
</OutputClaims>
还有带有 FormatStringMultipleClaims 的那个,但我一直收到“无法验证所提供的信息”。我添加了 我相信你正在寻找的是可能的。 有几件事可能会阐明这个问题:
GenerateOtpSms
技术简介的输出 PartnerClaimType
应该是 otpGenerated
,而不是 otpSmsGenerated
otpSms
和 text
的声明定义吗?