Can CAS Server embeded into exist application - cas

I already have an grails web application, And our project need CAS, however I don't want to setup a standalone server for CAS, So I want to embed the cas server into my grails application, is this possible? and if yes where can I found sample.

You could do this I suppose by exploding the CAS war and separating it with a seperate context, but I don't think this is the intended usage and you'll end up fighting with the internals of CAS (I've been there!).
Maybe a better solution would be to use the Grails Spring Security plugin? There's a nice blog entry here:
http://blog.springsource.com/2010/08/11/simplified-spring-security-with-grails/
This way you could begin with some basic security and later on use the CAS integration if your requirements demand it.

Related

ASP.NET Core MVC Authentication with existing database

I'm about to implement a web application (back office for an existing app.) using the ASP.NET Core framework. At the moment I'm thinking about on how will I authenticate the user. The main database is using MySQL (not supported on this framework), so I will access the database troughout an existing PHP SOAP API.
Is there any way to implement a token based (OAuth) authentication knowing that the data access will be done trough a SOAP API ?
You can take a look IdentityServer3 in combination with the default OpenID middleware. You can completely separate the authentication logic from your application. Your application will trust the tokens generated by the identity server. The same as signin in with facebook/google/linkedin accounts etc.. using your own secure ticket provider. Identity Server supports customization so you can use the datastore of your choice. It is also possible to use your identity server for a various set of applications as long as they are "known" by your identity server. Definitely worth the investigation if you ask me.
https://github.com/IdentityServer/IdentityServer3

AngularJs real time app with mysql server

Is it possible to build a realtime app using AngularJs with a mysql database?
I've been reading thousands of tutorials, but they are all focused on express, nodejs, etc.. didn't found any documentation on wheter it's possible or not. I tried to take a look at the socket.io docs, but still didn't found anything relevant to this question.
I didn't tried anything yet because of this. I use a webApp based on AngularJs on a apache server (local).
Where should i start to be able to build a real time app using these tools i have?
Do i really need to use a node/express server?
What are the main consideration i need to do before taking this step?
Is there any documentation i should read?
I need to do this real time because it involves product orders, call center, ticket system, etc.. So everytime there is a new ticket is opened/changed, new order arrives, etc.. I need to make the user aware of this, without the need to refresh the page.
Or if someone could give me a further explanation of this concept and how to get started, it will be great.
You can run angular on top of any backend, although most examples push towards REST. If you want your app to feel like a real time application, using WebSockets is a likely improvement.
WebSockets play nice with Angular, look at https://github.com/wilk/ng-websocket for example. A back-end in Node will work, but many other backend techs will do equally well.
Here is a decent tutorial using MySQL, NodeJS, and Angular: https://codeforgeek.com/2015/03/real-time-app-socket-io/
I recommend that you keep using a webserver like Apache (my personal preference is Nginx). You can proxy API and socket requests to Node, and serve static resources for the app from a folder.
Check out https://httpd.apache.org/docs/2.4/mod/mod_proxy_wstunnel.html if you stay with Apache. Check out http://nginx.org/en/docs/http/websocket.html is you go for nginx.
Without a webserver, you'll have to either:
serve your static resources with Node (polluting your server project with client code), or
work with different ports, risking the app becomes unusable in client environments, or
work with different domains, giving you a CORS head-ache.
Although I don't have much experience with Node, MySQL with Node.js should help you out a bit.
You'll want to move away from Apache if you want to do websocket stuff with Socket.io
Yes, it is possible to create a software with AngularJS in the front end and any other server side language that speaks to MySQL. Few months back I worked on a software with Java Spring Framework in the backend with MySQL database and AngularJS with bootstrap in the front end. You could start by following the MVC pattern, where your views can be served as AngularJS and your Controller can be in any server side code, with MySQL database.

Can I share session data between app using CAS?

I am newbie with CAS Server, I found it is a single sign on server between different application in terms of technology like php, .net & java. I explore it but even though there are some questions yet not clear. Before ask my doubt, I tell what am I trying to achieve?
I am using a gwt based application, Now for some of the features, development is in a php technology. It should get some session data from existing java application. another approach to customize CAS like integrate a web service layer for authorization, instead of using its existing like query to db.
The doubts are:
1) Can I share a session data between Java & php application using CAS?
2) is there any security issue while passing a data using CAS server?
Thanks in Advance.
Sharing session data accross application can be addressed by mechanisms not linked to CAS. Though, when authentication occurs in CAS server, user data are retrieved from various data sources and these user data can be pushed to client CAS applications through SAML validation and the appropriate configuration.

