開発者向け画面からテストリクエストを送ってみる際にしか使えない開発用機能なので要注意。使い方について簡単に説明しておく。いうポリシーとして提供されている。復号化し、任意の条件を満たしているかチェックして、リクエストを通過させたり、拒否したりできるものだ。開き、以下の画面でポリシーを編集する。特定のテナントとアプリで認証されたユーザをすべて許可するルールとなる。特定のグループに所属していることをチェックして、簡易的な認可を行うこともできる。変更しておく必要がある。使ったポリシーのサンプルが記載されているので、利用する際には目を通してみると良い。リクエストを投げたいケースがある。仮想キーボードの打ちにくさで、慣れているユーザであっても、あのキーボードで毎回ログイン操作を行うというのは苦痛である。入力なしに認証トークンを取得することができる。※逆に言うとこの方法では、デバイスが第三者に渡ってしまうとパスワード入力なしに認証されてしまうことになる。デバイスとユーザが一対一で紐づいていることが前提となり、また端末の盗難等も考慮していないので、実案件ではセキュリティ要件に応じて利用可否を判断すること。等の外部認証基盤(IdP)への認証を行うことができるというものだ。提供している以下のサンプルアプリが参考になる。試してみることもできる。実装流れ先に認証処理実装の簡単な流れを説明する。使い方は単純になっていて、認証画面が開く直前のイベントに以下の処理を登録してから、認証画面を開く(AccountsSettingsPane.Show())だけで良い。開くAccountsSettingsPane.Show()`イベントハンドラ(OnAccountCommandsRequested)の中身は以下のような感じになる。いう文字列を渡すように決まっているので注意する。deferral.Complete();}ユーザがアカウントを選択した際のイベントハンドラ(WebAccountProviderCommandInvoked)で、実際にトークンを要求する処理を行う。して実装を行っていく。実装の前にいくつか事前準備が必要となる。使った認証を行うには、事前準備として以下を行う必要がある。以下のページから、開発者アカウントを登録する。アプリ開発アカウントを登録したら、開発者ダッシュボードの「概要」タブから、アプリを新規作成して、名前を予約する。確定するので、ダッシュボードのアプリページの「アプリ管理」→「アプリID」から確認しておく。管理画面からアプリを登録する。アプリの種類は「ネイティブ」とする。呼び出す形で利用する。実装方法については、以下のページが参考になる。つを作成するところがポイント。インポートし、それぞれ以下のように設定する。認証メソッドを呼べば良い。スレッドで実行する必要があることに注意する。ソリューションを開く。予約した名前と紐づける必要がある。紐づけを行うことができる。以下のような画面が開くので、アカウントを選択して「Continue」をタップすると、トークンが正しく取得されたことがわかる。ついてざっくり解説したが、せっかくなのでシンプルなサンプルも作ってみた。github.com動くデモはこちら。リポジトリを検索して表示するだけのかんたんなサンプル。側に集約するような構成にしてみた。するだけでちゃんと動く。httpClient.GetJsonAsync<T>(uri);}いろいろ雑だけど、とりあえず動くものはパパっと作れますよという例として。バイナリのまま動かすことができるというフレームワークだ。乗ってるところが大きな違い。使わないこと」とうたってはいるが、実際使ってみるとすでに基本的な機能はかなりできあがっていてそこそこちゃんと動くので、使い方をざっくりまとめておく。二文字目がRじゃなくてLなのかは謎。最新版をインストールする。2018年5月17日時点で最新バージョンは2.1.300-RC1。以下のリンクからインストールする。同居させられる作りになっている。通常版を利用している人も何も考えずにインストールしてしまって大丈夫。同居させると、インストーラの画面はこんな感じになる。hosted)」を選択する。別にあり、純粋にクライアントサイドのみ開発したい場合には、クライアントアプリのみのプロジェクトが生成される「Blazor」を選択する。サイトをホストできるサービスであればどこにでも配置して公開できる。動く環境でである必要がある。プロジェクトを作成すると、以下のようなプロジェクト構成のソリューションが作成される。[プロジェクト名].Client[プロジェクト名].Server[プロジェクト名].Sharedほぼ自明ではあるが、それぞれ以下のような役割のプロジェクトとなる。使ったクライアントアプリの本体部分。拡張なので当たり前といえば当たり前)。パッケージがインストールされている。