Jewelry AI・アカウント

パスワードは前後の空白も含めて、入力したとおりに保存されます

入力した内容がアプリ側で整えられることはありません。最初の文字の前や最後の文字のあとに空白があっても受け付けられ、そのままパスワードの一部になります。画面はそのことを警告しますが、フォームはそのまま送信できます。あとからパスワードを変更しても、変更した端末ではログアウトされません。

入力した文字にアプリが何をするか

アプリはパスワードを切り詰めません。最初の文字の前や最後の文字のあとに空白があれば、それは受け付けられ、パスワードの一部として保存されます。

これは見落としではなく、意図した選択です。黙って文字を取り除くフォームは、断りなく秘密の値を書き換えることになります。そのためアプリは値を入力されたとおりに保ち、代わりにそのことを伝えます。

結果が現れるのはあとから、サインインの場面です。そこでは同じ空白をもう一度入力しなければなりません。警告を出すコードは、そうはならないだろうという想定のうえで書かれています。

確信のあるパスワードでも拒否されることがある理由

目の前の画面では、四つの別々のことが同時に成り立ちえます。文字そのものの話は、最初の一つだけです。

保存されたパスワードには、目に見えない文字が含まれている場合があります。
登録のときに入力された先頭や末尾の空白は、パスワードの一部です。サインインでも同じように再現する必要があります。
アカウントにパスワードがまったくない場合があります。
GoogleやAppleで開いたアカウントは、パスワードなしで存在しえます。アプリは自分で判断せず、パスワードがあるかどうかをサーバーに問い合わせます。
その問いへのアプリの答えは、短いあいだ誤っていることがあります。
ソーシャルログインの直後、アプリはパスワードがあるものとして扱い、そのあと実際の状態を読み取ります。読み取りが成功しない場合、サインインした状態は続きますが、あとの読み取りが成功するまでパスワードの状態が誤ったままになることがあります。これがどのくらいの頻度で起きるかは、クライアントのコードからは分かりません。
失敗した試行をサーバーがどう扱うかは、この画面からは見えません。
ここで説明しているのはクライアントが示すことです。試行の扱いやそのほかのサーバー側の認証規則はその外にあり、このページはそれについてどちらの方向にも述べません。

画面に出ているのはどれか

各行は原因が異なり、必要な対応も異なります。

状況選択理由
パスワードは正しいはずなのに、サインインが拒否される。先頭に空白を入れた値、次に末尾に空白を入れた値をもう一度試す。パスワードは入力されたとおりに保存されており、どちらの空白も入力欄では見えないためです。
GoogleやAppleでアカウントを作成し、パスワードを設定したことがない。復旧するパスワードを探さず、同じプロバイダーで続ける。その方法で作成されたアカウントにはパスワードがない場合があり、リセットするものが存在しないためです。
持っていないものをパスワードの欄が求めてくる。いったん画面を離れ、アプリにもう一度サーバーへ問い合わせさせてから戻る。アカウントにパスワードがあるかどうかのアプリの読み取りは、再取得が成功するまで誤ったままになりうるためです。
作業が途中のままだが、パスワードを変更したい。この端末で、いま変更する。変更を行った端末はサインアウトされず、セッションが維持されるためです。
同じアカウントを二台目のスマートフォンやタブレットでも使っている。そちらで改めてサインインする段取りをしておく。時間の目安は当てにしない。ほかの端末の切断はアプリが伝えるサーバー側の挙動であり、それぞれの端末がいつ気づくかは、この画面からは述べられないためです。

パスワードを変更しても、いま使っているセッションは終わりません

クライアントはこの点を明示しています。パスワードの変更に際して、呼び出し元のセッションは意図的に維持され、ほかの端末は切断されます。

実際には、変更を行ったスマートフォンやタブレットが最初の画面に戻されることはありません。開いていた作業をそのまま続けられます。

ほかの端末の切断はサーバーのものです。アプリは結果を伝えるだけなので、このページはそれらの端末が動かなくなる時点も、セッションの有効期間や期限の数値も述べません。ここからはどれも読み取れません。

