(window.webpackJsonp=window.webpackJsonp||[]).push([[651],{1082:function(t,e,a){"use strict";a.r(e);var s=a(56),r=Object(s.a)({},(function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"生成-saml2-spssodescriptor-元数据"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#生成-saml2-spssodescriptor-元数据"}},[t._v("#")]),t._v(" 生成"),a("code",[t._v("")]),t._v("元数据")]),t._v(" "),a("p",[t._v("你可以通过将"),a("code",[t._v("Saml2MetadataFilter")]),t._v("添加到筛选链来发布元数据端点,如下所示:")]),t._v(" "),a("p",[t._v("Java")]),t._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v("DefaultRelyingPartyRegistrationResolver relyingPartyRegistrationResolver =\n new DefaultRelyingPartyRegistrationResolver(this.relyingPartyRegistrationRepository);\nSaml2MetadataFilter filter = new Saml2MetadataFilter(\n relyingPartyRegistrationResolver,\n new OpenSamlMetadataResolver());\n\nhttp\n // ...\n .saml2Login(withDefaults())\n .addFilterBefore(filter, Saml2WebSsoAuthenticationFilter.class);\n")])])]),a("p",[t._v("Kotlin")]),t._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v("val relyingPartyRegistrationResolver: Converter =\n DefaultRelyingPartyRegistrationResolver(this.relyingPartyRegistrationRepository)\nval filter = Saml2MetadataFilter(\n relyingPartyRegistrationResolver,\n OpenSamlMetadataResolver()\n)\n\nhttp {\n //...\n saml2Login { }\n addFilterBefore(filter)\n}\n")])])]),a("p",[t._v("你可以使用此元数据端点将你的依赖方注册为你的断言方.这通常很简单,只需找到正确的表单字段来提供元数据端点即可。")]),t._v(" "),a("p",[t._v("默认情况下,元数据端点是"),a("code",[t._v("/saml2/service-provider-metadata/{registrationId}")]),t._v("。你可以通过调用过滤器上的"),a("code",[t._v("setRequestMatcher")]),t._v("方法来更改这一点:")]),t._v(" "),a("p",[t._v("Java")]),t._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v('filter.setRequestMatcher(new AntPathRequestMatcher("/saml2/metadata/{registrationId}", "GET"));\n')])])]),a("p",[t._v("Kotlin")]),t._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v('filter.setRequestMatcher(AntPathRequestMatcher("/saml2/metadata/{registrationId}", "GET"))\n')])])]),a("p",[t._v("或者,如果你在构造函数中注册了一个自定义依赖方注册解析器,那么你可以在没有"),a("code",[t._v("registrationId")]),t._v("提示的情况下指定一个路径,就像这样:")]),t._v(" "),a("p",[t._v("Java")]),t._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v('filter.setRequestMatcher(new AntPathRequestMatcher("/saml2/metadata", "GET"));\n')])])]),a("p",[t._v("Kotlin")]),t._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v('filter.setRequestMatcher(AntPathRequestMatcher("/saml2/metadata", "GET"))\n')])])]),a("p",[a("RouterLink",{attrs:{to:"/spring-security/logout.html"}},[t._v("SAML2注销")]),a("RouterLink",{attrs:{to:"/exploits/index.html"}},[t._v("保护免受剥削")])],1)])}),[],!1,null,null,null);e.default=r.exports}}]);