Re: [openstack-dev] [keytone] Pike PTL

2016-11-25 Thread Marek Denis
Steve,

You've done amazing job. Thanks for that and making keystone even better!
Marek Denis
​
__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


[openstack-dev] [keystone] Stepping down from keystone core

2016-11-22 Thread Marek Denis
Hi,

Due to my current responsibilities I cannot serve as keystone core anymore.
I also feel I should make some space for others who will surely bring new
quality to the OpenStack Identity Program.

It's been a great journey, I surely learned a lot and improved both my
technical and soft skills. I can only hope my contributions and reviews
have been useful and made OpenStack a little bit better.

I wish you all the best in the future.

With kind regards,
Marek Denis
__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [keystone] changes to keystone-core!

2016-02-03 Thread Marek Denis

++!

On 01.02.2016 01:26, Lance Bragstad wrote:

++

I'm happy to see this go through! Samuel and Dave have been helping me 
out a lot lately. Both make great additions to the team!


On Thu, Jan 28, 2016 at 9:12 AM, Brad Topol <bto...@us.ibm.com 
<mailto:bto...@us.ibm.com>> wrote:


CONGRATULATIONS Dave and Samuel. Very well deserved!!!

--Brad


Brad Topol, Ph.D.
IBM Distinguished Engineer
OpenStack
(919) 543-0646 <tel:%28919%29%20543-0646>
Internet: bto...@us.ibm.com <mailto:bto...@us.ibm.com>
Assistant: Kendra Witherspoon (919) 254-0680
<tel:%28919%29%20254-0680>

Inactive hide details for "Steve Martinelli" ---01/27/2016
05:17:12 PM---Hello everyone! We've been talking about this for a
lo"Steve Martinelli" ---01/27/2016 05:17:12 PM---Hello everyone!
We've been talking about this for a long while, and I am very
pleased to

From: "Steve Martinelli" <steve...@ca.ibm.com
<mailto:steve...@ca.ibm.com>>
To: openstack-dev <openstack-dev@lists.openstack.org
<mailto:openstack-dev@lists.openstack.org>>
Date: 01/27/2016 05:17 PM
Subject: [openstack-dev] [keystone] changes to keystone-core!





Hello everyone!

We've been talking about this for a long while, and I am very
pleased to announce that at the midcycle we have made changes to
keystone-core. The project has grown and our review queue grows
ever longer. Effective immediately, we'd like to welcome the
following new Guardians of the Gate to keystone-core:

+ Dave Chen (davechen)
+ Samuel de Medeiros Queiroz (samueldmq)

Happy code reviewing!

Steve Martinelli
OpenStack Keystone Project Team

Lead__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe:
openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
<http://openstack-dev-requ...@lists.openstack.org?subject:unsubscribe>
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev




__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe:
openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
<http://openstack-dev-requ...@lists.openstack.org?subject:unsubscribe>
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev




__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


--
Marek Denis
[marek.de...@cern.ch]

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [keystone federation] some questions about keystone IDP with SAML supported

2015-10-14 Thread Marek Denis

Hello,

On 14.10.2015 13:10, wyw wrote:

hello, keystoners.  please help me

Here is my use case:
1. use keystone as IDP , supported with SAML


Remember that Keystone is not a fully fledged Identity Provider. For 
instance it cannot handle WebSSO. To be even more specific it will only 
handle "IdP Initiated authentication workflow" and it's one of the 
variant SAML2 authentication work.



2. keystone integrates with LDAP
3. we use a java application as Service Provider, and to integrate it 
with keystone IDP.
4. we use a keystone as Service Provider, and to integrate it withe 
keystone IDP.


Did you try that already? Did it work?



The problems:
in the k2k federation case, keystone service provider requests 
authentication info with IDP via Shibboleth ECP.


Yes. Why is that a problem? K2K architecture assumes two Keystones - 
Keystone-IdP and Keystone-SP . Communication between them leverages on 
SAML2 and ECP.



in the java application, we use websso to request IDP, for example:


as mentioned earlier - no websso in keystone-idp.


idp_sso_endpoint = http://10.111.131.83:5000/v3/OS-FEDERATION/saml2/sso
but, the java redirect the sso url , it will return 404 error.
so, if we want to integrate a java application with keystone IDP, 
 should we need to support ECP in the java application?


pretty much - yes! Luckily for you the reference libraries (shibboleth) 
are written in Java so it should be easier to integrate with your 
application.




here is my some references:
1. http://docs.openstack.org/developer/keystone/configure_federation.html
2. 
http://blog.rodrigods.com/it-is-time-to-play-with-keystone-to-keystone-federation-in-kilo

3. http://docs.openstack.org/developer/keystone/extensions/federation.html
https://gist.githubusercontent.com/zaccone/3c3d4c8f39a19709bcd7/raw/d938f2f9d1cf06d29a81d57c8069c291fed66cab/k2k-env.sh
https://gist.githubusercontent.com/zaccone/4bbc07d215c0047738b4/raw/75295fe32df88b24576ece69994270dc4eb19a6e/k2k-ecp-client.py
my keystone version is kilo

help me, thanks


I hope I did! :-)

--
Marek Denis

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [Keystone] [Horizon] Federated Login

