2011-09-20 8 views
7

Webダッシュボードにセキュリティを追加する際に非常に問題があります。私はたくさんのWebアプリケーションプロジェクトのセキュリティを設定しようとしています。すべてのセキュリティは有効にされません。CruiseControl.net Webダッシュボードセキュリティ

私が望むセキュリティはかなり簡単です。 2つのロール "Releasers"と "Testers"、リリース担当者は何でもできます。テスト担当者はテスト展開プロジェクトを強制的に実行して、残りのプロジェクトをすべて表示します。しかし、私はそれを働かせることはできません。私は皆のためにすべてを許してしまったと思いますが、私は様々なものをどのように設定するかによっていくつかの問題があります。どの場合も、configファイルはバリデーターユーティリティーで検証されます。

Serverのコンフィグ

<internalSecurity>  
    <users> 
     <ldapUser name="ccnet" domain="localhost" /> 
     <passwordUser name="ccnetadmin" password="NotTheRealPW" />  
    </users> 
    <permissions> 
     <rolePermission name="Releasers" defaultRight="Allow"> 
     <users> 
      <userName name="ccnetadmin"/> 
     </users> 
     </rolePermission> 
     <rolePermission name="Testers" defaultRight="Allow"> 
     <users> 
      <userName name="ccnet"/> 
     </users> 
     </rolePermission> 
    </permissions> 
    </internalSecurity> 

プロジェクトセキュリティ

<security type="defaultProjectSecurity" defaultRight="Inherit"> 
     <permissions> 
     <rolePermission name="Testers" ref="Testers"/> 
     <rolePermission name="Releasers" ref="Releasers"/>   
     </permissions> 
    </security> 

Dashboard.config

文書から明らかにされていない3つの事があります。

  • IISでどのような認証を設定する必要がありますか。
  • ccnet.configサーバー セキュリティセクションにどのような種類のユーザーを設定する必要がありますか。
  • ダッシュボードの設定では、<securityPlugins>セクションに何が必要ですか。

フォームとウィンドウをweb.configとiisに統合しようとしました。フォームでは本質的にlogin.aspxが存在しないと不平を言いますが、これは正しくないと思われます。統合されたウィンドウで私はダッシュボードにアクセスできます。セキュリティ要素がないプロジェクトはリストに表示されますが、ViewProject権限を持っていないというセキュリティ例外が発生します。セキュリティ要素を持つプロジェクトはリストに表示されません。私はsimpleUser、passwordUserまたはldapUserを使用しているユーザータイプと同じ動作をします。私はsecurityPluginsセクションにsimpleSecurity以外の値を置くことができる他の値はどこにあるのかわかりません。

thisの資料を検索したところ、これらの質問に対する回答は見つかりませんでした。私は以下の目標を達成することができるものを提案することができます誰でも

EDIT

はそれが私が上記しているとは全く異なった方法であったとしても、報奨金を取得します。

すべてのCC.netプロジェクトを表示し、ビルド1の特定のプロジェクトを強制できるユーザーが必要です。すべてのプロジェクトを表示して強制的にビルドすることができる別のユーザーが必要です。私はそれが1つのcc.netダッシュボード、1つの設定ファイルであるが、異なるユーザーアカウントを持つことを望む。懸賞金が不足していたよう2

EDITはすぐに私もそれをCCでのセキュリティという説得力のある証拠のいくつかの種類を提供することができますので、誰が得られます。ネットは機能しないので、少なくとも私はそれ以上時間を無駄にしないことを知っています。また、これについてのcc.netフォーラムに問題やログを記録しようとしましたが、新しいシステムに移行したようで、動作しないようです。ユーザーアカウントでは、電子メールの検証が必要ですが、電子メールは決して送信されません。

答えて

10

OK。すべてが完全にうまくセットアップされました。しかし、ドキュメンテーションがまったく触れていないのは、ログインする方法です。どのような種類のセキュリティをiis/web.configで設定しますか?これに対する答えは、cc.netがこれらの種類のセキュリティを使用しないので無関係です。ドキュメンテーションでは、ログインを有効にするために、<securityPlugins>セクションをダッシュ​​ボード設定に追加して、「ログインを有効にする」という要素を挙げました。しかし、ログイン方法は言及されていませんでした。ただ気がついたことは、Webダッシュボードでリストからサーバーを選択すると、ログインボタンが表示されることです。私はめったにサーバーのレポートを見ていません、私は1つのサーバーしか持っていないので、 "ファームレポート"は "サーバーレポート"と同じプロジェクトリストです。ただし、ログインボタンは、サーバーレポートを表示している場合にのみ表示されます。私は少し愚かな感じはなく、単純な - 「あなたはファームレポートからログインすることはできません。あなたは、ログインするサーバーのレポートを選択する必要があり - ドキュメントには、私に不満の文字通りの日を保存しているだろう。 I.血まみれのログインボタンを見つけるのに数日かかった。

+0

詳細を指定できますか? に何を入れるべきかわかりません。 http://cruisecontrolnet.org/projects/ccnet/wiki/Security_pluginsのセキュリティプラグインのドキュメントは、404 – erict

+0

を返します。詳細は、ログインボタンが見つかったということです –

0

私も好奇心が強いと思いますが、これをもう一度理解しようとしますが、最後に試してみましたが、私も困惑しました。

一時的な回避策は、GET要求のためだけにCC.NETへのアクセス権を持つユーザーと、すべてのアクセス権を持つユーザー(開始要求に必要なPOST要求を含む)を定義するようにweb.configを構成することでした。

<configuration> 
    <system.web> 
     <authorization> 
      <allow verbs="GET" roles="DOMAIN\ccnetreadonly" /> 
      <allow roles="DOMAIN\ccnetcanperformactions" /> 
      <deny users="*" /> 
     </authorization> 
    </system.web> 
</configuration> 

ない私は最終的にそれを働いた...最高の、それは仕事をした

+0

残念ながら、それは私のためにはうまくいかないでしょう。ライブWebアプリケーションを構築してデプロイする「ライブ」プロジェクトと、ステージング/テストWebアプリケーションを構築してデプロイするステージングプロジェクトがあります。限られた数のユーザーがライブプロジェクトを強制的にビルドできるようにしたいが、他のすべてのユーザーはライブを表示できますが、ステージング/テストプロジェクトを作成することもできます。このように、すべてのユーザーが投稿できる必要があります。 –

関連する問題