1

開発者は、開発用途の特定のアプリケーションに制限する必要がありますか?

ほとんどの場合、答えは、開発チームが問題にならないと同意する限りです。

セキュリティ認証の監査を受けている企業にとって、企業のリスクと開発者の柔軟性、パフォーマンスのバランスをとる方法はありますか?

範囲

  1. コーディング/開発ソフトウェア
  2. ビルド システム ソフトウェア
  3. ディストリビューションに含まれるサードパーティ ソフトウェア (ライブラリ、ユーティリティ)
  4. (追加)ワークステーション上の残りのソフトウェア

可能な解決策

  1. 承認されたソフトウェアのホワイト リストを作成します。開発者は、使用する前に目的のソフトウェアの承認を求める必要があります。承認は、ビジネス目的/セキュリティ リスクに基づいて行われます。

  2. ソフトウェアのブラックリストを作成します。開発者は、使用されているすべてのソフトウェアをリストします。審査委員会は定期的にリストを調べます。

チームの設定を超えて開発者ツールを制限する会社で働かなければならなかった人はいますか? 彼らはどのように状況を処理しましたか?

編集

質問を整理しました。議論を少なくしようとしました。

4

7 に答える 7

17

開発者が自分の作業マシンで使用できるソフトウェアを制限することは素晴らしいアイデアです。こうすれば、すべての開発者が辞めて、会社は給与や設備にそれほど多くのお金を費やす必要がなくなり、利益が高くなります。

本当の答え: いいえ!!!

于 2009-09-28T04:06:04.040 に答える
7

いいえ、開発者が使用するソフトウェアを制限するべきではありません。それによって、仕事をうまく遂行できなくなるからです。開発者チームに支払っている金額を考えてみてください。開発者が問題を解決するのを人為的に妨げたために、そのすべてのお金が無駄に流れていくのを本当に望んでいますか?

1)会社はPCをロックダウンし、開発者を有能な秘書として扱います

開発者が管理者権限で何かをする必要がある場合はどうなりますか? 例: COM オブジェクトを登録しますか、IIS を再起動しますか、それとも構築中の製品をインストールしますか? あなたはそれらをシャットダウンしました。

2) 承認されたソフトウェアのホワイトリストを作成します...

これもまた、ソフトウェアの量が膨大であるため、実用的ではありません。.NET 開発者として、私は定期的に (少なくとも 1 週間に 1 回) 50 以上の異なるアプリケーションを使用しており、これらのアプリケーションの多くについて、新しいアップグレードや代替案を常に評価しています。すべてがホワイトリストを通過する必要がある場合、「承認」スタッフは、開発者のチームはおろか、1 人か 2 人の開発者によって完全に圧倒されます。

これらのアクションのいずれかを実行すると、次のことが達成されます。

  1. 開発者があなたの承認チームを待っているか、便利なツールのインストールが許可されていないために長くて退屈な方法で物事を行っているため、時間とお金の膨大な山を燃やすことになります。

  2. 開発部門の敵になってしまいます (開発者に依頼したことを実際に実行してもらいたい場合は良くありません)。

  3. チームの士気を大幅に低下させます。檻に閉じ込められたような気分を楽しむ人はいませんし、「grep をインストールできれば 5 時間前に終わっていただろう」と考えるたびに、彼らは不幸になります。

より受け入れやすい答えは、開発者の怠慢に問題がある場合、Pidgin、MSN メッセンジャーなどの「問題のある」ソフトウェア (および Web サイト) のブラックリストを作成することです。一部の開発者もこれに反対しますが、ブラックリストに載せる内容について賢明であり、やり過ぎない限り、多くの開発者は問題ありません。

于 2009-09-28T04:12:01.500 に答える
3

開発者は、自分の仕事ができる限り、使用するアプリケーションを完全に制御する必要があると思います。開発者の生産性は作業環境に直接関係しており、制限されることを好む人はおらず、誰もが自分の好きなソフトウェアを使用することを好みます。

もちろん、バージョン管理やドキュメント形式などに関していくつかの標準が存在する必要がありますが、一般的に、開発者は必要なプログラムを使用する権利を持っている必要があります。

また、セキュリティは開発者の関心事である必要があります。企業の管理者は、あらゆる種類の攻撃から保護するために適切なファイアウォールを設定する必要があります。

于 2009-09-28T04:04:01.857 に答える
2

より良い解決策は、開発者のために安全で独立した環境を作成することです。侵害されても会社全体が危険にさらされることのない環境。

開発の本質は、狡猾で独創的で簡潔なソリューションを作成することです。これを達成するには、失敗が発生する必要があります。

于 2009-09-28T09:52:34.670 に答える
1

彼らが何をしようとも、インターネット全般を取り上げてはなりません。Google = コーディング ヘルプ 101 :)

または、www.stackoverflow.com を許可したままにしておいてください。

于 2009-09-28T03:57:47.223 に答える
1

これは、さまざまな要因に依存していると言えます。

1つはチームサイズです。半ダースの開発者のチームがある場合は、アプリケーションの必要性が発生したときにいつでも交渉できます。100 人の開発者のチームがある場合、おそらく何らかのポリシーが適切です。

もう 1 つの要因は、それらの開発者が何をするかです。組み込みプラットフォーム用の専用コンパイラを使用して C コードをコンパイルする場合、状況は、絶えず変化する環境で配布された Web または PC ソフトウェアを作成するチームとは大きく異なります。

制作するソフトウェアと対象顧客も重要です。Linux カーネルを新しいプラットフォームに移植する場合、コードがリークするかどうかはおそらくそれほど重要ではありません。OTOH、これはかなり違う場合が多いです。

他にも要因はありますが、最終的には、相反する 2 つの目標に要約されます。

  • 開発者の創造性を刺激するため、開発者にできるだけ多くの自由を与えたいと考えています。
  • リスクを軽減するため、可能な限り制限する必要があります。(私は、セキュリティ上のリスクと、機能しないソフトウェアを出荷するリスクなどについて話している.)

創造性を損なわず、会社に損害を与えないように十分な保証を与える妥協点を見つける必要があります。

于 2009-09-28T07:11:20.610 に答える
-1

もちろん!反復可能なビルド プロセスが必要な場合は、プログラマーがコードの一部を生成するツールとしてたまたま使用するジャンクのランダムなビットによって汚染されたくありません。構築しているアプリケーションが何であれ、誰もが予想するよりもはるかに長く続くため、構築に使用するツールがほぼ同じ期間利用可能であることも確認する必要があります。インターネットからのランダムなツールは、そのような保証を提供しません.

あなたのチームは、「次のツールはビルド ステップ以外には許可されていません」と言い、そのリストを短くするように努める必要があります。

明らかに、プログラマーが何をすべきかを決定するために何を見るかは重要ではありません。チームがそのツールの出力だけを手で書かれたものとして受け入れることを気にしない限り、彼が魔法 (または任意のツール) によってコードを生成するかどうかも問題ではありません。

于 2009-09-28T04:05:41.653 に答える