実行中のホストされているマシンのIPアドレス範囲にアクセスする方法はありますか?
これは、リリースパイプライン->ホステッドエージェントに関連しています。
問題:接続がファイアウォール経由で拒否されているため、接続時にアクセスが拒否されました。 DevOpsのリリースパイプラインからのこのリクエストのIPアドレス範囲をホワイトリストに登録する必要があります。
以下のリストにあるAzureデータセンターで使用されるIPアドレスをホワイトリストに登録する必要があります。 https://www.Microsoft.com/en-nz/download/details.aspx?id=4165
注:このリストは毎週更新されるため、展開計画の際はこの点に注意してください
PowershellでHosted Agent IPアドレスを取得するリリースのステップがあります:
Invoke-RestMethod http://ipinfo.io/json | Select -exp ip
Azure DevOpsのこのアドオンをチェックしてください( https://marketplace.visualstudio.com/items?itemName=MartijnQuekel.AzureAppServiceIPRestrictions )。ビルドパイプライン中にApp Service IPの制限を変更できます。
パイプラインのスクリプトステップを使用して、現在の外部IPを取得し、ホワイトリストに登録します。パイプラインの終了後、別のスクリプトステップを使用してクリーンアップします。
残念ながら、それが唯一の方法です(ホステッドエージェントの場合)。
Azure DevOpsをMSBuildに使用してAzure SQLサーバーにデプロイしようとしたときにこのエラーが発生し、インターネットに何もないようで、みんながPower Shellスクリプトを使用しているために少し気が狂ったため、ここを見て来た場合サーバーのIPアドレスやホワイトリストなどを見つけるには、ymlファイルで「Azure SQL Databaseデプロイメント」というタスクを使用したり、MSBuildを次のように使用したりすることをお勧めします。
- task: MSBuild@1
displayName: Build the database project
inputs:
solution: '**/projectname.sqlproj'
msbuildArguments: '/t:Restore /t:Build '
- task: SqlAzureDacpacDeployment@1
inputs:
azureSubscription: ''
AuthenticationType: 'server'
ServerName: '.database.windows.net'
DatabaseName: ''
SqlUsername: ''
SqlPassword: ''
deployType: 'DacpacTask'
DeploymentAction: 'Publish'
DacpacFile: '**/projectname.dacpac'
IpDetectionMethod: 'AutoDetect'
autoのIpDetectionMethodは私のために働きました、それはあなたがあなた自身の値を簡単に入れることを可能にします(私はそれを試していませんが)