概要
dotnet cliのMVCテンプレートで認証付き.Net Core MVCのテンプレートを作成したのでメモ
OSX(Mac)環境でASP.NET Coreの開発をしてるんですが
Windows版のVisual Studio 2017では認証付きテンプレートが作成できるのに
Visual Studio for Macやdotnet cliでは作成できず詰まりました。
※各オプションの解説ではないです。オプションがありますよと言う記事です。
テンプレート自体にもオプションがあるとは中々気づきませんでした…
要するに下記画像の赤丸部分で設定できるオプションをdotnet cliでも設定したい。
目次
環境
- MacOS Mojave Version 10.14.3
- .Net Core SDK Version 2.2.104
参考リンク
成果物
https://github.com/Lycheejam/blog-sample/tree/master/twitter-callback 🔗
dotnet cliテンプレートの確認
下記コマンドでインストールされているテンプレートの一覧を確認できます。
カスタムインストール分も表示されます。
$ dotnet new -l
# または
$ dotnet new --list
dotnet cli MVCテンプレートのオプションを確認
下記コマンドでMVCテンプレートに関するオプションが確認できます。
$ dotnet new mvc -h
# または
$ dotnet new mvc --help
MVCテンプレートを使ったプロジェクトの作成
無印でのMVCプロジェクトの作成
下記コマンドを実行した場合、認証等を無しとしたMVC単品でのプロジェクトとなります。
$ dotnet new mvc -n hogehoge
# または
$ dotnet new mvc --name hogehoge
個人アカウントでの認証付きMVCプロジェクトの作成
下記コマンドで認証付きMVCプロジェクトを作成可能です。
$ dotnet new mvc -n hogehoge -au Individual
# または
$ dotnet new mvc --name hogehoge --auth Individual
認証要素(レベル?)についてはヘルプで参照できる下記を参照してください。
-au|--auth The type of authentication to use
None - No authentication
Individual - Individual authentication
IndividualB2C - Individual authentication with Azure AD B2C
SingleOrg - Organizational authentication for a single tenant
MultiOrg - Organizational authentication for multiple tenants
Windows - Windows authentication
既定: None
認証オプションの対応表
VisualStudio 2017での作成画面とdotnet cliでの作成オプションとの対応表です。
認証オプションのみ記載します。(HTTPSやdockerオプションなどは記載しない)
VisualStudio 2017 | dotnet cli | 参考画像 |
---|---|---|
認証なし | None | ![]() |
個別のユーザアカウント アプリ内のストア ユーザアカウント | Individual | ![]() |
個別のユーザアカウント クラウドの既存のユーザストアに接続する | IndividualB2C | ![]() |
職場または学校アカウント クラウド - 単一の組織 | SingleOrg | ![]() |
職場または学校アカウント クラウド - 複数の組織 | MultiOrg | ![]() |
Windows認証 | Windows | ![]() |
雑感
dotnet cliのナレッジはまだまだ発信されていないので簡単なことから発信していきたいですね。