2015-08-11 Thread Marek Denis

Hi

On 05.08.2015 19:36, Dolph Mathews wrote:



yes this was my understanding of the discussion that took place many
months ago. I had assumed (wrongly) that something had been done about
it, but I guess from your message that we are no further forward on this
Actually 2) above might be better reworded as - a new policy/engine that
allows public access to be a bona fide policy rule


The existing policy simply seems wrong. Why protect the list of IdPs?


Would Rackspace be happy to expose list of their customers to everybody?

--
cheers
Marek

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [keystone] Liberty SFE Request - Dynamic Policies

2015-07-14 Thread Marek Denis

I am +1 on this SFE.
Dynamic Policy team has been working hard on this and they will for sure 
deliver nice features for Liberty.



-- Marek Denis [marek.de...@cern.ch]
__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [Keystone][FFE] ECP wrapped assertions

2015-03-24 Thread Marek Denis

Hi,

I strongly support this request.

On 23.03.2015 22:42, Steve Martinelli wrote:
I'd like to request an exemption for the following to go into the Kilo 
release.


This work is crucial for:
-  Keystone to Keystone communication. An ECP wrapped SAML assertion 
will make it much easier for consumers and clients to use the K2K 
feature in Keystone. Currently, a client must take the generated SAML 
response and must prepare the ECP envelope themselves. This should be 
handled by Keystone, and not the clients. The client should be able to 
ask for the ECP wrapped assertion and hand it off to another Keystone.


Why this needs an FFE?
- To properly created an ECP wrapped a SAML assertion, a relay state 
property must be known, (as it's used to compute a value in an ECP 
specific field). This depends on how the service provider has their 
mod_shib configured. We will need to add a new property to the 
keystone resource 'service provider' - the spec change is here: 
https://review.openstack.org/#/c/166086/


Status of the work:
- The patches necessary for this feature already and split into two 
patches. 1) To add a new relay_state_prefix property to the service 
provider resource: https://review.openstack.org/#/c/166078/and 2) to 
actually use this new property in order to generate the ECP assertion: 
https://review.openstack.org/#/c/162866/


Thanks,

Steve Martinelli
OpenStack Keystone Core



Marek Denis
OpenStack Keystone Core
__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


[openstack-dev] [Keystone][FFE] - IdP ID (remote_id) registration and validation

2015-03-17 Thread Marek Denis

Hello,

One very important feature that we have been working on in the Kilo 
development cycle is management of remote_id attributes tied to Identity 
Providers in keystone.


This work is crucial for:

-  Secure OpenStack identity federation configuration. User is required 
to specify what Identity Provider (IdP) issues an assertion as well as 
what protocol (s)he wishes to use (typically it would be SAML2 or OpenId 
Connect). Based on that knowledge (arbitrarily specified by a user), 
keystone fetches mapping rules configured for {IdP, protocol} pair and 
applies it on the assertion. As an effect a set of groups is returned, 
and by membership of those dynamically assigned groups (and later 
roles), an ephemeral user is being granted access to certain OpenStack 
resources. Without remote_id attributes, a user, can arbitrarily choose 
pair {Identity Provider, protocol} without respect of issuing Identity 
Provider. This may lead to a situation where Identity Provider X issues 
an assertion, but user chooses mapping ruleset dedicated for Identity 
Provider Y, effectively being granted improper groups (roles). As part 
of various federation protocols, every Identity Provider issues an 
identifier allowing trusting peers (Keystone  servers in this case) to 
reliably identify issuer of the assertion. That said, remote_id 
attributes allow cloud administrators to match assertions with Identity 
Providers objects configured in keystone (i.e. situation depicted above 
would not happen, as keystone object Identity Provider Y would accept 
assertions issued by Identity Provider Y only).


- WebSSO implementation - a highly requested feature that allows to use 
federation in OpenStack via web browsers, especially Horizon. Without 
remote_ids server (keystone) is not able to distinguish what maping rule 
set should be used for transforming assertion into set of local 
attributes (groups, users etc).



Status of the work:

So far we have implemented and merged feature where each Identity 
Provider object can have one remote_id specified. However, there have 
been few request for stakeholders for ability to configure multiple 
remote_id attributes per Identity Provider objects. This is extremely 
useful in configuring federations where 10s or 100s of Identity Provider 
work within one federation and where one mapping ruleset is used among 
them.
This has been discussed and widely accepted during Keystone mid cycle 
meetup in January 2015. The first version of the implementation was 
proposed on Febrary 2nd. During the implementation process we discovered 
the bug (https://bugs.launchpad.net/keystone/+bug/1426334) that was 
blocking further work. Fixing it took reasonably big manpower and 
significantly delayed delivery process of the main feature. Eventually, 
the bug was fixed and now we are ready to get final reviews (mind, the 
patch was already reviewed and all the comments and issues were 
constantly being addressed) and hopefully get landed in the Kilo release.


Specification link: 
https://github.com/openstack/keystone-specs/blob/master/specs/kilo/idp-id-registration.rst

Implementation link: https://review.openstack.org/#/c/152156/

I hereby ask for exceptional accepting the provided work in the Kilo 
release cycle.


With kind regards,

--
Marek Denis
Keystone Core member

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] Need help in configuring keystone

