# Unleash the power!
<!-- Put the link to this slide here so people can follow -->
slide: https://hackmd.io/@dmasubuchi/rJ2sWFNgu
---
有名ドラマ半沢直樹で、主人公の半沢さんは、帝国航空の再建案について取り組んでました。
序章では、半沢さんチームが作成した、再建案が何者かによって漏らされてしまうトラブルが起きてしまいます。
半沢さんは、情報漏えいした人物の特定を瀬名さんに頼んでメールの送信元を割り出してドラマは進展します。
**もし皆さんの会社で、大切な資料をメールで漏洩される、そんな可能性はあるのでしょうか??**
---
### え? Azure AD 使ってないの?
同僚のギモン
---
## 今回のケースでの情報漏洩対策のポイントは?
- メール履歴の監査 :fire:
- ファイルへの保護 :fire:
- 認証と認可は整備 :fire:
---

---
Microsoft Information Protection
---
機密度ラベル

---

---
### 仮に誰でもアクセスできる権限を付与した場合

---
ファイルへのアクセス元IPアドレスは特定できる!

---
### Microsoft 365
さらに、コンプライアンス、インサイダー取引防止機能!
m365-compliance-illustrations.pdf
https://docs.microsoft.com/ja-jp/microsoft-365/compliance/insider-risk-solution-overview?view=o365-worldwide
---

---
---
### Office 365 と Azure Active Directory なら情報漏洩を防御できる :heart:
---
### 弊社はマルチ・クラウドなのだが・・・??
---
古い構成 with VPN
https://www.slideshare.net/ToshihikoSawaki/ms-76418637

---
Single Sign On 製品を導入している

---
#### レガシー AD(オンプレ AD) から モダンなAD(Azure AD)へ
---
```graphviz
digraph {
compound=true
rankdir=RL
graph [ fontname="Source Sans Pro", fontsize=20 ];
node [ fontname="Source Sans Pro", fontsize=18];
edge [ fontname="Source Sans Pro", fontsize=12 ];
subgraph core {
R [label="Remote PC \n Mobile"] [shape=box]
}
R -> V [dir="both"]
R -> Security [dir="both"]
subgraph core {
a [label="社員自宅・カフェ" shape=plaintext ]}
subgraph cluster {
concentrate=true
C [label="SaaS: \n Salesforce, Office 365 \n Box, SanSan, Oracle Cloud"] O [label="オンプレミス \n レガシーAD, アプリ..."] [shape=box]
[shape=box]
V [label="VPN" ]
Security [label="セキュリティ系の簡易ツール: \n SSO IP制御 Cookie制御 \n 端末制御 ワンタイムパスワード \n Active Directory連携 "]
Devtools [label="GitHub \n Azure DevOps \n"]
V -> O [dir="both"]
Security -> C [dir="both"]
Security -> O [dir="both"]
Security -> Devtools [dir="both"]
label="複雑なリモートワーク環境"
}
}
```
---
### さあ、Active Directory 連携を見直して、シンプルになろう
不要なVPN、不要なセキュリティ製品を見直そう
---

https://www.red-gate.com/simple-talk/cloud/security-and-compliance/azure-active-directory-part-1-an-introduction/
---
### 企業によって選択しはさまざま
られます。
認証・認可の仕組みをオンプレミスに用意し、
オンプレミスとクラウドのリソースにアクセスするときに認証・認可が実現できるようにする
認証・認可の仕組みをクラウドに用意し、
オンプレミスとクラウドのリソースにアクセスするときに認証・認可が実現できるようにする
認証・認可の仕組みをオンプレミスとクラウドの両方に用意し、
オンプレミスとクラウドのリソースにアクセスするときに認証・認可が実現できるようにする
```graphviz
digraph hierarchy {
nodesep=1.0 // increases the separation between nodes
node [color=Red,fontname=Courier,shape=box] //All nodes will this shape and colour
edge [color=Blue, style=dashed] //All the lines look like this
認証認可->{オンプレミス認証・認可 クラウドでの認証・認可 ばらばら認証・認可}
オンプレミス認証・認可->{ADDSのフェデレーション 3rdパーティーのSSO}
クラウドでの認証・認可->ITManager
ばらばら認証・認可->{ID連携しない "ディレクトリ同期(Azure Active Directory Connect) "}
{rank=same;認証認可 Teacher1 Teacher2} // Put them on the same level
}
```
---
* グループポリシーなどの昔ながらの Windows Server Active Directory (以下、WSAD) の機能を使いたい
* Azure AD を介して WSAD と連携する
* 既にオンプレミスでActive Directoryを運用していてローカルシステムのADFS SSOを実装している環境
* もし クライアントが Windows 10だけなら(Windows 10にする予定なら)
* Azure AD のみでの運用とすることも検討できます
* デバイス管理の機能が必要な場合は Microsoft Intune により管理
* もし、クライアントが古いWindows が多く、使い続けないといけない場合は
* やもなく、Azure ADとActive Directoryを接続する
* Office 365のオンプレミスの認証基盤に統合する
* または、ADFSから、Azure ADへ移行する(オススメ!)
---
```graphviz
digraph {
nodesep=1.0
node [color=Red,fontname=Courier,shape=box]
edge [color=Blue, style=dashed]
a -> b
}
```
---
```graphviz
digraph {
nodesep=1.0
node [color=Red,fontname=Courier,shape=box]
edge [color=Blue, style=dashed]
Headteacher->{Deputy1 Deputy2 BusinessManager}
Deputy1->{Teacher1 Teacher2}
BusinessManager->ITManager
{rank=same;ITManager Teacher1 Teacher2}
}
```
---
## Content
- IDを中心にセキュリティを考えると監査が簡単
- IDを中心にセキュリティを考えると余計なセキュリティツールがいらない
- VPNベースの運用の手間、コストが大幅に削減される
- 機密情報のレベルに応じたアクセス権の設定が容易になる
- Microsoftの今後のセキュリティソリューションの中心を整備することができる
- ここが最も大事 :heart: :woman:
---
# :fork_and_knife:
---
<style>
code.blue {
color: #337AB7 !important;
}
code.orange {
color: #F7A004 !important;
}
</style>
### <code class="blue">AADに集約できるか?</code>
https://social.msdn.microsoft.com/Forums/azure/en-US/2cdc6bb3-3168-4321-9ed2-d350d37642ea/migrate-entirely-from-onpremises-ad-to-cloudonly-azure-adds
https://qiita.com/tamtamyarn/items/e3a153442f22bf024acb
---
# :bulb:
---
- Dead simple API
- Only cares about application logic
---
```typescript
import * as Channeru from 'channeru'
// setup channel in different page environment, once
const channel = Channeru.create()
```
---
```typescript
// in background script
const fakeLogin = async () => true
channel.answer('isLogin', async () => {
return await fakeLogin()
})
```
<br>
```typescript
// in inject script
const isLogin = await channel.callBackground('isLogin')
console.log(isLogin) //-> true
```
---
# :100: :muscle: :tada:
---
### Wrap up
- Cross envornment commnication
- A small library to solve messaging pain
- TypeScript Rocks :tada:
---
### Thank you! :sheep:
You can find me on
- GitHub
- Twitter
- or email me
{"metaMigratedAt":"2023-06-15T19:18:34.185Z","metaMigratedFrom":"YAML","title":"Case Study of Hanzawa-Naoki Part 2","breaks":true,"description":"View the slide with \"Slide Mode\".","contributors":"[{\"id\":\"d9c3b759-f344-4f65-ae98-4ad8c909da5c\",\"add\":7589,\"del\":1703}]"}