SlideShare una empresa de Scribd logo
1 de 14
Descargar para leer sin conexión
情シスの味方、
Azure のカスタムロール
Japan Azure User Group 8 周年 LT
2018/09/22
パーソル プロセス&テクノロジー株式会社
Microsoft MVP for Microsoft Azure
小田島 哲也
自己紹介
• 小田島 哲也 (おだしま てつや)
• パーソルプロセス&テクノロジー
– Azure 導入コンサル、技術支援、最近は開発も
– Office 365 もやるよ
– そもそも .NET (主に C#) デベロッパー
• Microsoft MVP for Microsoft Azure (2018~)
• Qiita:https://qiita.com/tetsuya-ooooo
• ET ソフトウェア デザイン ロボット コンテスト 実行委員会 (2011~)
http://www.etrobo.jp/
– 本部技術委員 兼 東京地区技術委員長 (組み込めないけど)
• 地区:競技全般の統括
• 本部:IT インフラ (Azure Platform を積極的に採用) の開発・運用保守
– むかしむかし「あずまひろしはじめました」というチームで参加していた (2007~2008)
2
お世話になってます、Azure サポート様のブログ
ユーザーへ Azure VM の起動および停止のみを許可する方法
- Japan Azure IaaS Support Blog
https://blogs.technet.microsoft.com/jpaztech/2018/08/15/vm_start_stop_user/
3
記事で書かれていること
4
アクセスできるリソース
を限定
リソースへの操作を限定
ロールベースのアクセス
制御 (RBAC)
この仮想マシンの
起動と停止の操作のみ
仮想マシンの起動と停止の操作のみ許可
• 以下の操作が Action プロパティに含むロールを割り当てる
– Microsoft.Compute/virtualMachines/read
仮想マシンのプロパティの読み取り
– Microsoft.Compute/virtualMachines/deallocate/action
仮想マシンの割り当て解除の操作
– Microsoft.Compute/virtualMachines/start/action
仮想マシンの開始の操作
• これらのプロパティが含む組み込みロールは
– 所有者 (Owner)
– 共同作成者 (Contributor)
– 仮想マシン共同作成者 (Virtual Machine Contributor)
– DevTest Labs ユーザー (DevTest Labs User)
• ユーザーに組み込みロールを割り当てるなら
限定的な「DevTest Labs ユーザー」が最適♡
– しかし、他の操作 (LB や NIC にして等) もできてしまう
• 許可する操作のみを明示的に限定したいなら、
「カスタムロール」を作成 → ユーザーにそれを割り当てる
5
私がやりたかったこと
6
カスタムロール定義
を作成
サブスクリプション
に登録
あるリソースのアク
セス制御 (IAM) にて
ユーザーにカスタム
ロールを割り当てて
登録
この仮想マシンの
起動と停止と接続の操作のみ
※ARM VM だけでなく、
Classic VM も制御
1.カスタムロール定義 (json) を作成
{
“Name”: “カスタムロールの名前",
"IsCustom": true,
“Description”: “カスタムロールの説明",
"Actions": [
このロールで実行できる操作を指定
],
"NotActions": [
実行できる操作の中 (Actions) から除外する操作を指定
],
"DataActions": [
対象のオブジェクト内のデータに対して、このロールで実行できるデータ操作を指定 ※プレビュー
],
"NotDataActions": [
実行できるデータ操作の中 (DataActions) から除外するデータ操作を指定 ※プレビュー
],
"AssignableScopes": [
このロールを割り当て可能なスコープ (サブスクリプション, リソースグループ, リソース) を指定
]
}
7
リソースに対する操作を探し出す
Azure Resource Manager のリソース プロバイダー操作
https://docs.microsoft.com/ja-jp/azure/role-based-access-control/resource-provider-operations
巨大なページなので、
ページ内検索を駆使して
やりたいことを探し出す
ピンとこない説明に苦戦、
負けそう...(@_@)
8
(例) Azure VM の起動/停止/接続のみを許可したロール
{
"Name": "Azure VM Start/Stop/Connect",
"IsCustom": true,
"Description": "Azure 仮想マシンの起動、停止、接続のみを許可するロール",
"Actions": [
"Microsoft.Compute/virtualMachines/read"
,"Microsoft.Compute/virtualMachines/deallocate/action"
,"Microsoft.Compute/virtualMachines/restart/action"
,"Microsoft.Compute/virtualMachines/start/action"
,"Microsoft.Network/networkInterfaces/*/read"
,"Microsoft.Network/networkInterfaces/read"
,"Microsoft.Resources/subscriptions/resourceGroups/read"
,"Microsoft.Resources/subscriptions/resourceGroups/resources/read"
,"Microsoft.ClassicCompute/virtualMachines/read"
,"Microsoft.ClassicCompute/VirtualMachines/start/action"
,"Microsoft.ClassicCompute/virtualMachines/shutdown/action"
,"Microsoft.ClassicCompute/virtualMachines/restart/action"
,"Microsoft.ClassicCompute/virtualMachines/downloadRemoteDesktopConnectionFile/action"
,"Microsoft.ClassicCompute/virtualMachines/operationStatuses/read"
],
"AssignableScopes": [
“/subscriptions/<サブスクリプション ID>"
]
}
9
ARM VM のプロパティの読み取り
ARM VM の開始/再起動/割り当て解除
NIC のプロパティの読み取り
RG や RG 内のリソースの読み取り
Classic VM のプロパティの読み取り
Classic VM の開始/再起動/割り当て解除
Classic VM の RDP ファイルのダウンロード
Classic VMの操作状態の読み込み
※あくまで一例です
2.サブスクリプションに登録
PowerShell で行う
# ログイン
PS C:¥> Login-AzureRmAccount
# サブスクリプションを選択
PS C:¥> Select-AzureRmSubscription -Subscription <サブスクリプション ID>
# カスタムロールを登録
PS C:¥> New-AzureRmRoleDefinition -InputFile <カスタムロール定義ファイルパス>
10
3~4.リソースの IAM でユーザーにロールを割り当てる
11
ここで学んだこと
カスタムロールを書き換えたい!!
• このようにやってはダメ
– カスタムロールを Remove → New
– ユーザーにロールを再割り当て
• こんなふうにやろう
– Get-AzureRmRoleDefinition
→プロパティを編集
→Set-AzureRmRoleDefinition
– Actions や NotActions などの
データ型は List<string>
– New-Object でオブジェクトを
作って、中身入れて、
該当プロパティに上書き
12
反映がとても遅い!!
※経験談
まとめ
• Azure 使いたいという社内からの要望はいっぱいある
• だけど、自由に使わせるわけにはいかない
• 「カスタムロール」と「Azure ポリシー」は、情シスには強力な武器
• ちょっと面倒くさいけど、カスタムロールの取り扱いは
思ってたよりカンタンだった
13
参考文献
• ユーザーへ Azure VM の起動および停止のみを許可する方法
- Japan Azure IaaS Support Blog
https://blogs.technet.microsoft.com/jpaztech/2018/08/15/vm_start_stop_user/
• ロールベースのアクセス制御 (RBAC) の設定 – カスタムロールの使用
- Japan Azure IaaS Support Blog
https://blogs.technet.microsoft.com/jpaztech/2016/10/12/rbac-custom-role/
• Azure の組み込みロール
https://docs.microsoft.com/ja-jp/azure/role-based-access-control/built-in-roles
• Azure のカスタム ロール
https://docs.microsoft.com/ja-jp/azure/role-based-access-control/custom-roles
• ロール定義について
https://docs.microsoft.com/ja-jp/azure/role-based-access-control/role-definitions
• Azure Resource Manager のリソース プロバイダー操作
https://docs.microsoft.com/ja-jp/azure/role-based-access-control/resource-provider-operations
14

Más contenido relacionado

La actualidad más candente

Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!Teruchika Yamada
 
インフラCICDの勘所
インフラCICDの勘所インフラCICDの勘所
インフラCICDの勘所Toru Makabe
 
S03_まずはここから!Microsoft 365 E3 でセキュリティの第一歩を踏み出す [Microsoft Japan Digital Days]
S03_まずはここから!Microsoft 365 E3 でセキュリティの第一歩を踏み出す [Microsoft Japan Digital Days]S03_まずはここから!Microsoft 365 E3 でセキュリティの第一歩を踏み出す [Microsoft Japan Digital Days]
S03_まずはここから!Microsoft 365 E3 でセキュリティの第一歩を踏み出す [Microsoft Japan Digital Days]日本マイクロソフト株式会社
 
[DI12] あらゆるデータをビジネスに活用! Azure Data Lake を中心としたビックデータ処理基盤のアーキテクチャと実装
[DI12] あらゆるデータをビジネスに活用! Azure Data Lake を中心としたビックデータ処理基盤のアーキテクチャと実装[DI12] あらゆるデータをビジネスに活用! Azure Data Lake を中心としたビックデータ処理基盤のアーキテクチャと実装
[DI12] あらゆるデータをビジネスに活用! Azure Data Lake を中心としたビックデータ処理基盤のアーキテクチャと実装de:code 2017
 
Azure Monitor Logで実現するモダンな管理手法
Azure Monitor Logで実現するモダンな管理手法Azure Monitor Logで実現するモダンな管理手法
Azure Monitor Logで実現するモダンな管理手法Takeshi Fukuhara
 
ビッグデータ処理データベースの全体像と使い分け
2018年version
ビッグデータ処理データベースの全体像と使い分け
2018年versionビッグデータ処理データベースの全体像と使い分け
2018年version
ビッグデータ処理データベースの全体像と使い分け
2018年versionTetsutaro Watanabe
 
M17_情シス必見、Azure Arc によるマルチプラットフォーム管理の今 [Microsoft Japan Digital Days]
M17_情シス必見、Azure Arc によるマルチプラットフォーム管理の今 [Microsoft Japan Digital Days]M17_情シス必見、Azure Arc によるマルチプラットフォーム管理の今 [Microsoft Japan Digital Days]
M17_情シス必見、Azure Arc によるマルチプラットフォーム管理の今 [Microsoft Japan Digital Days]日本マイクロソフト株式会社
 
今改めて学ぶ Microsoft Azure 基礎知識
今改めて学ぶ Microsoft Azure 基礎知識今改めて学ぶ Microsoft Azure 基礎知識
今改めて学ぶ Microsoft Azure 基礎知識Minoru Naito
 
Azure サポート チームの現場からお届けする落ちないサービスのために
Azure サポート チームの現場からお届けする落ちないサービスのためにAzure サポート チームの現場からお届けする落ちないサービスのために
Azure サポート チームの現場からお届けする落ちないサービスのためにTeppei Ishii
 
え!?データがオンプレにあるけどPower BI で BI したいの?
え!?データがオンプレにあるけどPower BI で BI したいの?え!?データがオンプレにあるけどPower BI で BI したいの?
え!?データがオンプレにあるけどPower BI で BI したいの?Yugo Shimizu
 
M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]
M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]
M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]日本マイクロソフト株式会社
 
Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版貴志 上坂
 