2015-03-02 Thread Marek Denis

Akshik,

When you are beginning an adventure with saml, shibboleth and so on, 
it's helpful to start with fetching auto-generated shibboleth2.xml file 
from testshib.org . This should cover most of your use-cases, at least 
in the testing environment.


Marek



__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] Need help in configuring keystone

2015-02-27 Thread Marek Denis

Hi Akshik,

Did you upload your Metadata file to the testshib server?
You are advised to follow steps starting from here: 
http://testshib.org/register.html


For the record, Keystone will act here as a Service Provider,  so you 
need to follow testhib docs/tutorials for setting your SP (Service Provider)


Let me know if that was your issue.
If not, a more detailed steps of how your configured your Keystone 
acting as a Service Provider would be more helpful.


Marek Denis

On 27.02.2015 11:26, Akshik DBK wrote:


Hi I'm new to SAML, trying to integrate keystone with SAML, Im using 
Ubuntu 12.04 with Icehouse,


im following http://docs.openstack.org/developer/k... 
http://docs.openstack.org/developer/keystone/extensions/shibboleth.html


when im trying to configure keystone with two idp,

when i access https://MYSERVER:5000/v3/OS-FEDERATIO... 
https://myserver:5000/v3/OS-FEDERATION/identity_providers/idp_2/protocols/saml2/auth


it gets redirected to testshib.org http://testshib.org/ , it prompts 
for username and password when the same is given im getting


*shibsp::ConfigurationException at ( 
https://MYSERVER:5000/Shibboleth.sso/... 
https://myserver:5000/Shibboleth.sso/SAML2/POST ) No 
MetadataProvider available.*


here is my shibboleth2.xml content

|SPConfig  xmlns=urn:mace:shibboleth:2.0:native:sp:config
 xmlns:conf=urn:mace:shibboleth:2.0:native:sp:config
 xmlns:saml=urn:oasis:names:tc:SAML:2.0:assertion
 xmlns:samlp=urn:oasis:names:tc:SAML:2.0:protocol 
 xmlns:md=urn:oasis:names:tc:SAML:2.0:metadata

 clockSkew=180

 ApplicationDefaults  entityID=https://MYSERVER:5000/Shibboleth;
 Sessions  lifetime=28800  timeout=3600  checkAddress=false  
relayState=ss:mem  handlerSSL=false
 SSO  entityID=https://idp.testshib.org/idp/shibboleth;  
ECP=true
 SAML2 SAML1
 /SSO

 LogoutSAML2 Local/Logout

 Handler  type=MetadataGenerator  Location=/Metadata  
signing=false/
 Handler  type=Status  Location=/Status  /
 Handler  type=Session  Location=/Session  
showAttributeValues=false/
 Handler  type=DiscoveryFeed  Location=/DiscoFeed/
 /Sessions

 Errors  supportContact=root@localhost
 logoLocation=/shibboleth-sp/logo.jpg
 styleSheet=/shibboleth-sp/main.css/

 AttributeExtractor  type=XML  validate=true  
path=attribute-map.xml/
 AttributeResolver  type=Query  subjectMatch=true/
 AttributeFilter  type=XML  validate=true  
path=attribute-policy.xml/
 CredentialResolver  type=File  key=sp-key.pem  
certificate=sp-cert.pem/

 ApplicationOverride  id=idp_1  
entityID=https://MYSERVER:5000/Shibboleth;

 Sessions  lifetime=28800  timeout=3600  checkAddress=false
 relayState=ss:mem  handlerSSL=false
 SSO  entityID=https://portal4.mss.internalidp.com/idp/shibboleth;  
ECP=true
 SAML2 SAML1
 /SSO
 LogoutSAML2 Local/Logout
 /Sessions

 MetadataProvider  type=XML  
uri=https://portal4.mss.internalidp.com/idp/shibboleth;
  backingFilePath=/tmp/tata.xml  reloadInterval=18  /
 /ApplicationOverride

 ApplicationOverride  id=idp_2  
entityID=https://MYSERVER:5000/Shibboleth;
 Sessions  lifetime=28800  timeout=3600  checkAddress=false
 relayState=ss:mem  handlerSSL=false
 SSO  entityID=https://idp.testshib.org/idp/shibboleth;  
ECP=true
 SAML2 SAML1
 /SSO

 LogoutSAML2 Local/Logout
 /Sessions

 MetadataProvider  type=XML  uri=https://idp.testshib.org/idp/shibboleth;   
 backingFilePath=/tmp/testshib.xml  reloadInterval=18/

 /ApplicationOverride
 /ApplicationDefaults

 SecurityPolicyProvider  type=XML  validate=true  
path=security-policy.xml/
 ProtocolProvider  type=XML  validate=true  reloadChanges=false  
path=protocols.xml/
/SPConfig|

here is my wsgi-keystone

|WSGIScriptAlias  /keystone/main/var/www/cgi-bin/keystone/main
WSGIScriptAlias  /keystone/admin/var/www/cgi-bin/keystone/admin

Location  /keystone
# NSSRequireSSL
SSLRequireSSL
Authtype  none
/Location

Location /Shibboleth.sso
 SetHandler  shib
/Location

Location /v3/OS-FEDERATION/identity_providers/idp_1/protocols/saml2/auth
 ShibRequestSetting  requireSession1
 ShibRequestSetting  applicationId idp_1
 AuthType  shibboleth
 ShibRequireAll  On
 ShibRequireSession  On
 ShibExportAssertion  Off
 Require  valid-user
/Location

Location /v3/OS-FEDERATION/identity_providers/idp_2/protocols/saml2/auth
 ShibRequestSetting  requireSession1
 ShibRequestSetting  applicationId idp_2
 AuthType  shibboleth
 ShibRequireAll  On
 ShibRequireSession  On
 ShibExportAssertion  Off
 Require  valid-user
/Location

Re: [openstack-dev] Error Enabling Federation Extension

2015-02-19 Thread Marek Denis

Hi Akshik,

Could you give some more details about the steps you did for configuring 
federation as well as the environment you are using?


Is it devstack? What version of Keystone do you use?

Thanks,
Marek


On 19.02.2015 12:52, Akshik DBK wrote:
im getting “Target WSGI script ‘/var/www/cgi-bin/keystone/main’ cannot 
be loaded as Python module”

while configuring federation for keystone any help

[info] [client 10.10.10.12] mod_wsgi (pid=25248, process=’keystone’, 
application=’10.1.193.250:5000|’): Loading WSGI script 
‘/var/www/cgi-bin/keystone/main’.
[error] [client 10.10.10.12] mod_wsgi (pid=25248): Target WSGI script 
‘/var/www/cgi-bin/keystone/main’ cannot be loaded as Python module.
[error] [client 10.10.10.12] mod_wsgi (pid=25248): Exception occurred 
processing WSGI script ‘/var/www/cgi-bin/keystone/main’.

[error] [client 10.10.10.12] Traceback (most recent call last):
[error] [client 10.10.10.12] File “/var/www/cgi-bin/keystone/main”, 
line 21, in

[error] [client 10.10.10.12] config.configure()
[error] [client 10.10.10.12] File 
“/usr/lib/python2.7/dist-packages/keystone/common/config.py”, line 
694, in configure
[error] [client 10.10.10.12] help=’Do not monkey-patch threading 
system modules.’))
[error] [client 10.10.10.12] File 
“/usr/lib/python2.7/dist-packages/oslo/config/cfg.py”, line 1579, in 
__inner

