たれみみの備忘録

たれみみの備忘録です。仕事と酒がメインになりそう。

パイプライン手動実行に必要な権限について

個人的に結構 ( ゚д゚)ハッ! とした内容。
最初「そんなことあるん!?」と思ったけど、運用を考えると全然あるなぁと。
アタリはついてたけど、お客さんに説明するのに確証が持てなかったので、中の人に聞いてみた。

一番手っ取り早いのは、「閲覧者」組み込みロールをベースに「Microsoft.DataFactory/factories/pipelines/createrun/action」を許可すること。
コレだと、該当するユーザーは Data Factory UI(作成と監視)における全項目の閲覧とパイプラインのみ実行(今すぐトリガー)が実行可能。
もっと絞った権限のつけ方は後述。


以下、質問と回答。


<質問内容>

特定の一般ユーザーに ETL ジョブ(パイプライン)「のみ」を実行させたい場合、特定の一般ユーザーのデータ ファクトリ リソースにどのような権限を持ったカスタムロールを当てれば良いでしょうか。

現状では、Data Factory UI を利用することを想定して、以下のようなカスタムロールを想定しておりますが、認識は合っておりますでしょうか。
~想定~
「閲覧者」組み込みロール +「Microsoft.DataFactory/factories/pipelines/createrun/action」を許可。
【参考:Microsoft.DataFactory

<回答>

以下の認識で OK。
この方法だと、該当するユーザーは Data Factory UI(作成と監視)における全項目の閲覧とパイプラインのみ実行(今すぐトリガー)が実行可能。

~想定~
「閲覧者」組み込みロール +「Microsoft.DataFactory/factories/pipelines/createrun/action」を許可。


「今すぐトリガー」を実行する場合、最低限以下の権限が必要となる。

  • Microsoft.DataFactory/factories/read
  • Microsoft.DataFactory/factories/pipelines/read
  • Microsoft.DataFactory/factories/datasets/read
  • Microsoft.DataFactory/factories/linkedServices/read
  • Microsoft.DataFactory/factories/pipelines/createrun/action

上記 5 つの権限を付与した場合、該当するユーザーが Data Factory UI(作成と監視)において閲覧できるのは「パイプライン」「データセット」「リンクされたサービス」となる。
パイプラインは手動実行できるが、実行結果の確認はできない。
該当ユーザーが Data Factory UI(作成と監視)で「モニター」の「パイプライン実行」より、自分が手動実行したパイプラインの実行結果を確認したい場合、上記 5 つの権限にプラスして「Microsoft.DataFactory/factories/querypipelineruns/read」を追加する。

ただし、「Microsoft.DataFactory/factories/querypipelineruns/read」だけだと、パイプラインのアクティビティの実行結果を確認することはできない(アクティビティの一覧や、アクティビティ詳細確認のメガネマークが出ない)。
アクティビティの実行結果について確認するための権限が必要な場合は、「Microsoft.DataFactory/factories/pipelineruns/queryactivityruns/read」も追加が必要となる。

~まとめるとこう~
以下で『「閲覧者」組み込みロール +「Microsoft.DataFactory/factories/pipelines/createrun/action」を許可』と同じような権限になる。
※「同じような」って書いたのは、「閲覧者」組み込みロールだから、他のリソースも見れちゃうから。

  • Microsoft.DataFactory/factories/read
  • Microsoft.DataFactory/factories/pipelines/read
  • Microsoft.DataFactory/factories/datasets/read
  • Microsoft.DataFactory/factories/linkedServices/read
  • Microsoft.DataFactory/factories/pipelines/createrun/action
  • Microsoft.DataFactory/factories/querypipelineruns/read
  • Microsoft.DataFactory/factories/pipelineruns/queryactivityruns/read




コレはスッキリした!!
結構アタリつけてたからなー。伊達に Azure インフラかじってないってことよ!
権限問題はだいぶ悩まされたからね。。。
もっと細かい権限のつけ方まで教えてくれたのは有難かったなぁ。