JAZUG12周年 俺の Azure Cosmos DB
JAZUG12周年 俺の Azure Cosmos DBJAZUG12周年 俺の Azure Cosmos DB
JAZUG12周年 俺の Azure Cosmos DBDaiyu Hatakeyama
 
Microsoft Azure Overview - Japanses version
Microsoft Azure Overview - Japanses versionMicrosoft Azure Overview - Japanses version
Microsoft Azure Overview - Japanses versionTakeshi Fukuhara
 
Windows Server 2016上でLinuxコンテナが動いた!
Windows Server 2016上でLinuxコンテナが動いた!Windows Server 2016上でLinuxコンテナが動いた!
Windows Server 2016上でLinuxコンテナが動いた!Takashi Kanai
 
BigData Architecture for Azure
BigData Architecture for AzureBigData Architecture for Azure
BigData Architecture for AzureRyoma Nagata
 
3分でわかるAzureでのService Principal
3分でわかるAzureでのService Principal3分でわかるAzureでのService Principal
3分でわかるAzureでのService PrincipalToru Makabe
 
クラウドコストを最適化せよ!マルチクラウド時代に届けるクラウド活用2.0
クラウドコストを最適化せよ!マルチクラウド時代に届けるクラウド活用2.0クラウドコストを最適化せよ!マルチクラウド時代に届けるクラウド活用2.0
クラウドコストを最適化せよ!マルチクラウド時代に届けるクラウド活用2.0Tomohisa Koyanagi
 