[error] [client 10.10.10.12] result = f(self, *args, **kwargs)
[error] [client 10.10.10.12] File 
“/usr/lib/python2.7/dist-packages/oslo/config/cfg.py”, line 1731, in 
register_cli_opt
[error] [client 10.10.10.12] raise ArgsAlreadyParsedError(“cannot 
register CLI option”)
[error] [client 10.10.10.12] ArgsAlreadyParsedError: arguments already 
parsed: cannot register CLI option



__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [keystone] SPFE: Authenticated Encryption (AE) Tokens

2015-02-16 Thread Marek Denis

+1 from me.

On 13.02.2015 22:19, Morgan Fainberg wrote:
On February 13, 2015 at 11:51:10 AM, Lance Bragstad 
(lbrags...@gmail.com mailto:lbrags...@gmail.com) wrote:

Hello all,


I'm proposing the Authenticated Encryption (AE) Token specification 
[1] as an SPFE. AE tokens increases scalability of Keystone by 
removing token persistence. This provider has been discussed prior 
to, and at the Paris summit [2]. There is an implementation that is 
currently up for review [3], that was built off a POC. Based on the 
POC, there has been some performance analysis done with respect to 
the token formats available in Keystone (UUID, PKI, PKIZ, AE) [4].


The Keystone team spent some time discussing limitations of the 
current POC implementation at the mid-cycle. One case that still 
needs to be addressed (and is currently being worked), is federated 
tokens. When requesting unscoped federated tokens, the token contains 
unbound groups which would need to be carried in the token. This case 
can be handled by AE tokens but it would be possible for an unscoped 
federated AE token to exceed an acceptable AE token length (i.e.  
255 characters). Long story short, a federation migration could be 
used to ensure federated AE tokens never exceed a certain length.


Feel free to leave your comments on the AE Token spec.

Thanks!

Lance

[1] https://review.openstack.org/#/c/130050/
[2] https://etherpad.openstack.org/p/kilo-keystone-authorization
[3] https://review.openstack.org/#/c/145317/
[4] http://dolphm.com/benchmarking-openstack-keystone-token-formats/
__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: 
openstack-dev-requ...@lists.openstack.org?subject:unsubscribe

http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev



I am for granting this exception as long as it’s clear that the 
following is clear/true:


* All current use-cases for tokens (including federation) will be 
supported by the new token provider.


* The federation tokens being possibly over 255 characters can be 
addressed in the future if they are not addressed here (a “federation 
migration” does not clearly state what is meant.


I am also ok with the AE token work being re-ordered ahead of the 
provider cleanup to ensure it lands. Fixing the AE Token provider 
along with PKI and UUID providers should be minimal extra work in the 
cleanup.


This addresses a very, very big issue within Keystone as scaling 
scaling up happens. There has been demand for solving token 
persistence for ~3 cycles. The POC code makes this exception possible 
to land within Kilo, whereas without the POC this would almost 
assuredly need to be held until the L-Cycle.



TL;DR, I am for the exception if the AE Tokens support 100% of the 
current use-cases of tokens (UUID or PKI) today.



—Morgan



__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [Keystone] Proposing Marek Denis for the Keystone Core Team

2015-02-13 Thread Marek Denis
Thank you, everyone! :)

Dnia 13 lutego 2015 18:35:09 CET, Morgan Fainberg morgan.fainb...@gmail.com 
napisał(a):
Based upon the feedback from this thread, I want to welcome Marek as
the newest member of keystone core.

Cheers,
Morgan
-- 
Morgan Fainberg

On February 10, 2015 at 9:51:16 AM, Morgan Fainberg
(morgan.fainb...@gmail.com) wrote:

Hi everyone!

I wanted to propose Marek Denis (marekd on IRC) as a new member of the
Keystone Core team. Marek has been instrumental in the implementation
of Federated Identity. His work on Keystone and first hand knowledge of
the issues with extremely large OpenStack deployments has been a
significant asset to the development team. Not only is Marek a strong
developer working on key features being introduced to Keystone but has
continued to set a high bar for any code being introduced / proposed
against Keystone. I know that the entire team really values Marek’s
opinion on what is going in to Keystone.

Please respond with a +1 or -1 for adding Marek to the Keystone core
team. This poll will remain open until Feb 13.

-- 
Morgan Fainberg




__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe:
openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

-- 
Marek Denis
[marek.de...@cern.ch]

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [horizon][keystone]

2015-02-05 Thread Marek Denis

Thai,

We could also add an option in the Horizon's settings that automatically 
chooses one authentication workflow. At CERN we are trying to use websso 
with use of the SAML2 protocols as much as we can. That's said we 
automatically make users to use websso when they want to access their 
accounts via the dashboard.


Hint: This is being done by automatic redirect to predefined Keystone 
endpoint once user hits our dashboard's URL).


Marek


On 05.02.2015 20:15, Thai Q Tran wrote:

Hi Ioram,
Thanks for the feedback. I agree that the names are hard to follow, 
they can change to something more intuitive. Or we can even provide a 
tooltip for more information.
As for the look and feel, I don't agree that its easier if all the 
options are listed. Image if you had 5 different ways for users to log 
in and they are all shown at once. That's a lot to take in.
This approach keep things simply, it's really not that hard to pick 
from a list.


Hi Anton,
I'm just building on top of the visuals we already have without 
changing things too drastically. If you have a better idea, I would 
love to see it.


-Ioram Schechtman Sette i...@cin.ufpe.br wrote: -
To: OpenStack Development Mailing List (not for usage questions) 
openstack-dev@lists.openstack.org

From: Ioram Schechtman Sette i...@cin.ufpe.br
Date: 02/05/2015 03:15AM
Subject: Re: [openstack-dev] [horizon][keystone]

Hi Thai,

I agree with Anton that the names are not intuitive for users.

I would use something like:
- Local authentication (for local credentials)
- ?? (I also have no idea of what is a Default protocol)
- Authenticate using name of IdPs or federation (something which is 
easy to the user understand that he could use or not - this is for the 
discovery service or remote IdP)


Here in the University of Kent we used another approach.
Instead of selecting the method using a list/combo box, we present 
all the options in a single screen.

I think it's not beautiful, but functional.
I think it would be easier to the user if they could have all the 
options in a single interface, since it doesn't become too much loaded 
(visually polluted).


Imagem inline 1
Regards,
Ioram


2015-02-05 9:20 GMT+00:00 Anton Zemlyanov azemlya...@mirantis.com 
mailto:azemlya...@mirantis.com:


Hi,

I guess Credentials is login and password. I have no idea what
is Default Protocol or Discovery Service.
The proposed UI is rather embarrassing.

Anton

On Thu, Feb 5, 2015 at 12:54 AM, Thai Q Tran tqt...@us.ibm.com
mailto:tqt...@us.ibm.com wrote:

Hi all,

I have been helping with the websso effort and wanted to get
some feedback.
Basically, users are presented with a login screen where they
can select: credentials, default protocol, or discovery service.
If user selects credentials, it works exactly the same way it
works today.
If user selects default protocol or discovery service, they
can choose to be redirected to those pages.

Keep in mind that this is a prototype, early feedback will be
good.
Here are the relevant patches:
https://review.openstack.org/#/c/136177/
https://review.openstack.org/#/c/136178/
https://review.openstack.org/#/c/151842/

I have attached the files and present them below:






__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe:
openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev



__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe:
openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev



--
Marek Denis
[marek.de...@cern.ch]

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo

Re: [openstack-dev] [horizon][keystone]

2015-02-05 Thread Marek Denis

Hi,

I am more leaning towards layout Ioram suggested, but with 
protocols/other metods (Kerberos for instance) in the dropdown box.



On 05.02.2015 17:16, Steve Martinelli wrote:

Thanks Ioram,

