土屋です.
鹿児島大学で uApprove.jp についてしゃべった時に,九州大学の参加者の方から
出てきたコメントについて,こちらでも動作検証してみました.結論から言え
ば,九州大学の参加者の方の意見はまことにもっともで,改修して頂けないかと
私も思います.
https://meatwiki.nii.ac.jp/ のように,SP の metadata において
requestedattribute が宣言されている場合に問題が顕在化します.
折角,SP の metadata で requestedattribute が宣言されているのですから,
IdP の管理者としては,attribute-filter.xml の設定を手抜きしたいので,
<!-- Relase attributes to uApprove supported SPs -->
<afp:AttributeFilterPolicy id="PolicyforUApproveSPs">
<afp:PolicyRequirementRule xsi:type="uajpmf:AttributeUapprove" />
<afp:AttributeRule attributeID="transientId">
<afp:PermitValueRule xsi:type="uajpmf:AttributeUapprove" />
</afp:AttributeRule>
<afp:AttributeRule attributeID="eduPersonAffiliation">
<afp:PermitValueRule xsi:type="uajpmf:AttributeUapprove" />
</afp:AttributeRule>
<afp:AttributeRule attributeID="eduPersonScopedAffiliation">
<afp:PermitValueRule xsi:type="uajpmf:AttributeUapprove" />
</afp:AttributeRule>
(中略)
<afp:AttributeRule attributeID="jaGivenName">
<afp:PermitValueRule xsi:type="uajpmf:AttributeUapprove" />
</afp:AttributeRule>
<afp:AttributeRule attributeID="mail">
<afp:PermitValueRule xsi:type="uajpmf:AttributeUapprove" />
</afp:AttributeRule>
</afp:AttributeFilterPolicy>
というように,ユーザの判断に委ねても良い属性を全て列挙することになると思
います.そうすると,末尾に添付したスクリーンショットのように,ユーザの判
断に委ねる属性がずらーっと列挙されてしまうことになります.
ここでは,SP 側の metadata で requestedattribute で宣言されている属性と
の AND をとって,この SP でオプショナルで必要としている属性のみを列挙す
るように改修して頂けないでしょうか?
CiNii のように,SP 側の metadata において requestedattribute が宣言されて
いない SP の場合は attribute-filter.xml において,
<afp:AttributeFilterPolicy id="localPolicyForCiNii">
<afp:PolicyRequirementRule xsi:type="basic:AttributeRequesterString" value="https://register-ci.nii.ac.jp/shibboleth-sp" />
<afp:AttributeRule attributeID="jaOrganizationName">
<afp:PermitValueRule xsi:type="basic:ANY" />
</afp:AttributeRule>
<afp:AttributeRule attributeID="eduPersonTargetedID">
<afp:PermitValueRule xsi:type="basic:ANY" />
</afp:AttributeRule>
<afp:AttributeRule attributeID="organizationalUnit">
<afp:PermitValueRule xsi:type="uajpmf:AttributeUapprove" />
</afp:AttributeRule>
<afp:AttributeRule attributeID="jaOrganizationalUnit">
<afp:PermitValueRule xsi:type="uajpmf:AttributeUapprove" />
</afp:AttributeRule>
<afp:AttributeRule attributeID="jaSurName">
<afp:PermitValueRule xsi:type="uajpmf:AttributeUapprove" />
</afp:AttributeRule>
<afp:AttributeRule attributeID="jaGivenName">
<afp:PermitValueRule xsi:type="uajpmf:AttributeUapprove" />
</afp:AttributeRule>
<afp:AttributeRule attributeID="mail">
<afp:PermitValueRule xsi:type="uajpmf:AttributeUapprove" />
</afp:AttributeRule>
</afp:AttributeFilterPolicy>
というように明示的に書くしかないため,オプショナルな属性が過剰に列挙され
る問題は顕在化しません.
よろしくご検討をお願いします.
--
土屋 雅稔 ( TSUCHIYA Masatoshi )Attachment:
meatwiki-uapprove.png
Description: PNG image