- ベストアンサー
ユーザIDの変更不可の理由
こんにちは。 私は会員登録を行うサイトの作成を行っています。 ログインをユーザIDとパスワードで行う予定ですが、 同じような会員登録を行うサイトを調べてみると、 ユーザIDを登録時に決めたものから変更できるサイトとできないサイトがあります。 データベース的には変更不可の連番のNoを持たせるので ユーザIDを変更されても問題ないものとしたときに、 ユーザIDを変更できるようにしたことで、何かデメリットはありますでしょうか? よろしくおねがいします。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
今あるシステム(グループウェアなど)と、これから作ろうとされるシステムを同時に語ると紛らわしです 今あるものは、運用や設計のポリシーがあります 今から作るものはポリシーを作れば良いのです セキュリティ云々はIDを画面表示する事です。 その場合認証が実質パスワードのみになるためです
その他の回答 (5)
- singlecat
- ベストアンサー率33% (139/418)
>これは私がログインIDが表示されていることに気付いていないだけでしょうか? それとも、ログインIDは変更できなくてもかまわないという思想で作られただけでしょうか? 先程説明したように ログインIDは認証時のみで使用するためです セキュリティ上もその方が都合が良いためです グループウェアなどの利用者は基本的に個人を特定するために個人に割当ますので変更しません。
お礼
ご回答ありがとうございます。 回答を参考にさせていただきシステムにあった仕様にして参ります。
補足
何度も質問して申し訳ございません。 >セキュリティ上もその方が都合が良いためです ログインIDを変更できないようにすることでセキュリティ上、 どのように都合がよいのか教えていただけませんでしょうか? できればログインIDは変更できるものにしたいと思っています。
- singlecat
- ベストアンサー率33% (139/418)
単純に設計思想の問題だけです。 ユーザIDを変更するのはどんな事があってもNGです。 ユーザIDとログインIDを分けて考えます(おそらく仰りたいことはコレの事ですよね) ユーザIDは不変ですからこのIDで全てのテーブルを管理すれば問題ありません。 ログインIDは、ログイン認証時にしか使用しませんので、テーブル(データ)管理には 全く影響しないので、ユーザに自由に改変させる事ができます。 但し、ユーザIDはユニークになる必要がありますから、 そのロジックを入れる事に注意が必要です。
お礼
ご回答ありがとうございます。 回答を参考にさせていただきシステムにあった仕様にして参ります。
補足
>ユーザIDとログインIDを分けて考えます(おそらく仰りたいことはコレの事ですよね) そうです。私の言うユーザIDとは、singlecat様のおっしゃるログインIDのことだと思います。 このログインIDが、私が知っているものですとグループウェアなどでは個人が変更できないものに なっていることが多いと思っています。 ログインすると氏名が表示され、他のユーザにもその氏名が表示されて ログインIDが表示されることはありません。 これは私がログインIDが表示されていることに気付いていないだけでしょうか? それとも、ログインIDは変更できなくてもかまわないという思想で作られただけでしょうか?
- chie65536(@chie65535)
- ベストアンサー率44% (8740/19838)
>ユーザIDを変更できるようにしたことで、何かデメリットはありますでしょうか? 紛らわしく、ユーザー間でトラブルになる可能性がある。 例えば… AさんがユーザーID「ABC」でユーザー登録し、Aさんの知り合いであるCさんが「AさんはABC」だと知ります。 一方、Aさんとは無関係なBさんがユーザー登録し、ID「DEF」を取りました。 ある時、AさんがユーザーIDを「GHI」に変えました。Aさんの知り合いのCさんは、その事を知りません。 そのあと、BさんがユーザーIDを「ABC」に変えたとします。 ユーザーIDの「ABC」は「今はもう使われていない」のでBさんが利用できてしまいます。 このような状態で、Cさんが、Aさんにコンタクトを取ろうとして「ユーザーIDがABCの人」にアクセスし、メッセージ等を送ったとします。 Cさんは「Aさんに送ったつもり」でも、実際にはBさんに送られてしまいます。 このように「ユーザーIDがコロコロ変わる」と、ユーザー間で様々なトラブルが発生します。 従って、ユーザーIDを変えれるようにする場合は「過去に使用されたIDは、他人が再利用できないようにする」など、色々と制限を持たせないとなりません。 ユーザー情報をデータベース化する際も「過去に使われた、再利用できないID」や「退会した人のID」など、一度でも使われたIDはすべて記録しておかなければなりません。 未使用になったIDや、変更前の古いIDなど、すべてのIDを全部記録しておかないと「他人がIDを再利用してしまうのを防げない」ですから、データベースが肥大化してしまうと言うデメリットも出ます。
お礼
ご回答ありがとうございます。 回答を参考にさせていただきシステムにあった仕様にして参ります。
補足
ユーザIDはあくまでログインにのみ使用するものとします。 ユーザ名が別にあり、登録時につけたものから変更できないようにします。 この場合はユーザIDが変更できても問題ありませんでしょうか?
- yambejp
- ベストアンサー率51% (3827/7415)
可変にしたいならニックネームで十分ですね あえてログインに使用するユーザーIDを可変にするメリットはありません
お礼
ご回答ありがとうございます。 回答を参考にさせていただきシステムにあった仕様にして参ります。
- LancerVII
- ベストアンサー率51% (1060/2054)
こんにちは。 機能次第だと思います。 ここのようなサイトの場合、ユーザIDが変更されたら、誰だかわからなくなるような作りであればデメリットとなると思います。 しかし、表示名が他に設定できるのであれば特に問題はなさそうです。 あとは、変更させる機能を作らなくてはいけないのと、前に使っていたIDを利用させるまでの決まりごととか必要になってくると思います。 あとは、ユーザ視点で何にしたか忘れてしまうとか?
お礼
ご回答ありがとうございます。 回答を参考にさせていただきシステムにあった仕様にして参ります。
お礼
度々ご回答くださりありがとうございます。 回答を参考にさせていただき、作成するシステムにあったポリシーを定めたいと思います。