From the keystone side: the one issue with listing IdPs is that some may
be private, so we're now looking to exploit the apache plugin data in the
environment (https://review.openstack.org/#/c/142743/), thus from the
horizon side the only data they need to send over would be the protocol
that the IdP uses.

What i'm taking away from some of the comments is to preserve the usual
(username and password) flow, and maybe it'll be easier to just list off
the protocols in a separate drop down (SAML and OpenID Connect).

Steve

Ioram Schechtman Sette i...@cin.ufpe.br wrote on 02/05/2015 06:04:36 AM:

 From: Ioram Schechtman Sette i...@cin.ufpe.br
 To: OpenStack Development Mailing List (not for usage questions)
 openstack-dev@lists.openstack.org
 Date: 02/05/2015 06:14 AM
 Subject: Re: [openstack-dev] [horizon][keystone]

 Hi Thai,

 I agree with Anton that the names are not intuitive for users.

 I would use something like:
 - Local authentication (for local credentials)
 - ?? (I also have no idea of what is a Default protocol)
 - Authenticate using name of IdPs or federation (something which
 is easy to the user understand that he could use or not - this is
 for the discovery service or remote IdP)

 Here in the University of Kent we used another approach.
 Instead of selecting the method using a list/combo box, we present
 all the options in a single screen.
 I think it's not beautiful, but functional.
 I think it would be easier to the user if they could have all the
 options in a single interface, since it doesn't become too much
 loaded (visually polluted).

 [image removed]
 Regards,
 Ioram

 2015-02-05 9:20 GMT+00:00 Anton Zemlyanov azemlya...@mirantis.com:
 Hi,

 I guess Credentials is login and password. I have no idea what is
 Default Protocol or Discovery Service.
 The proposed UI is rather embarrassing.

 Anton

 On Thu, Feb 5, 2015 at 12:54 AM, Thai Q Tran tqt...@us.ibm.com wrote:
 Hi all,

 I have been helping with the websso effort and wanted to get some 
feedback.

 Basically, users are presented with a login screen where they can
 select: credentials, default protocol, or discovery service.
 If user selects credentials, it works exactly the same way it works 
today.

 If user selects default protocol or discovery service, they can
 choose to be redirected to those pages.

 Keep in mind that this is a prototype, early feedback will be good.
 Here are the relevant patches:
 https://review.openstack.org/#/c/136177/
 https://review.openstack.org/#/c/136178/
 https://review.openstack.org/#/c/151842/

 I have attached the files and present them below:

 [image removed] [image removed] [image removed] [image removed]



 
__

 OpenStack Development Mailing List (not for usage questions)
 Unsubscribe: 
openstack-dev-requ...@lists.openstack.org?subject:unsubscribe

 http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev



 
__

 OpenStack Development Mailing List (not for usage questions)
 Unsubscribe: 
openstack-dev-requ...@lists.openstack.org?subject:unsubscribe

 http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

 
__

 OpenStack Development Mailing List (not for usage questions)
 Unsubscribe: 
openstack-dev-requ...@lists.openstack.org?subject:unsubscribe

 http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev



--
Marek Denis
[marek.de...@cern.ch]

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [Keystone] Nominating Brad Topol for Keystone-Spec core

2015-01-18 Thread Marek Denis

+1

On 18.01.2015 20:11, Morgan Fainberg wrote:

Hello all,

I would like to nominate Brad Topol for Keystone Spec core (core 
reviewer for Keystone specifications and API-Specification only: 
https://git.openstack.org/cgit/openstack/keystone-specs ). Brad has 
been a consistent voice advocating for well defined specifications, 
use of existing standards/technology, and ensuring the UX of all 
projects under the Keystone umbrella continue to improve. Brad brings 
to the table a significant amount of insight to the needs of the many 
types and sizes of OpenStack deployments, especially what real-world 
customers are demanding when integrating with the services. Brad is a 
core contributor on pycadf (also under the Keystone umbrella) and has 
consistently contributed code and reviews to the Keystone projects 
since the Grizzly release.


Please vote with +1/-1 on adding Brad to as core to the Keystone Spec 
repo. Voting will remain open until Friday Jan 23.


Cheers,
Morgan Fainberg




--
Marek Denis
[marek.de...@cern.ch]

__
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [Keystone] Alternative federation mapping

2014-11-02 Thread Marek Denis

Hi John,

It indeed looks interesting and  enhancing the mapping engine is on ours 
to-do list for a long time. I'd be happy to talk this through during the 
summit. Do you think you will be able to come for a Keystone 
websso/federation Design Session on Wednesday at 16.30?


Thanks,

Marek


On 02.11.2014 18:29, John Dennis wrote:

While working on federated authentication for a different project
(OpenDaylight) we discovered we needed to map from the assertion
provided by an external federated IdP to local values. This is
essentially the same requirement which exists in Keystone's federated
support. It was hoped we could simply borrow the Keystone mapping
implementation but it was found to be too limiting and not sufficiently
expressive. We could not find another alternative so we designed a new
mapper which is described in this PDF.

https://jdennis.fedorapeople.org/doc/mapping.pdf

The mapper as described in the document has implementations in both Java
and Python. The Java implementation is currently in use in OpenDaylight
(a Java based project). For those interested I can provide a pointer to
OpenDaylight specific documentation on how this mapper is used in
conjunction with the Apache web server providing authentication and SSSD
providing identity attributes to a Java servlet container.

My goal here is to make Keystone developers aware of an alternative
mapper which may provide needed mapping features not currently available
and for which different language implementations already exist. Note,
the mapper is easily extended should a need arise.

Source code and documentation can be found here by cloning this git repo:

git clone git://fedorapeople.org/~jdennis/federated-mapping.git

Note, I put this git repo together quickly by pulling together things
from a variety of sources, as such there may be things needing to be
cleaned up in the repo, at the moment it's really just meant to browse.
Over the next few days I'll make sure everything builds and executes
cleanly. Posting this now in case folks want to have conversations at
the Paris Summit.




___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [Keystone][Horizon] CORS and Federation

2014-09-17 Thread Marek Denis



On 17.09.2014 15:45, Steve Martinelli wrote:

++ to your suggestion David, I think making the list of trusted IdPs
publicly available makes sense.


I think this might be useful in an academic/science world but on the 
other hand most cloud providers from the 'business' world might be very 
reluctant to expose list of their clients for free.



cheers,

Marek.

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [Keystone][Horizon] CORS and Federation

2014-09-17 Thread Marek Denis

Hi,

First of all, we should clarify whether your JS client wants to 
implement ECP or WebSSO workflow. They are slightly different.


I feel JS is smart enough to implement the ECP flow and then and it 
could simply implement what we already have in the keystoneclient [0]. 
This + some discovery service described by Adam would be required. 
However, some problems may arise when it comes to ADFS  support (we 
needed separate plugin in keystoneclient) and other protocols which 
should work by default from browsers.


[0] 
https://github.com/openstack/python-keystoneclient/blob/master/keystoneclient/contrib/auth/v3/saml2.py#L29


Rest of the comments inlined.

On 17.09.2014 17:00, Adam Young wrote:

On 09/17/2014 10:35 AM, David Chadwick wrote:

this would work as well, but wouldn't it require two different API calls?


I think it would be 2 calls no matter what.

OK,  lets talk this through:

1. Configure Horizon to return a generic login page, with a button that
says Or do Federated
2.  Use clicks that button and gets the Federated UI.  No new HTTP
request needed for this, still just static Javascript.  Form has an edit
field for the user to enter the SAML IdP, anda button to fetch the list
of the public IdPs from Keystone.
3.  Assume user clicks the list of public IdPs, those fill out a
drop-down box.  If the user clicks on one, it populates the textbox with
the URL for the IdP.
3a.  However, if the users IdP is not in the list, they go back to the
email they got from their IT guy that has Paste this URL into the IdP
edit box


Well, we don't keep any IdPs' URL in Keystone backend at the moment.
However, this can be easily fixed.


4. User clicks OK.


OK


Window pops up with the WebUI for the user to visit the SAML IdP URL.
This will be of the form
|
GET
htps://keystone/main/OS-FEDERATION/identity_providers/{identity_provider}/protocols/{protocol}/auth|

Which will perform the necessary redirects to get the user the SAML
assertion, and return it to Keystone.


Let's assume this step would work for now. I am interested how would the 
SP-IDP-SP workflow look like from the JS perspective. In classic WebSSO, 
where user uses only his browser:


1) Go to the protected resource 
(/v3/OS-FEDERATION/identity_providers/{identity_provider}/protocols/{protocol}/auth 
in our case)


2) (skipping the DS step for now) get redirected to the IdP
3) Authenticate with the IdP
4) Get redirected to the SP
5) Read your protected content, because you have been authenticated and 
authorized to do so (get an unscoped, federated token issued by Keystone 
in our case)


