2

satis プライベート コンポーザー パケット マネージャーをセットアップしました。Satis は「packages.asc.company」で実行されています。サイトを apache2 http 基本認証で保護し、http 基本認証資格情報を入力してブラウザーで開くことができます。

ここで私の質問: "composer update" などを実行しているときに、satis サイトにアクセスするための資格情報を composer に渡すにはどうすればよいですか?

現在、apache .htpasswd ファイルにパスワードを持つユーザーを 1 人だけ登録しており、composer から satis に接続できるようにするには、その資格情報をどこかに渡す必要があります。

次の 2 つの場合に接続する必要があります。

1) 開発中のプロジェクトから

2) 継続的インテグレーション プロセス中のジェンキンスから。


3) 編集: SSL

ログイン時に資格情報を保護するために openssl を使用しようとしています。 https でページをパッケージ化し、http を https にリダイレクトすることさえあります。

ここで、Linux vm (ここではコーディング中) から Windows に切り替えて、composer update を実行しようとすると、次のエラー メッセージが表示されます: (hosts ファイルは正しく構成されています)

[Composer\Downloader\TransportException] " https://packages.asc.company/packages.json " ファイルをダウンロードできませんでした: SSL 操作がコード 1 で失敗しました。 OpenSSL エラー メッセージ: エラー: 14090086: SSL ルーチン: SSL3_GET_SERVER_CERTIFICATE: 証明書検証に失敗しました 暗号を有効にできませんでした ストリームを開くことができませんでした: 操作に失敗しました

私は何を取りこぼしたか?私はsslにかなり慣れていませんが、sslに関する情報を1日中読んでいて、動作させることができません。

getcomposer satis siteから、この情報を入手しましたが、使い方がわかりません。

{
 "repositories": [
    {
        "type": "composer",
        "url": "https://example.org",
        "options": {
            "ssl": {
                "local_cert": "/home/composer/.ssl/composer.pem"
            }
        }
    }
 ]
}

よろしく。

4

1 に答える 1

1

これに関するドキュメントページがあります。

Composer は、ユーザー名を Satis URL に追加して動作します。私にとってはうまくいきます。ローカルネットワーク内の役に立たないデフォルトのパスワード付きサーバーを回避したかっただけです。読み取り専用のアカウントがあり、それを使用しました。

さらに、社内のすべての開発者がリポジトリ サーバーにアカウントを持っており、ダウンロードした ZIP ファイルをさらにセキュリティで保護してもあまり役に立ちません。Composer 自体は現在、コード署名方法やハッシュ比較をサポートしていないため、パッケージが保存場所または送信中に改ざんされたかどうかを知る方法はありません。

ドキュメントによると、URL に資格情報を指定しないと、Composer がそれらを要求するか、またはそれらを に追加できますauth.json。一方で、平文のパスワードを専用ファイルに保存するのは最善のアイデアとは思えず、HTTPS を使用せずにパスワードを送信するのはさらに悪いことです。

必要なセキュリティの種類を定義する必要があります。保護したい目標または脅威のシナリオは何ですか?

于 2015-12-08T23:53:18.177 に答える