VB.Net Silverlight project and MySQL

I am an experienced web programmer that has sadly had little experience with Web Services and technologies like Silverlight - I've done a lot of PHP, Javascript, CSS and MySQL. I recently have been assigned to learn Silverlight and connect a new app to a MySQL database. After a full week of trying to get this working, I'm really hoping someone can answer these questions:
I have found the MySQL .NET Connector - am I correct that this is not compatible with Silverlight and I do not need it?
I understand I must use a Web Service for this. Can I use WCF or WCF RIA, or am I best using a more traditional web service method like REST or SOAP?
What's the best web service method for many quick queries (such as updating a search as the user types in the keywords)
Do I have to use technology like LINQ, Entity SQL, ADO.NET Framework, or a stored procedure? Is one of these the best way to do it or should I just skip them all and create a simple web service?
What's the best source to learn how to do specifically Silverlight VB.NET and MySQL and learn to do it the best way as explained above. Everything I've found (books and websites) seems to be in C#, not a Silverlight product, or just uses built in SQL Server support. Very frustrating!
For our web app, we need to be able to give the buyer not just access to our client side application via a browser but also the server side so they can OPTIONALLY host the entire product themselves. We're hoping to have one installer for them on their server (so they wouldn't have to set up php or mysql to host the product for example). If I use a VB.NET website and web service, will that deploy as just an exe or dll so the user won't have to install anything special? Is installing mysql on their servers unavoidable? Please advise.
Thank you!
Wow, lots of questions in a single question.
You can't use this from Silverlight.
WCF and WCF RIA are both technologies while SOAP and REST are protocols that are both supported by WCF. So yes.
Quick queries require good code and a well tuned database, the protocol won't be an issue.
LINQ, Entity SQL, and ADO.Net are all database access technologies and have nothing to do with web services. You'll need to build a web service and then connect it to a database using some database access technology. Which one you use depends on what backend you have.
C# is much more common. Most of the MSDN content has VB.Net as well. MySQL isn't an MS technology. You can use MySQL with Entity Framework and then expose that using WCF RIA Services.
If you use VB.Net as the server side technology they will need to be running Windows with IIS and have .NET installed. They will also have to install MySQL if they want to host it.

Can implement buildin server in my application , that support php/asp?

i have application that generate php/html/asp web sites and i like to be able to
let the possibility to test the sites from within the application . is there any possibility to do that ?
Testing a web site is a pretty complicated task. While you could certainly write a web server and test engine, I'm not sure why you would want to. I'd suggest using IIS (since you need ASP) as your web server and configuring it to support PHP. Then use WatiN or Selenium, or something similar to test your sites.
I have to agree with tvanfosson. Including a full-fledged standalone web server, and one that supports both ASP and PHP, is a tall order. It can probably be done, but I don't know if you have the manpower or resources to do it.
Your best hope would probably be to include a self-configuring web server with your application. For PHP you could just use an open source web server like Apache with the Zend Engine. I'm not so sure how you could distribute an ASP interpreter with your software.
However, I think a more practical solution is to simply do what Dreamweaver and most other HTML editors/web development tools do. Since the user would likely already have access to a web server, you could just have them supply the login information for the SFTP/SCP and have the application upload the code to the remote or local server for testing.