WisePointの設定方法

desknet's NEO

WisePointとdesknet's NEO SAML認証の利用方法についての説明です。

1. WisePoint設定ファイルを編集

インストール済のWisePointサーバーにSSHで接続します。

接続後、インストール先のIdP設定ディレクトリに移動します。

WisePointは、/opt/WisePoint、shibboleth-IdPは、/opt/shibboleth-idpにインストールされている前提で説明します。

cd /opt/shibboleth-idp

 

2. メタデータ設定ファイルを作成する

metadataディレクトリに移動し、メタデータ設定用のファイルを作成します。まずはPC用の設定ファイルを作成します。

cd /opt/shibboleth-idp/metadata

vi sp-neo-metadata.xml

ファイルの内容は以下となります。赤字の箇所をお客様の環境に合わせて修正してください。

<md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" entityID="wisepoint.entity.name">
<md:SPSSODescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol urn:oasis:names:tc:SAML:1.1:protocol">
<md:AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="
https://neo.servername.com/cgi-bin/dneo/zsaml.cgi" index="1"/>
</md:SPSSODescriptor>
</md:EntityDescriptor>

wisepoint.entity.name・・・SPのエンティティIDを指定します。任意の値で、重複のない値を指定してください。

https://neo.servername.com/cgi-bin/dneo/zsaml.cgi・・・zsaml.cgi(desknet's NEOがWindowsサーバーであればzsaml.exe)までのアクセスURLを指定します。

 

次にスマートフォン用の設定ファイルを作成します。

vi sp-neosp-metadata.xml

ファイルの内容は以下となります。赤字の箇所をお客様の環境に合わせて修正してください。

<md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" entityID="wisepoint.entity.name.sp">
<md:SPSSODescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol urn:oasis:names:tc:SAML:1.1:protocol">
<md:AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="
https://neo.servername.com/cgi-bin/dneosp/zsamlsp.cgi" index="1"/>
</md:SPSSODescriptor>
</md:EntityDescriptor>

wisepoint.entity.name.sp・・・スマートフォンからアクセスするためのSPのエンティティIDを指定します。任意の値で、重複のない値を指定してください。

https://neo.servername.com/cgi-bin/dneosp/zsamlsp.cgi・・・zsamlsp.cgi(desknet's NEOがWindowsサーバーであればzsamlsp.exe)までのアクセスURLを指定します。

3. IdP設定ファイルの編集

IdP用の設定ファイルを編集します。

 

[relying-party.xml] /opt/shibboleth-idp/conf/relying-party.xml

ファイルを開き、<util:list id="shibboleth.RelyingPartyOverrides">タグ内に以下の記述を追加し、赤字の箇所を編集してください。それぞれ、上記2で作成したファイル内で指定した、PC用、スマートフォン用のSPのエンティティIDを指定します。

<bean parent="RelyingPartyByName" c:relyingPartyIds="wisepoint.entity.name">
  <property name="profileConfigurations">
    <list>
      <bean parent="SAML2.SSO" p:signResponses="true" p:signAssertions="false" p:encryptNameIDs="false" p:encryptAssertions="false" p:includeAttributeStatement="false" p:nameIDFormatPrecedence="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified" />
    </list>
  </property>
</bean>

<bean parent="RelyingPartyByName" c:relyingPartyIds="wisepoint.entity.name.sp">
  <property name="profileConfigurations">
    <list>
      <bean parent="SAML2.SSO" p:signResponses="true" p:signAssertions="false" p:encryptNameIDs="false" p:encryptAssertions="false" p:includeAttributeStatement="false" p:nameIDFormatPrecedence="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified" />
    </list>
  </property>
</bean>

 

[metadata-providers.xml] /opt/shibboleth-idp/conf/metadata-providers.xml

ファイルを開き、<MetadataProvider id="ShibbolethMetadata"タグの最下部に以下の記述を追加し、赤字の箇所を編集してください。

<MetadataProvider id="NeoMetadataMD" xsi:type="FilesystemMetadataProvider" metadataFile="/opt/shibboleth-idp/metadata/sp-neo-metadata.xml"/>

<MetadataProvider id="NeoSpMetadataMD" xsi:type="FilesystemMetadataProvider" metadataFile="/opt/shibboleth-idp/metadata/sp-neosp-metadata.xml"/>

NeoMetadataMD・・・システムで固有のIDを指定します。任意の値で重複しないように指定してください。PC版用です。

/opt/shibboleth-idp/metadata/sp-neo-metadata.xml・・・手順1で作成した、metadataファイルのパスを指定します。

NeoSpMetadataMD・・・システムで固有のIDを指定します。任意の値で重複しないように指定してください。スマートフォン版用です。

/opt/shibboleth-idp/metadata/sp-neosp-metadata.xml・・・手順1で作成した、metadataファイルのパスを指定します。

 

[attribute-resolver.xml] /opt/shibboleth-idp/conf/attribute-resolver.xml

ファイルを開き、<AttributeResolver タグ内に以下の箇所を追加してください。

  <AttributeDefinition id="nameIdUID" xsi:type="Template">
    <Dependency ref="uid" />
      <AttributeEncoder xsi:type="SAML1String" name="urn:mace:dir:attribute-def:uid" encodeType="false" />
      <AttributeEncoder xsi:type="SAML2String" name="urn:oid:0.9.2342.19200300.100.1.1" friendlyName="uid" encodeType="false" />
    <Template>
    <![CDATA[
    ${uid}
    ]]>
    </Template>
    <SourceAttribute>uid</SourceAttribute>
  </AttributeDefinition>

 

<!-- ========================================== -->
<!-- Data Connectors -->
<!-- ========================================== -->

と書かれている箇所の上に追加していただければ結構です。

 

[attribute-filter.xml] /opt/shibboleth-idp/conf/attribute-filter.xml

ファイルを開き、<AttributeFilterPolicyGroup タグ内に以下の箇所を追加してください。

<AttributeFilterPolicy id="NeoMetadataMD">
    <PolicyRequirementRule xsi:type="Requester" value="
wisepoint.entity.name" />
      <AttributeRule attributeID="nameIdUID">
        <PermitValueRule xsi:type="ANY" />
      </AttributeRule>
</AttributeFilterPolicy>
<AttributeFilterPolicy id="
NeoSpMetadataMD">
    <PolicyRequirementRule xsi:type="Requester" value="
wisepoint.entity.name.sp" />
      <AttributeRule attributeID="nameIdUID">
        <PermitValueRule xsi:type="ANY" />
      </AttributeRule>
</AttributeFilterPolicy>

 

NeoMetadataMD・・・[metadata-providers.xml]に指定したシステムで固有のIDを指定します。任意の値で重複しないように指定してください。PC版用です。

wisepoint.entity.name・・・手順2で指定したPC版用のSPのエンティティIDを指定します。

NeoSpMetadataMD・・・[metadata-providers.xml]に指定したシステムで固有のIDを指定します。任意の値で重複しないように指定してください。スマートフォン版用です。

wisepoint.entity.name.sp・・・手順2で指定したスマートフォン版用のSPのエンティティIDを指定します。

 

[saml-nameid.xml] /opt/shibboleth-idp/conf/saml-nameid.xml

ファイルを開き、<util:list id="shibboleth.SAML2NameIDGenerators">タグ内に以下の赤字の箇所を追加してください。

  <!-- Uncommenting this bean requires configuration in saml-nameid.properties. -->
  <!--
  <ref bean="shibboleth.SAML2PersistentGenerator" />
  -->
  <!--
  <bean parent="shibboleth.SAML2AttributeSourcedGenerator" p:format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress" p:attributeSourceIds="#{ {'mail'} }" />
  -->
  
<bean parent="shibboleth.SAML2AttributeSourcedGenerator" p:format="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified" p:attributeSourceIds="#{ {'nameIdUID'} }" />
</util:list>

 

4. 設定終了

以上で設定は終了です。

設定を有効化するために、WisePointを再起動してください。

WisePointに登録されているユーザーの「ユーザーID」が、desknet's NEOのユーザー情報「ログインID」に指定されているユーザーとして認証します。

 

desknet's NEOのSAML認証連携設定状況画面に表示されている「SAML認証に使用するURL」にアクセスし、SAML製品からのログインができることをご確認ください。
「SAML認証連携設定状況画面」については、マニュアルをご参照ください。

 

尚、「SAML認証連携設定」画面の、[IdPサーバー > アクセスURL]は、

[idp-metadata.xml] /opt/shibboleth-idp/metadata/idp-metadata.xml

ファイル内にある、”SingleSignOnService”から、URL末尾が"Redirect/SSO"となっているURLをお使いください。