「あの企業は実際どうやってるの?」顧客実例で語るデータ・ドリブンの実像とは (Oracle Cloudウェビナーシリーズ: 2021年9月1日)
「あの企業は実際どうやってるの?」顧客実例で語るデータ・ドリブンの実像とは (Oracle Cloudウェビナーシリーズ: 2021年9月1日)「あの企業は実際どうやってるの?」顧客実例で語るデータ・ドリブンの実像とは (Oracle Cloudウェビナーシリーズ: 2021年9月1日)
「あの企業は実際どうやってるの?」顧客実例で語るデータ・ドリブンの実像とは (Oracle Cloudウェビナーシリーズ: 2021年9月1日)オラクルエンジニア通信
 
ZOZOTOWNのアーキテクトという役割を紹介します
ZOZOTOWNのアーキテクトという役割を紹介しますZOZOTOWNのアーキテクトという役割を紹介します
ZOZOTOWNのアーキテクトという役割を紹介しますHiromasa Oka
 

La actualidad más candente (20)

Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
Power BI をアプリに埋め込みたい? ならば Power BI Embedded だ!
 
インフラCICDの勘所
インフラCICDの勘所インフラCICDの勘所
インフラCICDの勘所
 
S03_まずはここから!Microsoft 365 E3 でセキュリティの第一歩を踏み出す [Microsoft Japan Digital Days]
S03_まずはここから!Microsoft 365 E3 でセキュリティの第一歩を踏み出す [Microsoft Japan Digital Days]S03_まずはここから!Microsoft 365 E3 でセキュリティの第一歩を踏み出す [Microsoft Japan Digital Days]
S03_まずはここから!Microsoft 365 E3 でセキュリティの第一歩を踏み出す [Microsoft Japan Digital Days]
 
