あとらすの備忘録

チラ裏のメモ帳 | C#とかVue.jsとかAWSとか興味のあることちまちまやってます。

dotnet cliのMVCテンプレートの認証オプション

概要

dotnet cliMVCテンプレートで認証付き.Net Core MVCのテンプレートを作成したのでメモ

OSXMac)環境でASP.NET Coreの開発をしてるんですが
Windows版のVisual Studio 2017では認証付きテンプレートが作成できるのに
Visual Studio for Macdotnet cliでは作成できず詰まりました。
※各オプションの解説ではないです。オプションがありますよと言う記事です。

テンプレート自体にもオプションがあるとは中々気づきませんでした...

要するに下記画像の赤丸部分で設定できるオプションをdotnet cliでも設定したい。 f:id:HM_Atlas:20190226221318p:plain

目次

環境

  • MacOS Mojave Version 10.14.3
  • .Net Core SDK Version 2.2.104

参考リンク

成果物

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 f:id:HM_Atlas:20190226221232p:plain
個別のユーザアカウント アプリ内のストア ユーザアカウント Individual f:id:HM_Atlas:20190226221228p:plain
個別のユーザアカウント クラウドの既存のユーザストアに接続する IndividualB2C f:id:HM_Atlas:20190226221224p:plain
職場または学校アカウント クラウド - 単一の組織 SingleOrg f:id:HM_Atlas:20190226221220p:plain
職場または学校アカウント クラウド - 複数の組織 MultiOrg f:id:HM_Atlas:20190226221216p:plain
Windows認証 Windows f:id:HM_Atlas:20190226221328p:plain

雑感

dotnet cliのナレッジはまだまだ発信されていないので簡単なことから発信していきたいですね。