トレーニング
モジュール
Azure API Management で API の認証を制御する - Training
API キーとクライアント証明書認証で、承認されていない使用から API を保護する方法を確認します。
このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
NuGet をパッケージ配布用のより安全な環境にするために、スコープを追加して API キーを管理することができます。
ご利用の API キーにスコープを指定する機能により、ご利用の API に対する制御性を高めることができます。 次のことを実行できます。
お客様がより粒度の細かいアクセス許可を持つことができるように、API キーのスコープをサポートしています。 これまで、NuGet ではアカウントに対して単一の API キーが提供されていましたが、この方法には次に示すいくつかの欠点がありました。
Microsoft では、スコープ設定された API キーによって、既存のワークフローのいずれも中断することなくこれらの問題に対処することを試みています。
ご自分の nuget.org アカウントにサインインするか、まだ持っていなければ、アカウントを作成します。
右上にあるユーザー名を選択し、[API キー] を選択します。
[作成] を選択して、キーの名前を指定します。
[スコープの選択] で [プッシュ] を選択します。
[パッケージの選択]>[glob パターン] に「*」と入力します。
[作成] を選択します
[コピー] を選択して新しいキーをコピーします。
重要
スコープを使用して、別の目的のために別の API キーを作成できます。 各キーには有効期限の時間枠があり、特定のパッケージ (またはの glob パターン) に対してスコープを設定できます。 また、各キーのスコープは、「新しいパッケージとパッケージ バージョンのプッシュ」、「新しいパッケージ バージョンのプッシュのみ」、「またはリストから外す」など、特定の操作に限定して設定します。
組織のパッケージ管理を行う担当者が必要なアクセス許可以外は持たないように、スコープを使用して、担当者ごとに API キーを作成できます。
ご自分の要件に基づいて複数の API キーを作成できます。 API キーは 1 つまたは複数のパッケージに適用できます。また、API キーには特定の特権を付与するさまざまなスコープを設定し、有効期限を関連付けることができます。
次の例では、有効期間が 365 日の Contoso service CI
という名前の API キーを持っています。これを使用して特定の Contoso.Service
パッケージに対してパッケージをプッシュすることができます。 これは、同じ組織内でさまざまなチームがそれぞれ異なるパッケージで作業していて、チームのメンバーには担当のパッケージに対してのみ特権を付与するキーが提供されるという典型的なシナリオです。 有効期限は、キーが古くなったり忘れられたりするのを防ぐためのメカニズムとして機能します。
複数のパッケージで作業していて、管理すべきパッケージのリストが大きくなっている場合は、glob パターンを使用して複数のパッケージをまとめて選択する方法を選択できます。 たとえば、ID が Fabrikam.Service
で始まるすべてのパッケージに対するキーに特定のスコープを付与したい場合は、[Glob パターン] テキスト ボックスに fabrikam.service.*
と指定することでそれを行うことが可能です。
glob パターンを使用して API キーのアクセス許可を決定する方法は、glob パターンに一致する新しいパッケージにも適用されます。 たとえば、Fabrikam.Service.Framework
という名前の新しいパッケージをプッシュしようとしている場合、以前に作成したキーを使用してそれを行うことができます。これは、そのパッケージが glob パターン fabrikam.service.*
に一致しているためです。
セキュリティ保護のため、新しく作成されたキーは画面上には決して表示されず、[コピー] ボタンを使用することでのみ利用できます。 同様に、ページが更新された後にキーにアクセスすることはできません。
キー自体は変更せずにキーのアクセス許可とスコープを更新したい場合もあります。 単一のパッケージに対して特定のスコープが設定されたキーがある場合、1 つまたは複数の他のパッケージに同じスコープを適用することを選択できます。
アカウントの所有者はキーを更新することを選択できます。その場合、アクセス許可 (パッケージに対する)、スコープ、および有効期限は変わりありませんが、新しいキーが発行されて古いキーは使用できなくなります。 これは、古いキーを管理する場合や、API キーが漏洩する可能性がある場合に役立ちます。
これらのキーが不要になった場合は、それらの削除を選択することもできます。 キーを削除すると、そのキーは削除されて使用できなくなります。
ご利用の古い (レガシ) API キーは引き続き機能し、ご自分が希望する限りは、機能させることができます。 ただし、それらのキーを使用してパッケージをプッシュしていない期間が 365 日を経過した場合、それらは廃止されます。 詳細については、ブログ記事「Changes to expiring API keys」(期限切れが近い API キーに対する変更点) を参照してください。 このキーは更新ができなくなっています。 レガシ キーを削除し、スコープ設定された新しいキーを代わりに作成する必要があります。
注意
このキーはすべてのパッケージに対するすべての権限を備え、期限切れになることはありません。 このキーを削除し、スコープ設定されたアクセス許可と明確な有効期限を備えた新しいキーを作成することを検討する必要があります。
作成できる API キーの数に制限はありません。 ただし、どこで誰が使用しているのかが把握されていない古いキーが多くなってしまわないように、管理可能な個数に抑えることをお勧めします。
はい。 ご自分のレガシ API キーは削除することができますし、おそらくそうする必要があります。
いいえ。 削除されたら、新しいキーを作成するしかありません。 誤って削除したキーを元に戻すことはできません。
いいえ。 キーを更新すると、古いキーと同じスコープ、アクセス許可、および有効期限を持つ新しいキーが生成されます。 古いキー自体は存在しなくなります。
スコープを変更することはできませんが、それが適用可能なパッケージ リストを編集することはできます。
いずれかのキーが期限切れになった場合は、ページ上部に警告メッセージを表示してお知らせします。 また、キーの有効期限が切れる 10 日前にアカウントの所有者に警告の電子メールを送信し、事前に対処できるようにしています。
トレーニング
モジュール
Azure API Management で API の認証を制御する - Training
API キーとクライアント証明書認証で、承認されていない使用から API を保護する方法を確認します。