[DI12] あらゆるデータをビジネスに活用! Azure Data Lake を中心としたビックデータ処理基盤のアーキテクチャと実装
[DI12] あらゆるデータをビジネスに活用! Azure Data Lake を中心としたビックデータ処理基盤のアーキテクチャと実装[DI12] あらゆるデータをビジネスに活用! Azure Data Lake を中心としたビックデータ処理基盤のアーキテクチャと実装
[DI12] あらゆるデータをビジネスに活用! Azure Data Lake を中心としたビックデータ処理基盤のアーキテクチャと実装
 
Azure Monitor Logで実現するモダンな管理手法
Azure Monitor Logで実現するモダンな管理手法Azure Monitor Logで実現するモダンな管理手法
Azure Monitor Logで実現するモダンな管理手法
 
ビッグデータ処理データベースの全体像と使い分け
2018年version
ビッグデータ処理データベースの全体像と使い分け
2018年versionビッグデータ処理データベースの全体像と使い分け
2018年version
ビッグデータ処理データベースの全体像と使い分け
2018年version
 
M17_情シス必見、Azure Arc によるマルチプラットフォーム管理の今 [Microsoft Japan Digital Days]
M17_情シス必見、Azure Arc によるマルチプラットフォーム管理の今 [Microsoft Japan Digital Days]M17_情シス必見、Azure Arc によるマルチプラットフォーム管理の今 [Microsoft Japan Digital Days]
M17_情シス必見、Azure Arc によるマルチプラットフォーム管理の今 [Microsoft Japan Digital Days]
 
今改めて学ぶ Microsoft Azure 基礎知識
今改めて学ぶ Microsoft Azure 基礎知識今改めて学ぶ Microsoft Azure 基礎知識
今改めて学ぶ Microsoft Azure 基礎知識
 
Azure サポート チームの現場からお届けする落ちないサービスのために
Azure サポート チームの現場からお届けする落ちないサービスのためにAzure サポート チームの現場からお届けする落ちないサービスのために
Azure サポート チームの現場からお届けする落ちないサービスのために
 
え!?データがオンプレにあるけどPower BI で BI したいの?
え!?データがオンプレにあるけどPower BI で BI したいの?え!?データがオンプレにあるけどPower BI で BI したいの?
え!?データがオンプレにあるけどPower BI で BI したいの?
 
M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]
M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]
M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]
 
Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版
 
JAZUG12周年 俺の Azure Cosmos DB
JAZUG12周年 俺の Azure Cosmos DBJAZUG12周年 俺の Azure Cosmos DB
JAZUG12周年 俺の Azure Cosmos DB
 
Microsoft Azure Overview - Japanses version
Microsoft Azure Overview - Japanses versionMicrosoft Azure Overview - Japanses version
Microsoft Azure Overview - Japanses version
 
Windows Server 2016上でLinuxコンテナが動いた!
Windows Server 2016上でLinuxコンテナが動いた!Windows Server 2016上でLinuxコンテナが動いた!
Windows Server 2016上でLinuxコンテナが動いた!
 
BigData Architecture for Azure
BigData Architecture for AzureBigData Architecture for Azure
BigData Architecture for Azure
 
3分でわかるAzureでのService Principal
3分でわかるAzureでのService Principal3分でわかるAzureでのService Principal
3分でわかるAzureでのService Principal
 
クラウドコストを最適化せよ!マルチクラウド時代に届けるクラウド活用2.0
クラウドコストを最適化せよ!マルチクラウド時代に届けるクラウド活用2.0クラウドコストを最適化せよ!マルチクラウド時代に届けるクラウド活用2.0
クラウドコストを最適化せよ!マルチクラウド時代に届けるクラウド活用2.0
 
「あの企業は実際どうやってるの?」顧客実例で語るデータ・ドリブンの実像とは (Oracle Cloudウェビナーシリーズ: 2021年9月1日)
「あの企業は実際どうやってるの?」顧客実例で語るデータ・ドリブンの実像とは (Oracle Cloudウェビナーシリーズ: 2021年9月1日)「あの企業は実際どうやってるの?」顧客実例で語るデータ・ドリブンの実像とは (Oracle Cloudウェビナーシリーズ: 2021年9月1日)
「あの企業は実際どうやってるの?」顧客実例で語るデータ・ドリブンの実像とは (Oracle Cloudウェビナーシリーズ: 2021年9月1日)
 
