You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Tyler Hobbs (JIRA)" <ji...@apache.org> on 2012/10/09 23:04:03 UTC

[jira] [Created] (THRIFT-1719) SASL client support for Python

Tyler Hobbs created THRIFT-1719:
-----------------------------------

             Summary: SASL client support for Python
                 Key: THRIFT-1719
                 URL: https://issues.apache.org/jira/browse/THRIFT-1719
             Project: Thrift
          Issue Type: New Feature
            Reporter: Tyler Hobbs
            Priority: Minor




--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (THRIFT-1719) SASL client support for Python

Posted by "Todd Lipcon (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/THRIFT-1719?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13473394#comment-13473394 ] 

Todd Lipcon commented on THRIFT-1719:
-------------------------------------

Hey Tyler. Can you say a little bit about what testing you've done with this? Does DSE use this to communicate with the hive metastore or hadoop plugins for example? What SASL mechanisms have you tested?
                
> SASL client support for Python
> ------------------------------
>
>                 Key: THRIFT-1719
>                 URL: https://issues.apache.org/jira/browse/THRIFT-1719
>             Project: Thrift
>          Issue Type: New Feature
>          Components: Python - Library
>            Reporter: Tyler Hobbs
>            Assignee: Tyler Hobbs
>            Priority: Minor
>         Attachments: 1719-python-sasl.txt
>
>
> Add SASL client transports that will work with the Java lib's TSaslTransport

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (THRIFT-1719) SASL client support for Python

Posted by "Tyler Hobbs (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/THRIFT-1719?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tyler Hobbs updated THRIFT-1719:
--------------------------------

    Patch Info: Patch Available
    
> SASL client support for Python
> ------------------------------
>
>                 Key: THRIFT-1719
>                 URL: https://issues.apache.org/jira/browse/THRIFT-1719
>             Project: Thrift
>          Issue Type: New Feature
>          Components: Python - Library
>            Reporter: Tyler Hobbs
>            Assignee: Tyler Hobbs
>            Priority: Minor
>         Attachments: 1719-python-sasl.txt
>
>
> Add SASL client transports that will work with the Java lib's TSaslTransport

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (THRIFT-1719) SASL client support for Python

Posted by "Tyler Hobbs (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/THRIFT-1719?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tyler Hobbs updated THRIFT-1719:
--------------------------------

    Attachment: 1719-python-sasl-v2.txt

v2 patch has the twisted sasl protocol inherit from {{TTwisted.ThriftClientProtocol}}, which cuts down on code duplication and fixes a couple of bugs related to handling incomplete frames.
                
> SASL client support for Python
> ------------------------------
>
>                 Key: THRIFT-1719
>                 URL: https://issues.apache.org/jira/browse/THRIFT-1719
>             Project: Thrift
>          Issue Type: New Feature
>          Components: Python - Library
>            Reporter: Tyler Hobbs
>            Assignee: Tyler Hobbs
>            Priority: Minor
>         Attachments: 1719-python-sasl.txt, 1719-python-sasl-v2.txt
>
>
> Add SASL client transports that will work with the Java lib's TSaslTransport

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (THRIFT-1719) SASL client support for Python

Posted by "Tyler Hobbs (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/THRIFT-1719?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tyler Hobbs updated THRIFT-1719:
--------------------------------

    Component/s: Python - Library
    Description: Add SASL client transports that will work with the Java lib's TSaslTransport
       Assignee: Tyler Hobbs
    
> SASL client support for Python
> ------------------------------
>
>                 Key: THRIFT-1719
>                 URL: https://issues.apache.org/jira/browse/THRIFT-1719
>             Project: Thrift
>          Issue Type: New Feature
>          Components: Python - Library
>            Reporter: Tyler Hobbs
>            Assignee: Tyler Hobbs
>            Priority: Minor
>
> Add SASL client transports that will work with the Java lib's TSaslTransport

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (THRIFT-1719) SASL client support for Python

Posted by "Tyler Hobbs (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/THRIFT-1719?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13473586#comment-13473586 ] 

Tyler Hobbs commented on THRIFT-1719:
-------------------------------------

Hi Todd! I've tested it with Cassandra using the TSaslServerTransport for the normal Thrift API, but not with hive or hadoop.  I based the design somewhat on the work in Hue, but I found your SASL lib to be less than ideal where a pure-python library could easily work in its place, without any strict external dependencies.

I've primarily tested the GSSAPI mechanism, but have done some light testing of the other mechanisms.  The non-GSSAPI mechanisms were based heavily on Suelta, so there's not a ton of original code there.  I would certainly love to get some better testing of the non-GSSAPI mechanisms, but since those can be updated independently of Thrift, I wouldn't consider them deal-breakers for the purposes of this ticket.
                
> SASL client support for Python
> ------------------------------
>
>                 Key: THRIFT-1719
>                 URL: https://issues.apache.org/jira/browse/THRIFT-1719
>             Project: Thrift
>          Issue Type: New Feature
>          Components: Python - Library
>            Reporter: Tyler Hobbs
>            Assignee: Tyler Hobbs
>            Priority: Minor
>         Attachments: 1719-python-sasl.txt
>
>
> Add SASL client transports that will work with the Java lib's TSaslTransport

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (THRIFT-1719) SASL client support for Python

Posted by "Tyler Hobbs (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/THRIFT-1719?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tyler Hobbs updated THRIFT-1719:
--------------------------------

    Attachment: 1719-python-sasl.txt

Attached patch adds a client TSaslTransport for Python and Twisted Python.

These transports are based on a basic pure-Python SASL library that I created here: https://github.com/thobbs/pure-sasl. The existing SASL libraries for Python either had C extensions and strong dependencies on C libraries, or were poorly adopted and, in my opinion, lacking in quality.  Since there was not a clearly good option for a SASL library, I figured a clean start was acceptable.

I'm certainly open to any suggestions, though I know most people won't have an environment available to test this well. If it would be useful, I can have another developer from DataStax review the code here.
                
> SASL client support for Python
> ------------------------------
>
>                 Key: THRIFT-1719
>                 URL: https://issues.apache.org/jira/browse/THRIFT-1719
>             Project: Thrift
>          Issue Type: New Feature
>          Components: Python - Library
>            Reporter: Tyler Hobbs
>            Assignee: Tyler Hobbs
>            Priority: Minor
>         Attachments: 1719-python-sasl.txt
>
>
> Add SASL client transports that will work with the Java lib's TSaslTransport

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira