電子署名の再認証の設定
電子署名の再認証機能の目的は、Windchill の外部から電子署名の承認を実行するメカニズムを提供することです。電子署名アクティビティを承認する前に、Windchill 側で自分自身を再認証する必要があります。
認証に必要なコンフィギュレーションを設定するには、以下の手順に従います。
1. 以下を実行して SSO を設定します。
* 
Windchill で SSO を有効にするためのコンフィギュレーションに加えてこれらのコンフィギュレーションが必要です。このコンフィギュレーションで修正した各ファイルのバックアップを作成することをお勧めします。
SSO を有効にするために適用されるコンフィギュレーションについては、ヘルプセンターのシングルサインオン認証のセクションを参照してください。
SSO を有効にするために適用されるコンフィギュレーションについては、Windchill Installation and Configuration Guide - Update Existing Installation の「シングルサインオン認証」のセクションを参照してください。
a. 指定された *.conf ファイルに以下のエントリを追加することで Apache を設定します。
i. {WT_HOME}/HTTPServer/conf/conf.d/00-1mod_shib.conf<Location/reauthsecure> section: の後ろ
Alias /Windchill/TokenGenerator/ "/TokenGenerator/Shibboleth.sso/Login"
<Location /TokenGenerator>
AuthType shibboleth
ShibRequestSetting applicationId jwt
require shib-session
</Location>
ii. {WT_HOME}/HTTPServer/conf/conf.d/30-app-Windchill-1Auth.conf<LocationMatch ^/+Windchill/reauthsecure?> セクションの後ろ:
<LocationMatch ^/+Windchill/TokenGenerator?>
AuthType shibboleth
ShibRequestSetting applicationId jwt
ShibUseHeaders on # mod_jk doesn't pass environment, so useHeaders is required
require shib-session
</LocationMatch>
b. 以下の説明に従って Shibboleth SP を設定します。
i. <SHIBBOLETH_INSTALL_DIRECTORY>/etc/shibboleth/shibboleth2.xml に移動します。PingFederate サイトで作成された SP 接続名を以下のコンフィギュレーションで entityID として指定します。以下のセクションを <ApplicationDefaults> セクション内に追加します。
<ApplicationOverride id="jwt" entityID="SP CONNECTION NAME"
REMOTE_USER="uid eppn persistent-id targeted-id"
cipherSuites="ECDHE+AESGCM:ECDHE:!aNULL:!eNULL:!LOW:!EXPORT:!RC4:!SHA:!SSLv2">
<Sessions lifetime="5" timeout="5" checkAddress="false"
relayState="ss:mem" handlerURL="/TokenGenerator/Shibboleth.sso"
maxTimeSinceAuthn="2" handlerSSL="false" cookieProps="https"
redirectLimit="exact" postData="ss:mem"
postExpire="true" postLimit="512000" postTemplate="postTemplate.html">
<SSO entityID="IDP CONNECTION NAME" discoveryProtocol="SAMLDS"
discoveryURL="https://ds.example.org/DS/WAYF" forceAuthn="true"
postArtifact="true" template="bindingTemplate.html"
outgoingBindings="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST">
SAML2 SAML1
</SSO>
<!-- SAML and local-only logout. -->
<Logout>SAML2 Local</Logout>
<!-- Extension service that generates "approximate" metadata
based on SP configuration. -->
<Handler type="MetadataGenerator" Location="/Metadata"
signing="false"/>
<!-- Status reporting service. -->
<Handler type="Status" Location="/Status" acl="127.0.0.1 ::1"/>
<!-- Session diagnostic service. -->
<Handler type="Session" Location="/Session"
showAttributeValues="true"/>
<!-- JSON feed of discovery information. -->
<Handler type="DiscoveryFeed" Location="/DiscoFeed"/>
</Sessions>
</ApplicationOverride>
ii. 以下の属性を <Sessions> セクションに追加します。
postData="ss:mem" postExpire="true" postLimit="512000" postTemplate="postTemplate.html"
次に例を示します。
<Sessions lifetime="28800" timeout="3600" relayState="ss:mem"
checkAddress="false" handlerSSL="false"
cookieProps="https" redirectLimit="exact" postData="ss:mem"
postExpire="true" postLimit="512000"
postTemplate="postTemplate.html">
iii. 以下のエントリを <HOST> セクションに追加します。
<Path name="TokenGenerator" authType="Shibboleth" requireSession="true" forceAuthn="true" applicationId="jwt" />
次に例を示します。
<Host name="sp.example.org">
<Path name="secure" authType="shibboleth"
requireSession="true"/>
<Path name="reauthsecure" authType="shibboleth"
requireSession="true" forceAuthn="true"
applicationId="reauthsecure" />
<Path name="TokenGenerator" authType="Shibboleth"
requireSession="true" forceAuthn="true" applicationId="jwt" />
</Host>
iv. 既存の postTemplate.html を、<SHIBBOLETH_INSTALL_DIRECTORY>/shibboleth-sp/etc/shibboleth/postTemplate.html にある以下のコードによって更新します。
<html>
<head>
</head>
<body onload="submit();">
<script language="Javascript">
function submit() {
document.forms[0].submit();
}
</script>
<noscript>
<p>A form submission to this site was interrupted by the login
process.
If you would like to complete it now, submit this form.</p>
</noscript>
<form method="POST" action="<shibmlp action/>">
<shibmlpfor PostedData>
<input type="hidden" name="<shibmlp $name/>" value="<shibmlp
$value/>"/>
</shibmlpfor>
</form>
</body>
</html>
c. JWT トークン生成用に PingFederate を設定します。
a. PingFederate にログインします。
b. 「SP Connection」 > 「Browser SSO」 > 「Configure Browser SSO」 > 「Protocol Settings」 > 「Configure Protocol Settings」の順にクリックします。
c. 「Assertion consumer Service URL」をクリックします。
d. 「Binding」として POST を選択し、「EndPoint URL」として "/TokenGenerator/Shibboleth.sso/SAML2/POST を選択します。
e. 「Add」「Save」「Done」の順にクリックします。
d. JWT トークン生成用に Azure Active Directory を設定します。
a. Microsoft Azure ポータルで新規エンタープライズアプリケーションを作成します。
b. 「Single sign-on」 > 「Set up single sign on」 > 「SAML」にブラウズします。
c. 「Basic SAML Configuration」セクションの下の「Edit」をクリックします。
d. 「Reply URL」に以下のリンクを追加します。
https://<hostname:port>/TokenGenerator/Shibboleth.sso/SAML2/POST
e. 「OK」をクリックします。
2. site.xconf ファイルの wt.idp.allowlisturls property で、ThingWorx または ThingWorx Navigate などの外部アプリケーションの URL を指定します。
3. このコンフィギュレーションを有効にするため、Shibboleth デーモン、Apache、および Windchill サーバーを再起動します。
これは役に立ちましたか?