ZOZOTOWNのアーキテクトという役割を紹介します
ZOZOTOWNのアーキテクトという役割を紹介しますZOZOTOWNのアーキテクトという役割を紹介します
ZOZOTOWNのアーキテクトという役割を紹介します
 

Similar a 情シスの味方、Azure のカスタムロール

Microsoft MVP/Regional Director x Microsoft Japan Digital Days #MSDD2021
Microsoft MVP/Regional Director x Microsoft Japan Digital Days #MSDD2021Microsoft MVP/Regional Director x Microsoft Japan Digital Days #MSDD2021
Microsoft MVP/Regional Director x Microsoft Japan Digital Days #MSDD2021Rie Moriguchi
 
ETロボコン2020 競技会場システムのおはなし
ETロボコン2020 競技会場システムのおはなしETロボコン2020 競技会場システムのおはなし
ETロボコン2020 競技会場システムのおはなしTetsuya Odashima
 
Visual Studio App Centerで始めるCI/CD(iOS)
Visual Studio App Centerで始めるCI/CD(iOS)Visual Studio App Centerで始めるCI/CD(iOS)
Visual Studio App Centerで始めるCI/CD(iOS)Shinya Nakajima
 
Ns study Azure IoTHub紹介
Ns study Azure IoTHub紹介Ns study Azure IoTHub紹介
Ns study Azure IoTHub紹介貴志 上坂
 
Machine Learning Operations (MLOps): Overview, Definition, and Architecture
Machine Learning Operations (MLOps): Overview, Definition, and ArchitectureMachine Learning Operations (MLOps): Overview, Definition, and Architecture
Machine Learning Operations (MLOps): Overview, Definition, and ArchitectureTakuya Minagawa
 
Part 1: IoT 基盤 (製造リファレンス・アーキテクチャ勉強会)
Part 1: IoT 基盤 (製造リファレンス・アーキテクチャ勉強会)Part 1: IoT 基盤 (製造リファレンス・アーキテクチャ勉強会)
Part 1: IoT 基盤 (製造リファレンス・アーキテクチャ勉強会)Takeshi Fukuhara
 
de:code 2019 Azure IoT Hub クラウド側の最新機能:デモも交えてご紹介
de:code 2019 Azure IoT Hub クラウド側の最新機能:デモも交えてご紹介de:code 2019 Azure IoT Hub クラウド側の最新機能:デモも交えてご紹介
de:code 2019 Azure IoT Hub クラウド側の最新機能:デモも交えてご紹介Masaru Takahashi
 
LINE Bot 開発のための Azure Logic Apps 入門
LINE Bot 開発のための Azure Logic Apps 入門LINE Bot 開発のための Azure Logic Apps 入門
LINE Bot 開発のための Azure Logic Apps 入門拓将 平林
 
Visual Studio App Centerで始めるCI/CD(Android)
Visual Studio App Centerで始めるCI/CD(Android)Visual Studio App Centerで始めるCI/CD(Android)
Visual Studio App Centerで始めるCI/CD(Android)Shinya Nakajima
 
アルゴリズムから学ぶAzure mlモジュールの使いこなし方 hd-insight編-
アルゴリズムから学ぶAzure mlモジュールの使いこなし方 hd-insight編-アルゴリズムから学ぶAzure mlモジュールの使いこなし方 hd-insight編-
アルゴリズムから学ぶAzure mlモジュールの使いこなし方 hd-insight編-貴志 上坂
 
Dockerコミュニティ近況
Dockerコミュニティ近況Dockerコミュニティ近況
Dockerコミュニティ近況Akihiro Suda
 
Azure Function GAした!Visual Studio Tools for Azure Functions もプレビューだ!
Azure Function GAした!Visual Studio Tools for Azure Functions もプレビューだ!Azure Function GAした!Visual Studio Tools for Azure Functions もプレビューだ!
Azure Function GAした!Visual Studio Tools for Azure Functions もプレビューだ!Yasuaki Matsuda
 
.NET Micro Framework で IoT
.NET Micro Framework で IoT.NET Micro Framework で IoT
.NET Micro Framework で IoTYoshitaka Seo
 
.NET Core と .NET Framework (続きは de:code 2016 で!)
.NET Core と .NET Framework (続きは de:code 2016 で!).NET Core と .NET Framework (続きは de:code 2016 で!)
.NET Core と .NET Framework (続きは de:code 2016 で!)Akira Inoue
 
チーム開発で徐々にコード品質をあげていく取り組み
チーム開発で徐々にコード品質をあげていく取り組みチーム開発で徐々にコード品質をあげていく取り組み
チーム開発で徐々にコード品質をあげていく取り組みYuta Matsumura
 