Now, I can imagine, if that's the websso approach can we somehow make JS 
mimic the browser with all its blessing? So the user would actualy see 
the real HTML website? If so, that would be enough to make it work.



5.  Javascript picks up the Federated unscoped token from the response
at the end of step 4 and use that to get a scoped token.


___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [Keystone] - Cloud federation on top of the Apache

2014-01-30 Thread Marek Denis

On 29.01.2014 17:06, Adam Young wrote:


We had a team member looking into SAML, but I don't don't know if he
made that distinction.


Do you think he would be willing to give a helping hand and share his 
expertise? Any possibility to contact your colleague? Without ECP/http 
clients extensions i think the federation is only 50% useful (because 
eventually somehow you need to login and obtain the saml assertion 
manually, with your browser).



Is there anything that would prevent us from having a solution that
supported both, based on the requirements of the implementer?



mod_shib passes saml assertion parameters into discrete environment 
variables. I am now looking at the mod_mellon README file and it looks 
like mellon's behaviour is pretty much the same. So, if there any 
implementation details, they are minor ones and we basically start at 
the same page.



From https://modmellon.googlecode.com/svn/trunk/mod_mellon2/README :

===
 Using mod_auth_mellon
===

After you have set up mod_auth_mellon, you should be able to visit (in our
example) https://example.com/secret/, and be redirected to the IdP's login
page. After logging in you should be returned to
https://example.com/secret/, and get the contents of that page.

