-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WIS node authorization requirements #109
Comments
In the pilot-phase, source IP filtering of GC/GB IP addresses by a local firewall, and username/password authentication have been implemented. Source IP filtering
+ network level protection Username and Password
+ can be used for MQTT and HTTP CertificatesCertificates have also been discussed.
+ PKI requires no prior credentials exchange and low number of certificates (nr GB + nr GC) |
I can see that for WIS2 nodes login/password is the easiest solution but I also understand that from the perspective of the global services this can be hard to manage.
|
What has been observed in the wild is IP Source Filtering I also like Certificate based authentication (given, that we do not run our own CA which would be a no-go for me). The question is do we want to (or can we even) limit the set of authentication mechanisms. I think we can ask to use standards (that is http or https for example). But if someone wants to implement HTTP Basic Authentication with username / password can we say this is not possible? My point of view is, that we (DWD) tried to reuse existing components. So at least the DWD data server has been in place and is reused for WIS2. However we do not implement TLS Client Certificate checking there. Having this as a MUST would therefore require that we host another data server just for that purpose. To cut a long story short i would prefer to state "Follow the standard" as a MUST. Specify client certificates as a SHOULD. And allow Bearer Authentication, Source IP Filtering and Username / Password as a CAN. OpenAPI even allows yet again additional methods: https://swagger.io/docs/specification/authentication/ |
Decision on this issue will be part on the guide. I fully agree with @kaiwirt |
Note that in WCMP2 we support describing security in the context of a link having an optional |
Decision Only IP address filtering will be offered to authenticate a GB and GC from the WIS2 node and provide access. Implementing user/password will be considered when the requirement is made. |
Some WIS nodes have expressed their desire to implement ACLs. A WIS node may want to restrict access to its broker and/or web-storage components due to security or data-policy reasons. For this the identity of the subscribing/downloading entity needs to be established so that the node can implement ACLs.
A common authentication schema across WIS reduces cost and improves security, as less credentials need to be kept and methods implemented.
It is proposed that a Global Registry service maintain the required security metadata.
This issue is created to track ACL requirements and to discuss possible solutions.
requirements
non-functional requirements
analysis
Solutions should be analyzed in terms of
discussion
Modifying the requirements can impact the scope of solutions. For example, if the schema were to be used for HTTP only (and MQTT access open), there would be a larger number of potential authentication schemas.
If the scope of the schema were limited to core data, nodes requiring security would only have to implement network level ACL without the need for protocol level identities and the consequent need for the Global Registry to maintain additional security related metadata.
Are there other authorization requirements?
The text was updated successfully, but these errors were encountered: