このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

CredentialsContainer: store() メソッド

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨2020年1月⁩.

安全なコンテキスト用: この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。

store()CredentialsContainer のメソッドで、ユーザーの一連の資格情報を Credential インスタンス内に保存し、これを Promise で返します。

メモ: このメソッドは最上位のコンテキストに限定されます。<iframe> 要素で呼び出された場合、効果なく解決されます。

構文

js
store(credentials)

引数

credentials

有効な Credential インスタンスです。

返値

Promise で、 undefined に解決します。

例外

NotAllowedError DOMException

操作対象の現在の資格情報と同じ種類の資格情報が存在する場合に発生します。

認証成功時のパスワード資格情報の保存

このコードは、ユーザーがサインアップまたはログインした後、サーバーが資格情報を確認して正しいことを確認した後に実行されます。

js
// ブラウザーがパスワード資格情報(および資格情報管理 API)に対応しているか調べる
if ("PasswordCredential" in window) {
  let credential = new PasswordCredential({
    id: "example-username",
    name: "Carina Anand", // ログインの場合、名前はサーバーによって決まる
    password: "correct horse battery staple",
  });

  navigator.credentials.store(credential).then(
    () => {
      console.info("ユーザーエージェントの資格情報マネージャーに保存される資格情報。");
    },
    (err) => {
      console.error("資格情報の保存中にエラーが発生しました: ", err);
    },
  );
}

仕様書

Specification
Credential Management Level 1
# dom-credentialscontainer-store

ブラウザーの互換性