この画面が示すことと、示さないこと

左の列は、締め出された出品者が実際に投げかける問いです。右の列は、このページが止まる場所です。

問いクライアントが示すこと示さないこと
入力した空白は保持されますかはい。パスワードは入力されたとおりに保存されますサーバーが値そのものに適用する規則
パスワードを変更すると、この端末からログアウトされますかいいえ。この端末のセッションは開いたままですセッションの有効期間、更新の間隔、期限の数値
ほかの端末はどうなりますか切断されますそれぞれの端末がいつ気づくか。アプリはサーバーの挙動を伝えるだけです
自分のアカウントにパスワードはありますかソーシャルログインのあと、アプリがサーバーから答えを読み取ります再取得が成功するまでに、その答えが短いあいだ誤っている頻度

この説明の境界

以下はいずれも、ほかのページが担当するか、クライアントからは証明できない事柄です。

  • 試行が繰り返し失敗したあとにサーバーが何をするか。サーバー側の認証とセッションの規則はこの画面からは読み取れず、このページはそれについてどちらの方向にも述べません。
  • セッションの有効期間、更新の間隔、期限の数値。
  • 切断された端末が、サインインした状態でなくなる時点。
  • サインアウトがスマートフォンから何を消すか、そして端末の一覧が何をするか。どちらもサインアウトについての別のページが扱います。
  • アカウント削除の画面の手順。それは独立したページです。ここでは、そうした画面が求めるパスワードをアカウントが持たない場合がある理由だけを説明します。
  • いま手元のアプリでGoogleやAppleでのサインインが有効になっているかどうか。クライアントのコードから分かるのは、設定されたプロバイダーが表示されるということだけで、その設定の中身ではありません。

どのように確認したか

ここに書かれていることは、2026年8月にJewelry AIのモバイルクライアントから読み取ったものです。切り詰められないパスワードと、止めない警告はapps/jewelry-mobile/src/features/auth/auth-validation.tsに基づきます。そこには、先頭の空白が受け付けられて保存されること、そして利用者がサインインのときにそれを入力し直さないであろうことがコメントとして記録されています。

パスワードの変更後も残るセッションと、ソーシャルログインのあとに行われるパスワード有無の読み取りはapps/jewelry-mobile/src/features/auth/auth-provider.tsxに基づきます。呼び出し元のセッションを維持しながらほかの端末を切断すること、そしてGoogleだけの利用者はパスワードを持たない場合があるため、仮に置いた値を実際の値に置き換えることが、コメントに記録されています。

サーバーの挙動はこの読み取りの外にあります。サーバーが決めることについては、クライアントから規則を推測せず、そう述べます。

よくある質問

空白ひとつで、本当に自分のアカウントから締め出されることがありますか。

あります。アプリは入力された内容を切り詰めないため、パスワードの先頭や末尾の空白はその一部になります。あとからサインインするときは、その空白も入力することになります。画面は空白を見つけると警告しますが、その警告はフォームの送信を止めません。

パスワードを変更すると、アプリからログアウトされますか。

変更を行った端末ではログアウトされません。そのセッションは開いたままで、作業を続けられます。ほかの端末は切断されます。この切断はアプリが伝えるサーバー側の挙動であり、それぞれの端末にいつ現れるかは、このページでは述べません。

Googleでサインインしたのに、アプリがパスワードを求めてきます。どうすればよいですか。

GoogleやAppleで開いたアカウントには、パスワードがまったくない場合があります。ソーシャルログインの直後、アプリはパスワードがあるものとして扱い、そのあとサーバーから実際の状態を読み取ります。その読み取りが成功しない場合、あとの読み取りが成功するまで状態が誤ったままになることがあります。いったん画面を離れ、アプリにもう一度サーバーへ問い合わせさせてから戻るのが、現実的な対応です。

最小の文字数や、試行できる回数の上限はありますか。

このページでは答えられません。ここで説明しているのは手元のアプリの挙動であり、その種の規則はサーバー側にあって、クライアントが示す範囲の外です。推測する代わりに、このページはそれについてどちらの方向にも述べません。