比較バージョン

キー

  • この行は追加されました。
  • この行は削除されました。
  • 書式設定が変更されました。

...

情報

ダウンロードされるJARファイルのSHA-256ハッシュ値は以下の通りです。さらに真正性を確認したい場合はPGP署名をご利用ください。
# sha256sum jetty94-dta-ssl-1.0.0.jar
5e5de66e3517d30ff19ef66cf7a4aa5443b861d83e36a75e85845b007a03afbf  jetty94-dta-ssl-1.0.0.jar

情報

なお、配置したファイルはデフォルトでは使用されません。すでに /opt/jetty-base/lib/ext 配下に存在する jetty9-dta-ssl-1.0.0.jar が使用されます。併存していても問題ありません。もしデフォルトの設定で問題がある場合は(一部の証明書で問題になるという情報があります)、etc/idp-backchannel.xml の以下の部分を修正し新しいライブラリを使用するようにしてください。

コード ブロック
languagediff
@@ -6,7 +6,7 @@
   <!-- and no container trust (delegate to application)              -->
   <!-- for backchannel (SOAP) communication to IdP                   -->
   <!-- ============================================================= -->
-  <New id="shibContextFactory" class="net.shibboleth.utilities.jetty9.DelegateToApplicationSslContextFactory">
+  <New id="shibContextFactory" class="net.shibboleth.utilities.jetty94.DelegateToApplicationSslContextFactory">
     <Set name="KeyStorePath"><Property name="idp.backchannel.keyStorePath" default="../credentials/idp-backchannel.p12" /></Set>
     <Set name="KeyStoreType"><Property name="idp.backchannel.keyStoreType" default="PKCS12" /></Set>
     <Set name="KeyStorePassword"><Property name="idp.backchannel.keyStorePassword" default="changeit" /></Set>


3.SOAP設定

/opt/jetty-base/start.d/idp-backchannel.ini ファイルを以下のように作成します。

...

パネル
bgColor#eeeeee

# ---------------------------------------
# Module: idp-backchannel
# Shibboleth IdP Dedicated SOAP Connector
# ---------------------------------------
--module=idp-backchannel

## Backchannel connector port to listen on
# idp.backchannel.port=8443
↑コメントアウト(#)を削除。以下同様
## Backchannel keystore file path (relative to $jetty.base)

# idp.backchannel.keyStorePath=../shibboleth-idp/credentials/server.p12

## Backchannel keystore password
# idp.backchannel.keyStorePassword=P12パスワード

## Backchannel keystore type
# idp.backchannel.keyStoreType=PKCS12


/opt/jetty-base/etc/idp-backchannel.xml ファイルを以下のように修正します。

パネル

(省略)

  <New id="shibHttpConfig" class="org.eclipse.jetty.server.HttpConfiguration">
    <Arg><Ref refid="httpConfig"/></Arg>
↑上の行を削除し↓で置き換え
    <Set name="secureScheme"><Property name="jetty.httpConfig.secureScheme" default="https" /></Set>
    <Set name="securePort"><Property name="jetty.httpConfig.securePort" deprecated="jetty.secure.port" default="8443" /></Set>
    <Set name="outputBufferSize"><Property name="jetty.httpConfig.outputBufferSize" deprecated="jetty.output.buffer.size" default="32768" /></Set>
    <Set name="outputAggregationSize"><Property name="jetty.httpConfig.outputAggregationSize" deprecated="jetty.output.aggregation.size" default="8192" /></Set>
    <Set name="requestHeaderSize"><Property name="jetty.httpConfig.requestHeaderSize" deprecated="jetty.request.header.size" default="8192" /></Set>
    <Set name="responseHeaderSize"><Property name="jetty.httpConfig.responseHeaderSize" deprecated="jetty.response.header.size" default="8192" /></Set>
    <Set name="sendServerVersion"><Property name="jetty.httpConfig.sendServerVersion" deprecated="jetty.send.server.version" default="true" /></Set>
    <Set name="sendDateHeader"><Property name="jetty.httpConfig.sendDateHeader" deprecated="jetty.send.date.header" default="false" /></Set>
    <Set name="headerCacheSize"><Property name="jetty.httpConfig.headerCacheSize" default="1024" /></Set>
    <Set name="delayDispatchUntilContent"><Property name="jetty.httpConfig.delayDispatchUntilContent" deprecated="jetty.delayDispatchUntilContent" default="true"/></Set>
    <Set name="maxErrorDispatches"><Property name="jetty.httpConfig.maxErrorDispatches" default="10"/></Set>
    <Set name="blockingTimeout"><Property deprecated="jetty.httpConfig.blockingTimeout" name="jetty.httpConfig.blockingTimeout.DEPRECATED" default="-1"/></Set>
    <Set name="persistentConnectionsEnabled"><Property name="jetty.httpConfig.persistentConnectionsEnabled" default="true"/></Set>
    <Set name="requestCookieCompliance"><Call class="org.eclipse.jetty.http.CookieCompliance" name="valueOf"><Arg><Property name="jetty.httpConfig.requestCookieCompliance" deprecated="jetty.httpConfig.cookieCompliance" default="RFC6265"/></Arg></Call></Set>
    <Set name="responseCookieCompliance"><Call class="org.eclipse.jetty.http.CookieCompliance" name="valueOf"><Arg><Property name="jetty.httpConfig.responseCookieCompliance" default="RFC6265"/></Arg></Call></Set>
    <Set name="multiPartFormDataCompliance"><Call class="org.eclipse.jetty.server.MultiPartFormDataCompliance" name="valueOf"><Arg><Property name="jetty.httpConfig.multiPartFormDataCompliance" default="RFC7578"/></Arg></Call></Set>
    <Set name="relativeRedirectAllowed"><Property name="jetty.httpConfig.relativeRedirectAllowed" default="false"/></Set>
    <Call name="addCustomizer">
      <Arg>
(省略)

ヒント

<Arg><Ref refid="httpConfig"/></Arg> の部分を削除していることによりhttp-forwardedモジュールの他rewriteモジュールの設定がBack-Channelに反映されない可能性がありますのでご注意ください。Back-Channelに対するこれらのモジュールの使用は避けてください。


4.有効化

/opt/shibboleth-idp/conf/relying-party.xml ファイルを以下のように修正します。

情報

以下ではSAML 1.x自体の有効化(デフォルトでは無効)も行っておりますが、SAML 2.0 Attribute Queryのみ必要な場合は前半のコメント解除は不要です。

パネル
bgColor#eeeeee

<bean id="shibboleth.DefaultRelyingParty" parent="RelyingParty">
<property name="profileConfigurations">
<list>
<!-- SAML 1.1 and SAML 2.0 AttributeQuery are disabled by default. -->
<!-- -->  ← コメントを解除
<bean parent="Shibboleth.SSO" p:postAuthenticationFlows="attribute-release" />
<ref bean="SAML1.AttributeQuery" />
<ref bean="SAML1.ArtifactResolution" />
<!-- -->  ← コメントを解除
<bean parent="SAML2.SSO" p:postAuthenticationFlows="attribute-release" />
<ref bean="SAML2.ECP" />
<ref bean="SAML2.Logout" />
<!-- -->  ← コメントを解除
<ref bean="SAML2.AttributeQuery" />
<!-- -->  ← コメントを解除
<ref bean="SAML2.ArtifactResolution" />
<ref bean="Liberty.SSOS" />
</list>
</property>
</bean>

...