web-dev-qa-db-ja.com

組織内のパスワード管理

組織内には、サーバーのrootアカウント、ホスティングアカウント、ルーターログインなど、追跡する必要のあるパスワードが多数あります。

一部の組織では、IT部門の責任者がこれらのパスワードのみを知っている、パスワードがどこかに書き留められて、ログインの背後にあるWikiに保存されている、またはパスワードがサーバーのファイルに保存されている(おそらく暗号化されている)場合があります。

私の質問は、これらのパスワードを管理し、安全な方法でパスワードを保存する最も効果的な方法は何ですか。このトピックについては、ホームユーザーについて以前に説明しました ここ ですが、中規模から大規模のビジネスでこの問題に取り組むための最良の方法に特に興味があります。また、最も効果的ではないにしても、他の人々の組織内でどのようなアプローチが使用されているかについても興味があります。

34
Mark Davidson

私はこの問題の解決策の多くの実装を見てきましたが、おそらく最も便利ではないにしても、最も完全なものは、環境によってパスワードの暗号化されたテキストファイルのみを含むスーパーユーザーに制限されたGitリポジトリであったと思います。デバイス、混合サーバー、およびモデムなどの専用デバイスでのパスワードローテーションの管理は、個別に処理されました。

このソリューションは、パスワードの最新リビジョンを受け取るためにユーザーが実行する必要がある単純な更新と、記録保持のために以前のパスワードの追跡可能な履歴を提供するため、新しいパスワードの配布を大幅に簡素化しました。

ファイルをGPGで暗号化したことを思い出しますが、ファイル自体を処理するための多くの解決策と実行可能なアプローチがあります。

このアプローチの明らかな欠点は、特にパスワードが変更された場合、必要なパスワードを検索する1つ以上のファイルを復号化することです。もちろん、他のものと同様に、パスワードを頻繁に使用するほど、それを記憶する可能性が高くなります。また、問題のデバイスによっては、アクセスする必要がないため、アクセスを頻繁に行う必要はありません。適切なパスワードを取得するためのやや長いプロセス。

サーバーや他のデバイスでパスワードを生成および/または変更するための戦略やスクリプトにも興味がある場合は、私が採用しているものも共有していただければ幸いです。

-

よろしくお願いします。

ファイルの暗号化、PGP、またはその他の知識があることを前提としています。これが間違っている場合は、遠慮なく質問してください。いくつかの例を提供させていただきます。

Gitリポジトリーのセットアップは比較的簡単で、経験のあるほとんどのコンテンツ管理ソリューションとの類似点が表示されます。 Gitに関する1つの注意:これは設計上、完全に開いているため、特定のファイルまたはリポジトリへのアクセスを制限するために追加の手順が必要になります。これは、ファイルシステムACLを利用することで比較的簡単に実現できます(考えられるソリューションは1つだけです)。そうは言っても、特に別のコンテンツ管理ソリューションが既に組織で使用されている場合は、慣れ親しんだソリューションを使用することをお勧めします。

ファイルは、定義により、ホスト名などのデバイス識別子をパスワードに、場合によってはユーザー名に関連付けるパスワードデータベースを表します。例えば: router-1.internetdomainwebsite.com administrator soopersekretpasswerd。理想的には、ファイルを暗号化せずに保存することは決してありませんが、この戦略に従うと、パスワードの取得が比較的不便になります。このため、暗号化フレームワーク内で機能するようにアクセサーをスクリプト化することをお勧めします。おそらく識別子を検索用語として使用し、要求されたパスワードのみをファイルに書き込んで、要求者が1回だけ使用できるようにします。

パスワードの変更をサポートするすべてのデバイスをスクリプト化できます。ほとんどのデバイスはCLIからのパスワードの変更をサポートしているため、Perl、Python、または選択した言語のExpect言語やそのライブラリーを確認することをお勧めします。私は個人的に、目的のユーザー名を受け入れ、現在のパスワードを受け入れ、目的のパスワードを受け入れて検証し、渡されたまたは提供されたすべてのホストの変更を確認します。そのかなり必要最小限のPerl with Expect。

14
Tok

私はデジタルエージェンシーを運営しており、多くの場合、さまざまなパスワードを管理して、それらを開発者/マネージャーのチーム間で共有する必要があるため、これを管理するための最良の方法について調査を行っています。 (以前はDropboxで同期されたKeePassを使用していましたが、管理できなくなりました。)