サーバーレスやマイクロサービスへの"チャレンジ"を後押ししてくれるセッションを紹介
サーバーレスやマイクロサービスへの"チャレンジ"を後押ししてくれるセッションを紹介サーバーレスやマイクロサービスへの"チャレンジ"を後押ししてくれるセッションを紹介
サーバーレスやマイクロサービスへの"チャレンジ"を後押ししてくれるセッションを紹介Yuta Matsumura
 
Evangelist training program at fixer
Evangelist training program at fixerEvangelist training program at fixer
Evangelist training program at fixerShotaro Suzuki
 
Microsoft Intelligent Edge Technologies
Microsoft Intelligent Edge TechnologiesMicrosoft Intelligent Edge Technologies
Microsoft Intelligent Edge TechnologiesTakeshi Fukuhara
 
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会IoTビジネス共創ラボ
 
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会IoTビジネス共創ラボ
 

Similar a 情シスの味方、Azure のカスタムロール (20)

Microsoft MVP/Regional Director x Microsoft Japan Digital Days #MSDD2021
Microsoft MVP/Regional Director x Microsoft Japan Digital Days #MSDD2021Microsoft MVP/Regional Director x Microsoft Japan Digital Days #MSDD2021
Microsoft MVP/Regional Director x Microsoft Japan Digital Days #MSDD2021
 
ETロボコン2020 競技会場システムのおはなし
ETロボコン2020 競技会場システムのおはなしETロボコン2020 競技会場システムのおはなし
ETロボコン2020 競技会場システムのおはなし
 
Visual Studio App Centerで始めるCI/CD(iOS)
Visual Studio App Centerで始めるCI/CD(iOS)Visual Studio App Centerで始めるCI/CD(iOS)
Visual Studio App Centerで始めるCI/CD(iOS)
 
Ns study Azure IoTHub紹介
Ns study Azure IoTHub紹介Ns study Azure IoTHub紹介
Ns study Azure IoTHub紹介
 
Machine Learning Operations (MLOps): Overview, Definition, and Architecture
Machine Learning Operations (MLOps): Overview, Definition, and ArchitectureMachine Learning Operations (MLOps): Overview, Definition, and Architecture
Machine Learning Operations (MLOps): Overview, Definition, and Architecture
 
Part 1: IoT 基盤 (製造リファレンス・アーキテクチャ勉強会)
Part 1: IoT 基盤 (製造リファレンス・アーキテクチャ勉強会)Part 1: IoT 基盤 (製造リファレンス・アーキテクチャ勉強会)
Part 1: IoT 基盤 (製造リファレンス・アーキテクチャ勉強会)
 
de:code 2019 Azure IoT Hub クラウド側の最新機能:デモも交えてご紹介
de:code 2019 Azure IoT Hub クラウド側の最新機能:デモも交えてご紹介de:code 2019 Azure IoT Hub クラウド側の最新機能:デモも交えてご紹介
de:code 2019 Azure IoT Hub クラウド側の最新機能:デモも交えてご紹介
 
LINE Bot 開発のための Azure Logic Apps 入門
LINE Bot 開発のための Azure Logic Apps 入門LINE Bot 開発のための Azure Logic Apps 入門
LINE Bot 開発のための Azure Logic Apps 入門
 
Visual Studio App Centerで始めるCI/CD(Android)
Visual Studio App Centerで始めるCI/CD(Android)Visual Studio App Centerで始めるCI/CD(Android)
Visual Studio App Centerで始めるCI/CD(Android)
 
アルゴリズムから学ぶAzure mlモジュールの使いこなし方 hd-insight編-
アルゴリズムから学ぶAzure mlモジュールの使いこなし方 hd-insight編-アルゴリズムから学ぶAzure mlモジュールの使いこなし方 hd-insight編-
アルゴリズムから学ぶAzure mlモジュールの使いこなし方 hd-insight編-
 
Dockerコミュニティ近況
Dockerコミュニティ近況Dockerコミュニティ近況
Dockerコミュニティ近況
 
Azure Function GAした!Visual Studio Tools for Azure Functions もプレビューだ!
Azure Function GAした!Visual Studio Tools for Azure Functions もプレビューだ!Azure Function GAした!Visual Studio Tools for Azure Functions もプレビューだ!
Azure Function GAした!Visual Studio Tools for Azure Functions もプレビューだ!
 
.NET Micro Framework で IoT
.NET Micro Framework で IoT.NET Micro Framework で IoT
.NET Micro Framework で IoT
 