When authenticating a user, mod_auth_mellon will set some environment
variables to the attributes it received from the IdP. The name of the
variables will be MELLON_attribute name. If you have specified a
different name with the MellonSetEnv or MellonSetEnvNoPrefix configuration
directive, then that name will be used instead. In the case of MellonSetEnv,
the name will still be prefixed by 'MELLON_'.

The value of the attribute will be base64 decoded.

mod_auth_mellon supports multivalued attributes with the following format:
base64 encoded value_base64 encoded value_base 64 encoded value...

If an attribute has multiple values, then they will be stored as
MELLON_name_0, MELLON_name_1, MELLON_name_2, ...

Since mod_auth_mellon doesn't know which attributes may have multiple
values, it will store every attribute at least twice. Once named
MELLON_name, and once named MELLON_name_0.

In the case of multivalued attributes MELLON_name will contain the first
value.


The following code is a simple php-script which prints out all the
variables:

?php
header('Content-Type: text/plain');

foreach($_SERVER as $key=$value) {
  if(substr($key, 0, 7) == 'MELLON_') {
echo($key . '=' . $value . \r\n);
  }
}
?

--
Marek Denis
[marek.de...@cern.ch]

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [Keystone] - Cloud federation on top of the Apache

2014-01-29 Thread Marek Denis

On 28.01.2014 21:44, Adam Young wrote:


To be clear, are you going to use mod_mellon as the Apache Auth module?


I am leaning towards mod_shib, as at least in theory it handles ECP 
extension. And I am not so sure mod_mellon does.


Adam, do you have at RedHat any experience with ECP SAML extensions or 
you used only webSSO?


--
Marek Denis
[marek.de...@cern.ch]

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


[openstack-dev] [Keystone] - Cloud federation on top of the Apache

2014-01-27 Thread Marek Denis

Dear all,

We have Identity Provider and mapping CRUD operations already merged, so 
it's a good point to prepare Keystone and Apache to handle SAML (as a 
starter) requests/responses.
For the next OpenStack release it'd be the Apache that handles SAML 
communication. In order to force SAML authentication, an admin defines 
so called 'protected resources', hidden behind certain URLs. In order to 
get access to aforementioned resources a SAML authenticated session is 
required. In terms of Keystone and federation this 'resource' would be 
just a token, ready to be later used against other OpenStack services. 
For obvious reasons we cannot make mod_shib watch all the Keystone URLs 
clients can access, so I think a dedicated URL should be used. That's 
right, a client who'd want to grab a token upon SAML authn would need to 
hit 
https://keystone:5000/v3/OS-FEDERATION/tokens/identity_provider/idp/protocol/protocol 
.Such a URL would albo be kind of dynamic, because this would later let 
Keystone distinguish* what (already registered) IdP and federation 
protocol (SAML, OpenID, etc) is going to be used .


A simplified workflow could look like this:


Pre-req: Apache frontend is  configured to protect URLs matching regex 
/OS-FEDERATION/tokens/identity_provider/(.*?)/protocol/(.*?)


1) In order to get a valid token upon federated authentication a client 
enters protected resource, for instance 
https://keystone:5000/v3/OS-FEDERATION/tokens/identity_provider/{idp}/protocol/{protocol}
2) After the client is authenticated (with ECP/similar extension) the 
request enters Keystone public pipeline.
3) Apache modules  store parsed parameters from a SAML assertion in a 
wsgi environment,
4) A class inheriting from wsgi.Middleware checks whether the 
REQUEST_URL (or similar) environment variable matches aforementioned 
regexp (e.g. /OS-FEDERATION/tokens/identity_provider/.*?/protocol/.*?) 
and if the match is positive, fetches env parameters starting with 
certain value (a prefix configurable in the keystone.conf, say 'ADFS_' 
). The parameters are stored as a dictionary and passed in a structure, 
later available to other filters/middleware objects in the pipeline (TO 
BE CONFIRMED, MAYBE REWRITING PARAMS IS NOT REQUIRED).
5) keystone/contrib/federation/routers.py has defined URL routes and 
fires keystone/contrib/federation/controllers.py methods that fetch IdP, 
protocol entities as well as the corresponding mapping entity with the 
mapping rules included. The rules are applied  on the assertion 
parameters and list of local users/groups is issued. The OpenStack token 
is generated, stored in the DB and returned to the user (formed as a 
valid JSON response).

6) The token can now be used for next operations on the OpenStack cloud.


*)
At first I though the dynamic URLs 
(OS-FEDERATION/tokens/identity_provider/(.*?)/protocol/(.*?)) could be 
replaced with a one static, and information about the IdP and protocol 
could be sent as a HTTP POST input, but from what I have already noticed 
after the client is redirected to the IdP (and to the SP again) the 
initial input is lost.



I am looking forward to hear feedback from you.

Thanks,

--
Marek Denis
[marek.de...@cern.ch]

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] Testing before sending for review

2013-10-23 Thread Marek Denis

Hey,

On 23.10.2013 11:29, Rosa, Andrea (HP Cloud Services) wrote:

Usually I find always useful to test my changes in devstack.


How do you do that? I think the devstack does not always contain up to 
date codebase does it, so what would be the point in testing changes on 
the old code?

Thanks for the reply.

--
Marek Denis
[marek.de...@cern.ch]

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev