2017-06-23 9 views
3

次のようにspinnakerでジェンキンを設定し、スピネーカーのパイプラインを設定しました。Spinnaker:403要求に有効なクラムが含まれていません

jenkins: 
    # If you are integrating Jenkins, set its location here using the baseUrl 
    # field and provide the username/password credentials. 
    # You must also enable the "igor" service listed separately. 
    # 
    # If you have multiple jenkins servers, you will need to list 
    # them in an igor-local.yml. See jenkins.masters in config/igor.yml. 
    # 
    # Note that jenkins is not installed with Spinnaker so you must obtain this 
    # on your own if you are interested. 
    enabled: ${services.igor.enabled:false} 
    defaultMaster: 
     name: default 
     baseUrl: http://server:8080 
     username: spinnaker 
     password: password 

しかし、spinnakerパイプラインを実行しようとすると次のエラーが表示されます。

Exception (Start Jenkins Job) 403 No valid crumb was included in the request

答えて

7

この問題を解決するには、私はjenkins.com/configureSecurityセクションでは、「予防するクロスサイトリクエストフォージェリの悪用」をオフにし、それが仕事を始めました。

Prevent Cross Site Request Forgery exploits

+0

それは魅力のように私のために働いてくれた@Balkrishna –

3

クラムは、アクセストークンに過ぎません。以下は、クラム

https://jenkins.xxx.xxx.xxx/crumbIssuer/api/json //あなたのジェンキンスのURLに置き換えると、あなたの郵便配達や休息-APIの呼び出し側でGET呼び出しを行う取得するためのAPIです。

これは以下のように出力を生成します。

以下
{ 
    "_class": "hudson.security.csrf.DefaultCrumbIssuer", 
    "crumb": "ba4742b9d92606f4236456568a", 
    "crumbRequestField": "Jenkins-Crumb" 
} 

は同じに関連する詳細とリンクしている: How to request for Crumb issuer for jenkins ジェンキンスwikiページ: https://wiki.jenkins-ci.org/display/jenkins/remote+access+api

休息-APIを介して同じことを呼び出す場合コール、チェックアウト、ジェンキンスクラムを使用して電話をかける方法を説明しています。

https://blog.dahanne.net/2016/05/17/how-to-update-a-jenkins-job-posting-config-xml/ 

例:

curl -X POST http://anthony:[email protected]:8080/jenkins/job/pof/config.xml --data-binary "@config.xml" -data ".crumb=6bbabc426436b72ec35e5ad4a4344687" 
+0

@Balkrishna:その仕事をしたか、あなたはまだ問題に直面していますか? –

+0

私はこれをspinnakerで設定しようとしています。カール要求は機能しますが、スピネーカーの設定では機能しません。 – Balkrishna

+0

ブラウザで直接 '/ crumbIssuer/api/json'にアクセスすると、私は元気に戻ってきました。 –

関連する問題