.NET Core と .NET Framework (続きは de:code 2016 で!)
.NET Core と .NET Framework (続きは de:code 2016 で!).NET Core と .NET Framework (続きは de:code 2016 で!)
.NET Core と .NET Framework (続きは de:code 2016 で!)
 
チーム開発で徐々にコード品質をあげていく取り組み
チーム開発で徐々にコード品質をあげていく取り組みチーム開発で徐々にコード品質をあげていく取り組み
チーム開発で徐々にコード品質をあげていく取り組み
 
サーバーレスやマイクロサービスへの"チャレンジ"を後押ししてくれるセッションを紹介
サーバーレスやマイクロサービスへの"チャレンジ"を後押ししてくれるセッションを紹介サーバーレスやマイクロサービスへの"チャレンジ"を後押ししてくれるセッションを紹介
サーバーレスやマイクロサービスへの"チャレンジ"を後押ししてくれるセッションを紹介
 
Evangelist training program at fixer
Evangelist training program at fixerEvangelist training program at fixer
Evangelist training program at fixer
 
Microsoft Intelligent Edge Technologies
Microsoft Intelligent Edge TechnologiesMicrosoft Intelligent Edge Technologies
Microsoft Intelligent Edge Technologies
 
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
 
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
Azure IoT 最新アップデート!_IoTビジネス共創ラボ 第7回勉強会
 

Último

「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-LoopへTetsuya Nihonmatsu
 
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~arts yokohama
 
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見Shumpei Kishi
 
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法ssuser370dd7
 
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdfAyachika Kitazaki
 
2024 01 Virtual_Counselor
2024 01 Virtual_Counselor 2024 01 Virtual_Counselor
2024 01 Virtual_Counselor arts yokohama
 
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)ssuser539845
 
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfTaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfMatsushita Laboratory
 

Último (11)

「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
 
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
 
2024 04 minnanoito
2024 04 minnanoito2024 04 minnanoito
2024 04 minnanoito
 
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
 
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
 
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf
 
2024 03 CTEA
2024 03 CTEA2024 03 CTEA
2024 03 CTEA
 
2024 01 Virtual_Counselor
2024 01 Virtual_Counselor 2024 01 Virtual_Counselor
2024 01 Virtual_Counselor
 
What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?
 
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
 
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfTaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
 

