私はそこに至る道のりのほとんどを手に入れた答えを見つけました。リクエストの Uri を に設定できますlist(resourceId('Microsoft.Web/sites/config', variables('webSiteName'), 'publishingcredentials'), '2016-08-01').properties.scmUri
。また、残りのパスを連結する必要があります (例: /api/triggeredwebjobs/{webjobname}/run
)
上記のコードによって生成された Uri には、基本的な認証資格情報が含まれており、ある時点で解析され、ユーザー名とパスワードが Uri から取り出されるため、Azure portal には表示されず、認証は "基本" に設定されます。 、資格情報は抽出された値に設定されます。
ただし、私の Uri には、パラメーターを Web ジョブに渡すためにクエリ文字列が末尾に追加されていました。デプロイ プロセス中に、クエリ文字列が壊れます (疑問符はエスケープさ%3F
れ、引数値にエスケープされた文字がある場合は、エスケープされなくなります。
文字列を連結して (プロパティを使用せずに) Uri を構成し、プロパティの兄弟であるプロパティを次のようにscmUri
設定することで、これを回避することができました。authentication
uri
"authentication": {
"type": "Basic",
"username": "[list(resourceId('Microsoft.Web/sites/config', variables('webSiteName'), 'publishingcredentials'), '2016-08-01').properties.publishingUserName]",
"password": "[list(resourceId('Microsoft.Web/sites/config', variables('webSiteName'), 'publishingcredentials'), '2016-08-01').properties.publishingPassword]"
}