• SAML 2.0 实例分析 sp向idp发送请求(3)


    user没有登陆过sp,此时sp向idp发送请求,下文是请求的xml形式

    <samlp:AuthnRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
                        AssertionConsumerServiceURL="http://localhost:8080/sp/consumer"
                        Destination="http://localhost:8080/idp/sso"
                        ID="fd57f81a-d58f-433e-8f6f-0874fc0f939e"
                        IssueInstant="2020-04-18T03:19:42.430Z"
                        ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
                        Version="2.0">
        <saml:Issuer xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion">http://localhost:8080/sp</saml:Issuer>
        <samlp:NameIDPolicy AllowCreate="true"
                          Format="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified"/>
    </samlp:AuthnRequest>
    

      

    该请求根节点是 <samlp:AuthnRequest> 来表明是一个认证请求,有如下几个参数:

    1、 AssertionConsumerServiceURL 断言sp地址,即当 IDP 认证成功后响应返回的地址
    2、 Destination 目标地址,即 IDP 接收请求的地址
    3、 ID 该请求的唯一标识
    4、 IssueInstant 请求的时间
    5、 ProtocolBinding SP 声明此次通信的绑定方式,不同的绑定方式意味着不同的通信流程,SAML2.0 主要包括:HTTP-Artifact,HTTP-POST,HTTP-Redirect,SOAP 等几种绑定方式。
    6、 Version 版本号
    7、 saml:Issuer SP 的 Id 标识
    8、 samlp:NameIDPolicy IDP 对于用户身份的标识;NameID policy 是 SP 关于 NameID 是如何被创建的说明;Format 指明 SP 需要返回什么类型的标识(SAML Artifact);属性AllowCreate指明 IDP 是否被允许当发现用户不存在时创建用户账号。

  • 相关阅读:
    使用CAShapeLayer做出圆形的进度条 —— #DF!
    NSDate分类,把系统返回的时间与现在进行比较---秀清
    NSPredicate类,指定过滤器的条件---董鑫
    UITextFIeld的输入格式问题 ----W.P
    AttributeText创建多彩文字Label --- hl
    自定义简单动画
    Swift 学习网址精选 By HL
    【C++服务端技术】移动广播
    【C++服务端技术】定时器
    【面试攻略】C++面试-4399
  • 原文地址:https://www.cnblogs.com/wangxue1314/p/12731121.html
Copyright © 2020-2023  润新知