目次
meraki管理コンソールへのログインにAzureADを利用する
SAML設定シリーズ(?)
Cisco Meraki便利ですよね。管理コンソールにログインできればNW断も簡単に発生させることができてしまうのでここの管理コンソールログインにAzureADの情報を利用するようにします。
AzureADにアプリケーションを登録
- AzureADにログインします
- 「エンタープライズアプリケーション」をクリックします
- 【新しいアプリケーション】をクリックします
- 【ギャラリー以外のアプリケーション】をクリックします
- 任意の名前を入力し(ここではMerakiとしました)、【追加】をクリックします
- 「シングルサインオン」→【SAML】をクリックします。(画面はkintoneのときのスクリーンショットを使いまわしw)
- [SAML署名証明書]にある鉛筆マークをクリックします
- 【新しい証明書】をクリックします
- 署名オプションから「SAMLアサーションへの署名」を選択し、署名アルゴリズムから「SHA-1」を選択し、【保存】をクリックします
- 非アクティブ証明書上で右クリックし、【証明書をアクティブにする】をクリックします
- 【はい】をクリックします
- アクティブ証明書で右クリックし、【Base64証明書のダウンロード】をクリックします
- ダウンロードした証明書ファイルを開き、「詳細」タブをクリックします
拇印の内容をコピーします
- コピーした拇印を、下記のフォーマットに編集します。
例)12hdlo9873jdnm0984hrti2ashlfjhkto447823h → 12:hd:lo:98:73:jd:nm:09:84:hr:ti:2a:sh:lf:jh:kt:o4:47:82:3h - meraki Dashboardへログインします
- 「オーガナイゼーション」→【設定】をクリックします
SSOの設定
- 「SAML設定」欄にある「SAML SSO」から「SAML SSOが有効」を選択し、【SAML IdPの追加】をクリックします
- 「X.509証明書のSHA1フィンガープリント」欄に事前に編集した証明書の拇印情報を入力します。
- 【変更内容を保存】をクリックします
- AzureAD側に作成したMerakiアプリケーションに戻ります
- 「基本的なSAML構成」横にある鉛筆マークをクリックします
- 識別子欄に、https://dashboard.meraki.com/と入力します。
応答URL欄には、meraki側に表示されている「カスタマーURL」のURLをコピーし貼り付けます。
- 【保存】をクリックします
ロールの作成
Meraki側にSAML認証用ロールを作成し、AzureAD側のマニフェストと連携できるようにしていきます。
- meraki ダッシュボードへログインします
- 「オーガナイゼーション」→【管理者】をクリックします
- SAMLの管理者役割欄にある【SAMLの役割を追加】をクリックします
- 必要情報と権限を設定し、【役割を作成】をクリックします
今回は、管理者用のAdminロールと読み取り専用のReadというふたつの役割を作成しました。
設定は以下のようになっています。(必要に応じて権限設定を変更してください)役割 Admin Read オーガナイゼーションにおけるアクセス フル 読み取り専用 - 一番下にある【変更内容を保存】をクリックします
AzureADマニフェストの編集
AzureAD側に作成したアプリケーションのマニフェストを修正し、merakiに作成したロールと一致させます
- 事前にGUIDを2つ作成します
- https://www.guidgenerator.com/online-guid-generator.aspx へアクセスします
- 「How many GUIDs do you want」を2にし、【Generate some GUIDs!】をクリックします。
- 作成されたGUIDをメモ帳等に保存しておきます
- AzureADを開き、「アプリの登録」→「すべてのアプリケーション」→ 作成した【meraki】をクリックします
- 【マニフェスト】をクリックします
- appRoles内を編集します
idに事前に作成したGUIDを設定します。
valueに、meraki側で作成したロール名を指定します。(今回はAdminとRead)
descriptionやdisplaynameもあわせておきます。"appRoles": [ { "allowedMemberTypes": [ "User" ], "description": "Admin", "displayName": "Admin", "id": "18d14569-c3bd-****-****-********", "isEnabled": true, "lang": null, "origin": "Application", "value": "Admin" }, { "allowedMemberTypes": [ "User" ], "description": "Read", "displayName": "Read", "id": "b9632174-c057-****-****-********", "isEnabled": true, "lang": null, "origin": "Application", "value": "Read" } ],
- 【保存】をクリックします
クレームルールの編集
- 「ユーザ属性とクレーム」横にある鉛筆マークをクリックします
- 【新しいクレームの追加】をクリックします
- 以下のように設定し【保存】をクリックします。
名前 username 名前空間 https://dashboard.meraki.com/saml/attributes ソース 属性 ソース属性 user.userprincipalname - 【新しいクレームの追加】をクリックします
- 以下のように設定し【保存】をクリックします。
名前 role 名前空間 https://dashboard.meraki.com/saml/attributes ソース 属性 ソース属性 user.assignedroles
アプリケーションにユーザーを割り当てる
マイポータルからアクセスを確認する
- http://myapps.microsoft.com にアクセスします
- 割り当てたユーザでログインします
- アイコンからmeraki を検索しクリックします
- 正常にmerakiダッシュボードにログインできることを確認します
せっかくなのでMerakiアイコンにしておこうと思ったのですが、公式サイトからダウンロードできないのかなぁ・・・
プロダクトイメージ内にある、「Cisco Meraki Topology Icons」の中のアイコンでも設定しておこうかな