情シスの味方、Azure のカスタムロール

  • 1. 情シスの味方、 Azure のカスタムロール Japan Azure User Group 8 周年 LT 2018/09/22 パーソル プロセス&テクノロジー株式会社 Microsoft MVP for Microsoft Azure 小田島 哲也
  • 2. 自己紹介 • 小田島 哲也 (おだしま てつや) • パーソルプロセス&テクノロジー – Azure 導入コンサル、技術支援、最近は開発も – Office 365 もやるよ – そもそも .NET (主に C#) デベロッパー • Microsoft MVP for Microsoft Azure (2018~) • Qiita:https://qiita.com/tetsuya-ooooo • ET ソフトウェア デザイン ロボット コンテスト 実行委員会 (2011~) http://www.etrobo.jp/ – 本部技術委員 兼 東京地区技術委員長 (組み込めないけど) • 地区:競技全般の統括 • 本部:IT インフラ (Azure Platform を積極的に採用) の開発・運用保守 – むかしむかし「あずまひろしはじめました」というチームで参加していた (2007~2008) 2
  • 3. お世話になってます、Azure サポート様のブログ ユーザーへ Azure VM の起動および停止のみを許可する方法 - Japan Azure IaaS Support Blog https://blogs.technet.microsoft.com/jpaztech/2018/08/15/vm_start_stop_user/ 3
  • 5. 仮想マシンの起動と停止の操作のみ許可 • 以下の操作が Action プロパティに含むロールを割り当てる – Microsoft.Compute/virtualMachines/read 仮想マシンのプロパティの読み取り – Microsoft.Compute/virtualMachines/deallocate/action 仮想マシンの割り当て解除の操作 – Microsoft.Compute/virtualMachines/start/action 仮想マシンの開始の操作 • これらのプロパティが含む組み込みロールは – 所有者 (Owner) – 共同作成者 (Contributor) – 仮想マシン共同作成者 (Virtual Machine Contributor) – DevTest Labs ユーザー (DevTest Labs User) • ユーザーに組み込みロールを割り当てるなら 限定的な「DevTest Labs ユーザー」が最適♡ – しかし、他の操作 (LB や NIC にして等) もできてしまう • 許可する操作のみを明示的に限定したいなら、 「カスタムロール」を作成 → ユーザーにそれを割り当てる 5
  • 7. 1.カスタムロール定義 (json) を作成 { “Name”: “カスタムロールの名前", "IsCustom": true, “Description”: “カスタムロールの説明", "Actions": [ このロールで実行できる操作を指定 ], "NotActions": [ 実行できる操作の中 (Actions) から除外する操作を指定 ], "DataActions": [ 対象のオブジェクト内のデータに対して、このロールで実行できるデータ操作を指定 ※プレビュー ], "NotDataActions": [ 実行できるデータ操作の中 (DataActions) から除外するデータ操作を指定 ※プレビュー ], "AssignableScopes": [ このロールを割り当て可能なスコープ (サブスクリプション, リソースグループ, リソース) を指定 ] } 7
  • 8. リソースに対する操作を探し出す Azure Resource Manager のリソース プロバイダー操作 https://docs.microsoft.com/ja-jp/azure/role-based-access-control/resource-provider-operations 巨大なページなので、 ページ内検索を駆使して やりたいことを探し出す ピンとこない説明に苦戦、 負けそう...(@_@) 8
  • 9. (例) Azure VM の起動/停止/接続のみを許可したロール { "Name": "Azure VM Start/Stop/Connect", "IsCustom": true, "Description": "Azure 仮想マシンの起動、停止、接続のみを許可するロール", "Actions": [ "Microsoft.Compute/virtualMachines/read" ,"Microsoft.Compute/virtualMachines/deallocate/action" ,"Microsoft.Compute/virtualMachines/restart/action" ,"Microsoft.Compute/virtualMachines/start/action" ,"Microsoft.Network/networkInterfaces/*/read" ,"Microsoft.Network/networkInterfaces/read" ,"Microsoft.Resources/subscriptions/resourceGroups/read" ,"Microsoft.Resources/subscriptions/resourceGroups/resources/read" ,"Microsoft.ClassicCompute/virtualMachines/read" ,"Microsoft.ClassicCompute/VirtualMachines/start/action" ,"Microsoft.ClassicCompute/virtualMachines/shutdown/action" ,"Microsoft.ClassicCompute/virtualMachines/restart/action" ,"Microsoft.ClassicCompute/virtualMachines/downloadRemoteDesktopConnectionFile/action" ,"Microsoft.ClassicCompute/virtualMachines/operationStatuses/read" ], "AssignableScopes": [ “/subscriptions/<サブスクリプション ID>" ] } 9 ARM VM のプロパティの読み取り ARM VM の開始/再起動/割り当て解除 NIC のプロパティの読み取り RG や RG 内のリソースの読み取り Classic VM のプロパティの読み取り Classic VM の開始/再起動/割り当て解除 Classic VM の RDP ファイルのダウンロード Classic VMの操作状態の読み込み ※あくまで一例です
  • 10. 2.サブスクリプションに登録 PowerShell で行う # ログイン PS C:¥> Login-AzureRmAccount # サブスクリプションを選択 PS C:¥> Select-AzureRmSubscription -Subscription <サブスクリプション ID> # カスタムロールを登録 PS C:¥> New-AzureRmRoleDefinition -InputFile <カスタムロール定義ファイルパス> 10
  • 12. ここで学んだこと カスタムロールを書き換えたい!! • このようにやってはダメ – カスタムロールを Remove → New – ユーザーにロールを再割り当て • こんなふうにやろう – Get-AzureRmRoleDefinition →プロパティを編集 →Set-AzureRmRoleDefinition – Actions や NotActions などの データ型は List<string> – New-Object でオブジェクトを 作って、中身入れて、 該当プロパティに上書き 12 反映がとても遅い!! ※経験談
  • 13. まとめ • Azure 使いたいという社内からの要望はいっぱいある • だけど、自由に使わせるわけにはいかない • 「カスタムロール」と「Azure ポリシー」は、情シスには強力な武器 • ちょっと面倒くさいけど、カスタムロールの取り扱いは 思ってたよりカンタンだった 13
  • 14. 参考文献 • ユーザーへ Azure VM の起動および停止のみを許可する方法 - Japan Azure IaaS Support Blog https://blogs.technet.microsoft.com/jpaztech/2018/08/15/vm_start_stop_user/ • ロールベースのアクセス制御 (RBAC) の設定 – カスタムロールの使用 - Japan Azure IaaS Support Blog https://blogs.technet.microsoft.com/jpaztech/2016/10/12/rbac-custom-role/ • Azure の組み込みロール https://docs.microsoft.com/ja-jp/azure/role-based-access-control/built-in-roles • Azure のカスタム ロール https://docs.microsoft.com/ja-jp/azure/role-based-access-control/custom-roles • ロール定義について https://docs.microsoft.com/ja-jp/azure/role-based-access-control/role-definitions • Azure Resource Manager のリソース プロバイダー操作 https://docs.microsoft.com/ja-jp/azure/role-based-access-control/resource-provider-operations 14