問題タブ [azure-managed-identity]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
85 参照

azure-managed-identity - VM で実行されているプログラムまたは VM にログインしているユーザーは、Azure マネージド サービス ID を使用してトークンを取得できますか?

(keyvault にアクセスするために) VM にサービス プリンシパル証明書/appKey を格納すると、そのファイルへのアクセスを、プログラムを実行しているユーザー アカウントだけに制限できます。他のユーザーまたはアカウントは、keyvault のシークレットにアクセスできません。

Azure マネージド サービス ID を使用して IaaS VM から keyvault にアクセスする場合、VM にログインしているすべてのユーザーまたはマシン上で実行されているすべてのプログラムが keyvault シークレットにアクセスできると理解していますが、これは本当ですか?

もしそうなら、ユーザー アカウントの 1 つが危険にさらされた場合のセキュリティが低下しませんか?

0 投票する
2 に答える
677 参照

azure-functions - python azure functions v2 msiauthentication

run.ps1 スクリプトを介して MSI_ENDPOINT と MSI_SECRET を設定することにより、v1 で何ができるかを理解しようとしています。関数は、サービス割り当て ID を使用して他の多くのサービスにアクセスします。これを設定して、ローカルの開発環境でもまったく同じスクリプトを実行できるようにする方法はありますか?

ローカルでデバッグしようとすると、関数は次のエラーで失敗します

'Functions.stat-based-monitor' を実行しました (失敗、Id=5611b477-976a-47e0-bb87-db06571eb3b7) System.Private.CoreLib: 関数の実行中に例外が発生しました: Functions.stat-based-monitor。System.Private.CoreLib: 結果: 失敗の例外: ConnectionError: HTTPConnectionPool(host='...', port=80): URL で最大再試行回数を超えました: /metadata/identity/oauth2/token?resource=https%3A%2F %2Fmanagement.core.windows.net%2F&api-version=2018-02-01 (原因: NewConnectionError(': 新しい接続の確立に失敗しました: [WinError 10051] 到達不能なネットワークに対してソケット操作が試行されました',))

興味深いことに、これらの行をローカルの開発ボックスではなく azure vm で実行すると、期待どおりに実行されます。msiauth には Azure VM が必要ですか?

0 投票する
1 に答える
3075 参照

azure - Azure App Service の特定のユーザー割り当てマネージド サービス ID のトークンを取得するにはどうすればよいですか?

特定のユーザー定義 ID の msi トークンを取得しようとしています。私たちのアプリ サービスには 2 つのユーザー定義 ID があり、ユーザー割り当て ID の 1 つに代わってトークンが必要です。

コードは次のとおりです。

Azure App Service にデプロイされます。このセクションにアクセスすると、次のエラーが表示されます。アクセス許可によって禁止されている方法でソケットにアクセスしようとしました

http://169.254.169.254に接続して、kudu コンソールを使用してトークンを取得しようとしました。しかし、このエンドポイントにはアクセスできないようです。

ここに画像の説明を入力

Microsoft.Azure.Services.AppAuthentication の AzureServiceTokenProvider を使用して msi トークンを生成しようとしましたが、複数のユーザー割り当て ID に使用する方法に関するドキュメントが見つかりませんでした。

編集:

更新 1:

169.254.169.254 の代わりに MSI_ENDPOINT 環境変数のエンドポイントを使用しようとしました。しかし、アプリ サービスを実行すると、MSI_ENDPOINT 値が設定されていないようです。これが私が試したコードです: