Hi!

The 
string 
e6c12bace0608a422bf03954086e4d0a2ec64e7396a95871af55d986d3c7517968aadfc203975fdc8433e824533229dd
 
is what you want to decrypt.
Use the first 16 characters from the application.secret (play uses only 16 
char keys for AES private key input) and use AES/ECB/PKCS5Padding.
The content of cleartext will be username<tab>session-id. The session id 
can then be used for REST calls against the servers (as long as that 
session did not expire, of course).
The code for decrypting 
is 
https://github.com/Graylog2/graylog2-web-interface/blob/0.20/app/models/UserService.java#L129-129

The session-id value in the cookie should not change, but other fields 
might, of course.

Best,
Kay

On Friday, February 21, 2014 11:30:43 AM UTC+1, Егор Морозов wrote:
>
> Hi!
>
> I've tried doing this, but still have no success :)
> That's what I have in cookie:
>
> "bbf13a266d32aef6f89fb35f250db77d15f04516-sessionid=e6c12bace0608a422bf03954086e4d0a2ec64e7396a95871af55d986d3c7517968aadfc203975fdc8433e824533229dd"
> If I correctly understood the code, first part is username<tab>password, 
> second is username<tab>session-id, but both parts are different all the 
> times (that shouldn't happen because login/password are static).
> I've tried to decode one of these strings using AES/ECB/PKCS5Padding, but 
> wasn't able to get anything useful. So I wonder if there's any other random 
> symbols are included in the cookie and what should be the AES method 
> exactly?
>
> Thanks!
>
> On Friday, January 24, 2014 1:02:55 PM UTC+2, Kay Röpke wrote:
>>
>> Hi! Sorry for the delay.
>>
>> You could do the same as the web interface does when logging a user in, 
>> which is a POST to the /system/sessions resource in the graylog2 server.
>> That will return a session id and a validity timestamp (this is currently 
>> fixed to 8 hours).
>>
>> The web interface will then take the username and session-id, catenate 
>> them with a tab character and AES encrypt them to yield the final cookie 
>> field called sessionid.
>> Which means that in order to write the cookie you need to have the 
>> application.secret of the web interface as well as the user credentials.
>>
>> The server also supports generating access tokens, even though it's not 
>> document anywhere yet, but the web interface only relies on the cookie 
>> method described above.
>> The underlying problem is that you need to set up authentication state in 
>> two separate applications, so I think this would get tricky and can break 
>> easily whenever our code changes.
>>
>> Best,
>> Kay
>>
>>
>> On Wednesday, January 22, 2014 2:09:31 PM UTC+1, Егор Морозов wrote:
>>>
>>> Thanks for the information.
>>>
>>> So what about the cookie generation? We have one page that authenticates 
>>> the users in Atlassian products by generating a cookie, I think that it 
>>> should be possible to do the same with Graylog2.
>>>
>>> On Wednesday, January 22, 2014 12:44:15 PM UTC+2, Kay Röpke wrote:
>>>>
>>>> Hi!
>>>>
>>>> Graylog2 0.20 web interface currently only supports authenticating via 
>>>> username/password and after that relies on its own session cookie to 
>>>> authenticate against the graylog2 servers.
>>>> To support client certificates we would need add that as an 
>>>> authentication mechanism. In fact we have received one or two questions 
>>>> about allowing certificates to be used for authentication, but so far this 
>>>> has been low priority, to be honest.
>>>>
>>>> For this to work sensibly and securely, we would need to support some 
>>>> kind of certificate management for all the connections between the user, 
>>>> web interface process and graylog2 server (as well as mongodb which stores 
>>>> the user's data and session information). That was well beyond the scope 
>>>> of 
>>>> this release, so we decided to not support it for now.
>>>>
>>>> If you need this feature, could you please file an issue over at 
>>>> github: 
>>>> https://github.com/Graylog2/graylog2-web-interface/issues?milestone=&state=open?
>>>>
>>>> BTW, it wouldn't be as easy as in the 0.1x versions, because starting 
>>>> in 0.20 the server authenticates all requests, too, and it has no 
>>>> knowledge 
>>>> about the first proxy server.
>>>>
>>>> Thanks,
>>>> Kay
>>>>
>>>>
>>>> On Wednesday, January 22, 2014 10:47:33 AM UTC+1, Егор Морозов wrote:
>>>>>
>>>>> Hello everyone!
>>>>>
>>>>> We've been using Graylog2 0.1x for a long time, it was simple enough 
>>>>> to patch it and make using SSL_CLIENT_S_DN_CN Apache env variable. As now 
>>>>> it's powered using a binary, this is much more painful to do the same so 
>>>>> I 
>>>>> wonder if it's somehow possible to make it use any of the variables 
>>>>> passed 
>>>>> by a proxy (nginx/Apache) to authenticate the user.
>>>>>
>>>>> Alternative approach that I can see is to generate the cookie using 
>>>>> perl or php script, but as I have no experience with Java, I can't really 
>>>>> understand how to generate the same cookie (like graylog2-web does). 
>>>>> Could 
>>>>> someone describe this?
>>>>>
>>>>> Thanks!
>>>>>
>>>>

-- 
You received this message because you are subscribed to the Google Groups 
"graylog2" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to graylog2+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to