私たちは、オフィスにいないときにコンピューターやモバイルデバイスからアクセスできるcloud/hosted solutionを決定しました。

これらは、候補リストを作成したオプションの一部です。

  • LastPass
    個々のエントリは無料のアカウントで共有できますが、単一のフォルダを共有するにはプレミアム($ 12 /年)アカウント、または複数のフォルダを共有するにはエンタープライズアカウント($ 24 /年)が必要です。

  • 1パスワード
    プランに応じて、ユーザーあたり月額3〜8ドル

  • パスパック
    1ユーザーは無料、3ユーザーは年間18ドル、15ユーザーは年間48ドル。
    残念ながら、ユーザーインターフェイスはそれほど親切ではありませんが、どうやら2014年に再設計が行われる予定です。

  • ダッシュレーン
    無料の基本アカウント、またはユーザーあたり月額$ 40で、デバイス間で同期し、5つ以上のアイテムを共有します。

    参照: Dashlaneのセキュリティ分析

  • CommonKey
    3人のチームは無料、または月額$ 20 +会社/エンタープライズ機能はユーザーあたり月額$ 2 /ユーザー。

  • Mitro
    無料で素晴らしいUIですが、機能が少ないです。

  • Meldium (現在LogMeInが所有)
    20ユーザーで月額$ 29 /から。

  • RoboForm Enterprise
    ライセンスごとに37.95ドル、1回限り。

それぞれのセキュリティについてコメントすることはできませんが、ほとんどの場合(ありがたいことに!)クライアント側で暗号化を実行しているため、開発者や会社の管理者でさえパスワードにアクセスできません。

LastPassは私たちのニーズのほとんどを満たしているようですので、現在それを試しています。最初はパスパックを推奨していたのですが、インターフェースがかなり不格好で、数百のアカウントを含むKeePassファイルのインポートを拒否していました。

このリストに追加の詳細や価値のある追加がある場合はコメントしてください。更新を試みます。

参照: LastPassのようなパスワードマネージャはどの程度安全ですか?

9
Simon East

あなたのコメントによると、あなたは共有ユーザー/シングルユーザーモードを主張するシステムとデバイスについて話しているということです:

まず、これをできるだけ回避/最小化するようにしてください。

次に、これをできるだけ避けて最小化します。

第三に、これは製品/サービスを評価する際の考慮事項であることは間違いありません-そのような本質的な不安がある場合、結局それを望まないかもしれません。そこにも他の問題がある可能性があります...

4番目に、ベンダー/プロバイダーに確認して、安全に構成する方法があるかどうかを確認します。

5番目に、ユーザー認証を適用する薄い「プロキシ」タイプのアプリケーションを作成し、独自の内部ランダムパスワードを使用して、デバイスに独自の単一アカウントを使用することを検討してください。

6番目-上記のaaaalllが関連していない/機能しない場合(真剣に??)ランダムに生成されたパスワードを含むファイル。
組織のカルチャー/タイプによっては、パスワードを印刷して、セキュリティ担当者によって保護された実際の安全な場所に保管し、管理者のみに与えられる組み合わせを使用する方がよい場合があります。

8
AviD

パスワードは問題であり、解決策ではありません。一般的な問題は、安全な認証と承認であり、「ID管理」の一部と見なされることがよくあります。

LDAPまたはKerberos/ADを使用して、認証を一元化し、パスワードを同期させることができます。 SSHと公開/秘密鍵認証を使用することも、もう1つの優れたオプションです。

最も現代的なアプローチは、より一般的で便利な方法でその問題を解決することです。これは、パスワードから安全なトークンへの移行や、その他のより堅牢な認証方法にも役立ちます。ユーザーが一度認証を行い、その認証を利用して他のサービスにアクセスすることを許可するシングルサインオンシステムは、一般的なソリューションです。

これを行うための技術的アプローチには、OAuth、SAML、Shibboleth、InfoCardなどがあります。

5
nealmcb

すべてのタイプのrootパスワードと管理者アカウントは、次の方法で実行する必要があります。

3つの主要な利害関係者は、最大サイズの非常にランダムな文字の組み合わせでランダムに割り当てます。

彼らは(記憶せずに)それらを書き留め、封筒に入れて安全に保管/保護します。彼らは毎年新しいパスフレーズでそれらをローテーションします。

日常の使用は、実際の名前に関連付けられたグループ管理者アカウントを介して行われ、請負業者はアカウント名(例:admjsmithではなくadmcjsmith)とドメイン(可能な場合)の両方で区切られます。 Unix/LDAPは同様の方法で行われます。 Sudo経由。

RootやAdministratorなどの名前付きアカウントは決して使用したり、知られたりしてはなりません。同様に、クラウドアクセスキー/ APIキーのアカウントは、区分して保護する必要があります。

4
atdre

パスワードの保存にはKeePassを使用します。 ITの各チームリーダー(セキュリティ、システム、臨床、ビジネス、補助)は、チームのKeePassデータベースとコンテンツの管理を担当します。特定のデータベースにアクセスできる人物が部署または組織を離れた場合、そのデータベースのすべてのパスワードを変更する必要があります。

私は、監査とパスワード管理をサポートするために認証をプロキシするアプリケーションを確認しました。これらは、より一般的なアプリケーションの一部では機能しましたが、使用する業界固有のアプリケーションには対応していませんでした。

3
Wayne

http://www.thycotic.com/ で「Secret Server」を使用してきました。単一のパスワードをプロビジョニングして、それを必要なだけ多くのまたは少数の個人間で共有できます。

監査証跡があり、優れた検索機能がWebアプリケーションに組み込まれています。 1人のユーザーが無料で利用できるアプリケーションのオンライン「クラウド」バージョンもあります。

所有するデバイスごとに新しいシークレットを作成し、必要に応じて独自のシークレットを追加できます。

Security Choices

このデータベースへのすべてのアクセスは、ローカルまたはActive Directoryの資格情報によって保護されています。そうすることを選択した場合、シームレスログイン(SSO)を使用して、現在ログインしているユーザーのデータベースにKerberos/NTLM経由でアクセスできます。

全体として、これはチームにとって、そして企業のセキュリティ情報のための一般的なリポジトリとしては良い選択だと思います。

3

私はnealmcbに同意します。有能な管理者がいる管理された環境では、シングルサインオンソリューションがおそらく最良です。

サードパーティのWebサイトまたはサービスの資格情報を追跡するために、ユーザーおよび特定の役割とログオン資格情報を共有できるlastpass.comのエンタープライズソリューションを確認できます。

この文脈で言及された「Clipperz」も以前に聞いたことがありますが、これについての経験はありません。

2
snth

私は本当に好きです Password Manager Pro 。 ad/ldapに関連付けられたWebサイトは、組織のパスワードを任意のグループに共有し、人々は独自のパスワードを保存することもできます。

それはいくつかの堅実な政策の仕事、歴史、監査、そして何をしないでしょう。

これには変更機能もあり、PMPからいくつかの素敵なpamスクリプトを配線して、他の方法では苦労するような変更を行いました。

ネットワークソリューションのパスワード、支援するリモートデータセンターのパスワードなどのハードパスワードの一部には、調整可能な既定のロジックがあります。すべての作業を完了して、そこにどれだけの時間を費やしているか、さらに多くの/複数のユーザーセットが必要かなどを確認すると、驚くべきことになります。

1
hpavc

それは主に会社の方針と要件に依存します。

たとえば、認証情報のほとんどが自動ツールで使用されている場合(継続的な統合の目的で)、機密データを保持できるAnsible Vault機能を使用できます暗号化されたファイルのパスワードやキーなど。これらのファイルはバージョン管理下に置くことができ、それらにアクセスするユーザーはいつでも実行できますansible-vault view some-encrypted-file

Ansibleを使用する予定がない場合は、 GPG Tools を使用してコミットするだけです暗号化されたファイルをコードリポジトリに格納します。

クラウドプラットフォームを広く使用している場合(Amazon Servicesなど)、特定のクラウド管理プラットフォーム( Scalr など)を使用すると、パスワードと秘密鍵をオンラインで整理できます。

パスワードを人が管理するだけでよい場合は、 other answer に記載されているパスワードマネージャーを使用できます( Dashlane /など)。 パスワードの同期と共有をサポートします securely 。無料のオープンソースソリューションが必要な場合は、 KeePass などのツールを使用してみてください。

0
kenorb